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

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 1229 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 1229.


Report 1229 Actions


    Problem Report Number 1229
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0431
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published null
    Product Standard Internationalised System Calls and Libraries Extended (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSU version 4.0.2
    Test Identification base/setregid 6
    Problem Summary PG4U.00034 This was refused because it is a duplicate. Use TSD4U.00004 instead.
    Problem Text
    Test source file: CAPI/tset/CAPIbase/fsetregid/fsetregid6.c
    CAPI/tset/CAPIbase/fsetregid/sregid6_exc.c

    -rwsrwsrwx 1 root root 65980 Sep 25 17:39 fsetregid6
    -rwsrwsrwx 1 vsu4 vsu4g 53632 Sep 25 17:39 sregid6_exc

    Comments:
    line 9-10: VSU_NOT_INUSE_GID1 = 951 on this system
    line 11-12: VSU_NOT_INUSE_GID2 = 952 on this system
    line 13: The comment is wrong, the program set fsetregid6's rgid
    to 952 and its egid to 951
    line 14-18: fsetregid6 forks a child and execute sregid6_exc
    line 19: sregid6_exc reads in value for VSU_NOT_INUSE_GID1 (951)
    line 21-23: sregid6_exc calls "setregid(951, -1)" to set the rgid to
    951 and expects the call to be sucessful. The call fails
    and the errno is set to EPERM because, according to the
    XPG4.2 man pages for exec():

    "... Similarly, if the set-group-ID mode bit of the new
    process image file is set, the effective group ID of
    the new process image is set to the group ID of the
    new process image file ..."

    Since set-group-ID mode bit is set for sregid6_exc, egid
    and sgid are set to vsu4g (950) for sregid6_exc (note: I
    assume that the test expects egid and sgid are set to 951).
    Calling setregid() to set the rgid to sgid fails because,
    according to the man pages for setregid(), the setregid()
    function will fail and errno set to EPERM if:

    "The process does not have appropriate privileges and
    a change other than changing the real group ID to the
    saved set-group-ID, ...."

    In summary,
    This is a test error. The test need to be rewritten.
    Test Output
    1 SECTION: Discrete Tests
    2
    3 TEST CASE: setregid
    4
    5 TEST PURPOSE #6
    6 A call to int setregid(gid_t rgid, gid_t
    7 egid) shall allow a non-privileged process to set the
    8 real group ID to the saved set-group-ID from execv().
    9 PREP: Read value for VSU_NOT_INUSE_GID1 configuration
    10 parameter
    11 PREP: Read value for VSU_NOT_INUSE_GID2 configuration
    12 parameter
    13 PREP: Set the effective and real group IDs to VSU_NOT_INUSE_GID1
    14 PREP: Fork a child process and a execute a program in
    15 this process which has its set-group-ID set to
    16 another group. This will cause the real group
    17 ID of the child to be different from its saved
    18 set-group-ID(VSU_NOT_INUSE_GID1)
    19 PREP: Read value for VSU_NOT_INUSE_GID1 configuration
    20 parameter
    21 TEST: Child: setregid() sets the real group ID
    22 to the saved set-group-ID
    23 ERROR: setregid failed, errno = 1(EPERM - Not owner)
    24 6 FAIL

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    We recommend this request be refused.

    This is the same as ruling TSD4U.00004.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Rejected (REJ)
    Review Conclusion
    This request is refused.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority