Bug ID 1185118
Summary %attr rule with missing closing paren causes inscrutable error messages
Classification openSUSE
Product openSUSE Tumbleweed
Version Current
Hardware Other
URL https://github.com/rpm-software-management/rpm/issues/1648
OS Other
Status NEW
Severity Normal
Priority P5 - None
Component Basesystem
Assignee jeffm@suse.com
Reporter jeffm@suse.com
QA Contact qa-bugs@suse.de
CC mls@suse.com
Found By ---
Blocker ---

When a malformed rule such as:

%dir %attr(-,root,root /path/to/file

is encountered, rpmbuild fails with an error message like:

error: File must begin with "/": n���L���_;^?

This is due to the check for the closing paren as found in other rule handlers
is missing. When the rule is overwritten by spaces, parseForAttr assumes that
the final character is the closing paren and will overwrite the entire string
including the NUL terminator. Later, since the entire string is spaces and also
not NUL terminated, the error message will include whatever garbage happens to
be after the end of the string.

Reported upstream as https://github.com/rpm-software-management/rpm/issues/1648


You are receiving this mail because: