HomeAbout Us A-Z IndexSearch * Contact Us Register LoginPress Shop

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 0335 Details

Help 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 array

    Review 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:

     

    Back   


Contact the Certification Authority