|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 1229 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 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 FAILReview 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:
- View Report 1229
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority