Bug 947936

Summary: Corosync doesn't detect non-existing user in uidgid config section
Product: Red Hat Enterprise Linux 6 Reporter: Jan Friesse <jfriesse>
Component: corosyncAssignee: Jan Friesse <jfriesse>
Status: CLOSED ERRATA QA Contact: Cluster QE <mspqa-list>
Severity: low Docs Contact:
Priority: low    
Version: 6.4CC: cluster-maint, jkortus, lnovich, sdake
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: corosync-1.4.1-16.el6 Doc Type: Bug Fix
Doc Text:
Cause: Corosync configuration of uidgid section contains non-existing user or group. Consequence: Corosync doesn't display any error Fix: Properly check return value of getpwnam_r Result: Corosync display error message and exits with error code
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-11-21 04:33:50 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Proposed patch none

Description Jan Friesse 2013-04-03 15:04:17 UTC
Created attachment 731215 [details]
Proposed patch

Description of problem:
corosync.conf:

...
uidgid {
    uid: nonexistinguser
}

No error is shown (even according to code it should)

Version-Release number of selected component (if applicable):
Flatiron

How reproducible:
100%
 
"Unit test":
https://github.com/jfriesse/csts/blob/master/tests/uidgid-parse.sh

Actual results:
Fail ($? != 0)

Expected results:
Success ($? == 0)

Additional info:

Comment 7 Jaroslav Kortus 2013-09-11 16:13:19 UTC
Verified with uidgid-parse.sh:

FAIL on corosync-1.4.1-15.el6.x86_64 (RHEL6.4)
PASS on corosync-1.4.1-17.el6.x86_64 (RHEL6.5)
Sep 11 18:10:06 virt-014 corosync[5211]:   [corosy] The 'nonexistinguid' user is not found in /etc/passwd, please read the documentation.
Sep 11 18:10:06 virt-014 corosync[5211]:   [MAIN  ] Corosync Cluster Engine exiting with status 1 at mainconfig.c:622.

Just a question: does it really check only /etc/passwd or is it also friendly to other system user entries (like ldap users) and the message is slightly misleading?

Comment 8 Jan Friesse 2013-09-12 08:15:58 UTC
It calls getpwnam_r, so second option is true.

Comment 10 errata-xmlrpc 2013-11-21 04:33:50 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2013-1531.html