|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 1573 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 1573.
Report 1573 Actions
Problem Report Number 1573 Submitter's Classification Test Suite problem State Resolved Resolution Test Suite Deficiency (TSD) Problem Resolution ID TSD.X.0855 Raised 2002-08-19 08:00 Updated 2003-03-13 08:00 Published 2002-09-10 08:00 Product Standard Internationalised System Calls and Libraries Extended V2 (UNIX 98) Certification Program The Open Brand certification program Test Suite VSU version 5.1.2 Test Identification CAPI.os/procenv/setpriori 9 Problem Summary TSD4U.00316 The tests fail if VSX_GID1 happens to correspond to an existing process ID. Problem Text
In both cases, the test appears to be confusing group id and
process group id.
For setprio we see it fail at:
TEST: setpriority(PRIO_PGRP, gid, priority) returns -1 and sets
errno to ESRCH since no process exists belonging
to the process group 'gid'
For getprio we see it fails at:
TEST: getpriority(PRIO_PGRP, gid) returns -1 and sets
errno to ESRCH since no process exists belonging
to the process group 'gid'
In both cases the test is checking that the process belongs to a
process group "gid". In both tests, the code uses not_inuse_gid1
and sets this value to VSX_GID, in the case 151, when it should be
using the process group id.
if ((not_inuse_gid1 = get_conf_gid("VSX_GID1")) == -1)
return;
Looking at the processes running on the system we see there are
process with pgid's in the range of VSX_GID.
UID PID PPID PGID SID C STIME TTY TIME CMD
root 149 1 149 149 0 Aug 14 ? 0:01 /usr/sbin/rpcbind
root 132 1 131 131 0 Aug 14 ? 0:36 /usr/sbin/in.routed
root 152 1 152 152 0 Aug 14 ? 0:00 /usr/sbin/keyserv
root 238 1 238 238 0 Aug 14 ? 0:00 /usr/lib/power/powerd
By changing part of setpriori 9 as follows we can make the test
pass.
pid_t pgid;
pgid = vfork()
if (pgid == -1) {
uwerrno("fork");
return;
}
if (pgid == 0) {
exit (0);
}
waitpid (pgid, &result, 0);Test Output
************************************************************************
/tset/CAPI.os/procenv/setpriori/T.setpriori 9 Failed
Test Description:
Base Required Deviance
ESRCH in errno and return -1 on a call to int setpriority(int which,
id_t who, int priority) when no process can be located using the which
and who values specified.
Test Information:
PREP: Read value for VSX_UID1 configuration
parameter
PREP: Read value for VSX_GID1 configuration
parameter
PREP: Obtain a valid numeric value for priority
TEST: setpriority(PRIO_USER, uid, priority) returns -1 and
sets errno to ESRCH since no process owned by uid exists
TEST: setpriority(PRIO_PGRP, gid, priority) returns -1 and sets
errno to ESRCH since no process exists belonging
to the process group 'gid'
ERROR: setpriority set errno to invalid value
Expected: 3(ESRCH) Received: 1(EPERM - Not owner)
************************************************************************
************************************************************************
/tset/CAPI.os/procenv/getpriori/T.getpriori 7 Failed
Test Description:
Base Required Deviance
ESRCH in errno and return -1 on a call to int getpriority(int which,
id_t who) when no process could be located using the which and who
values specified.
Test Information:
PREP: Read value for VSX_UID1 configuration
parameter
PREP: Read value for VSX_GID1 configuration
parameter
TEST: getpriority(PRIO_USER, uid) returns -1 and sets
errno to ESRCH since no process exists owned by uid
TEST: getpriority(PRIO_PGRP, gid) returns -1 and sets
errno to ESRCH since no process exists belonging
to the process group 'gid'
ERROR: getpriority returned invalid value
Expected: -1 Received: 0
************************************************************************Review Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
This is accepted as a fault in the test suite.
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Test Suite Deficiency (TSD) Review Conclusion
This is an agreed Test Suite Deficiency.
Problem Reporting System Options:
- View Report 1573
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority