|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 1546 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 1546.
Report 1546 Actions
Problem Report Number 1546 Submitter's Classification Test Suite problem State Resolved Resolution Test Suite Deficiency (TSD) Problem Resolution ID TSD.X.0828 Raised 2000-08-28 08:00 Updated 2003-03-13 08:00 Published 2000-09-18 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.0.4 Test Identification BASE/setpriority 10 Problem Summary TSD4U.00289 These tests may fail on systems which support additional values for the "which" argument of getpriority() and setpriority() Problem Text
The specification for getpriority and setpriority states
"The which argument may be one of the following values:
PRIO_PROCESS, PRIO_PGRP, or PRIO_USER..."
The use of "may" rather than "must" along with the header
specification for sys/resource.h and the X/Open namespace rules
for sys/resource.h (section 2.2.1) allow that an implementation
may extend these PRIO_ macros.
The getpriority and setpriority tests are failing because they do
not take into account that an implementation may have extended the
PRIO_ macros defined by the specification.
More specifically, the tests are assuming only the above mentioned
PRIO_ values (with numeric values 0, 1, and 2), choosing a assumed
invalid value one higher (numeric value 3), and failing when the
value is actually recognized by set/getpriority as valid.
NOTE: location of tests in VSU 5.1.1 is not the same as listed
above (which is for 5.0.4A), they are located in CAPI.os/procenv.Test Output
TEST CASE: getpriority
TEST PURPOSE #8
EINVAL in errno and return -1 on a call to int
getpriority(int which, id_t who) when which is invalid.
PREP: Obtain a numeric value 'which' not equal to
PRIO_PROCESS, PRIO_PGRP or PRIO_USER
PREP: Obtain the process ID of the current process 'pid'
TEST: getpriority(which, pid) returns -1 and sets
errno to EINVAL
ERROR: getpriority set errno to an invalid value
Expected: 22(EINVAL) Received: 3(ESRCH - No such process)
8 FAIL
TEST CASE: setpriority
TEST PURPOSE #10
EINVAL in errno and return -1 on a call to int
setpriority(int which, id_t who, int priority) when
which is invalid.
PREP: Obtain a numeric value 'which' not equal to
PRIO_PROCESS, PRIO_PGRP or PRIO_USER
PREP: Obtain the process ID and the current priority
of the current process
PREP: Obtain a valid numeric value for priority
TEST: setpriority(which, pid, priority) returns -1
and sets errno to EINVAL
ERROR: setpriority set errno to an invalid value
Expected: 22(EINVAL) Received: 3(ESRCH - No such process)
10 FAILReview 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.
The request had an invalid VR field of "VSU 5.0.4A, VSU 5.1.1". This
has been changed to "VSU 5.0.4A" since that is the test suite version
which matches the supplied test output. If a TSD for VSU5.1.1 is also
required, then a separate interpretation request for that version
needs to be submitted.
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. Please note this applies only
to VSU 5.0.4A as advised by the consultant.
Problem Reporting System Options:
- View Report 1546
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority