|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 0335 Details
Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges
This page provides all information on Problem Report 0335.
Report 0335 Actions
Problem Report Number 0335 Submitter's Classification Specification problem State Resolved Resolution Permanent Interpretation (PIN) Problem Resolution ID PIN.X.0051 Raised 1995-09-25 08:00 Updated 2003-03-13 08:00 Published 1995-10-13 08:00 Product Standard Internationalised System Calls and Libraries (XPG4) Certification Program The Open Brand certification program Test Suite VSX4 version 4.3.5 Test Identification POSIX.os/procenv/getgroups 4 Specification System Interfaces and Headers Issue 4 Location in Spec See Problem Text Problem Summary PIN4.051 The XPG4 standard does not prevent a platform from altering the grouplist array if the array is not large enough for the number of supplementary groups that a process has. XPG4 is very explicit that t... Problem Text
The XPG4 standard does not prevent a platform from altering the
grouplist array if the array is not large enough for the number of
supplementary groups that a process has. XPG4 is very explicit that
the array must not be modified if the array size passed to getgroups()
is 0 but is silent for the condition when the array is not big enough.
Since XPG4 does not state whether the array is modified or not, the
VSX4 suite should not expect anything regarding its contents in an
EINVAL condition.Test Output
/tset/POSIX.os/procenv/getgroups/T.getgroups 4 Failed
Test Description:
EINVAL in errno and -1 is returned by getgroups() if gidsize is non-
zero and is less than the number of supplementary groups IDs
Posix Ref: Component GETGROUPS Assertion 4.2.3.4-07(C)
Test Strategy:
OBTAIN maximum number of supplementary groups using
sysconf(_SC_NGROUPS_MAX)
VERIFY that effective gid is not 0 using getegid()
VERIFY that process has appropriate privileges to set supplementary
groups
SET uid's and gid's for test
ASSIGN supplementary groups using setgrps() - (vport)
CALL getgroups() using tbgetgroups() using gidsetsize one less than
the number of supplementary groups
VERIFY return value is SYSERROR and errno is set to EINVAL
Test Information:
getgroups(1, grouplist) altered 1 entries in grouplist arrayReview Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
While it is normal for the contents of arguments to remain unchanged after
an error indication, it is quite correct to state that this is not explicitly
required by the specification. In this particular case the change is benign
and there is no reason why an application should interrogate this array after
an error indication has been raised.
It is recommended that a waiver is granted as a Permanent Interpretation of
the XSH specification.
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Permanent Interpretation (PIN) Review Conclusion
A Permanent Interpretation is granted.
Problem Reporting System Options:
- View Report 0335
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority