|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 1211 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 1211.
Report 1211 Actions
Problem Report Number 1211 Submitter's Classification Test Suite problem State Resolved Resolution Rejected (REJ) Problem Resolution ID REJ.X.0413 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.1.0 Test Identification base/execl 1 Problem Summary PG4U.00054 This was refused because it is a duplicate. Use TSD4U.00039 instead. Problem Text
This was refused because it is a duplicate. Use TSD4U.00039 instead.
Reference: TSD4U.00039 for VSU4.0.2
execl() Test 1 fails because the test thinks the interval timers are not
properly preserved across the execl() call. However, the test is requesting
a finer granularity than is allowed by the impementation, and according to
CASPEC (on the getitimer page), the value may be rounded up to the next
supported value. Specifically, the test is requesting a it_interval.tv_usec
value of 89 and reading back a value of 10000.
If the test wants to check the behavior of execl(), it should instead compare
the values returned by getitimer() before and after the execl(), and NOT
compare the original value passed to setitimer().
The following tests also fail for this reason:
execle() Test 1
execlp() Test 1
execv() Test 1
execve() Test 1
execvp() Test 1Test Output
TEST CASE: execl
TEST PURPOSE #1
A successful call to int execl(const char *path, const
char *arg0, .../*, (char *)0 */) shall preserve
interval timers across the call.
PREP: Open communication pipe for child
PREP: Fork child
PREP: Connect child's pipe to stdout
PREP: Construct exec path
PREP: Set ITIMER_REAL interval timer
PREP: Issue execl
PREP: Wait for child
PREP: Read child's ITIMER_REAL value
TEST: ITIMER_REAL inherited after execl
ERROR: ITIMER_REAL not inherited correctly
Expected it_interval.tv_sec = 1234567
it_interval.tv_usec = 89
it_value.tv_sec ~= 1234567
Received it_interval.tv_sec = 1234567
it_interval.tv_usec = 10000
it_value.tv_sec ~= 1234566
1 FAIL
TEST CASE: execle
TEST PURPOSE #1
A successful call to int execle(const
char *path, const char *arg0, ... /*, (char *0), char
*const envp[]*/) shall preserve interval timers across
the call.
PREP: Open communication pipe for child
PREP: Fork child
PREP: Wait for child
PREP: Read child's ITIMER_REAL value
TEST: ITIMER_REAL inherited after execle
ERROR: ITIMER_REAL not inherited correctly
Expected it_interval.tv_sec = 1234567
it_interval.tv_usec = 89
it_value.tv_sec ~= 1234567
Received it_interval.tv_sec = 1234567
it_interval.tv_usec = 10000
it_value.tv_sec ~= 1234566
PREP: Connect child's pipe to stdout
PREP: Construct exec path
PREP: Set ITIMER_REAL interval timer
PREP: Issue execle
1 FAIL
TEST CASE: execlp
TEST PURPOSE #1
A successful call to int execlp(const
char *file, const char *arg0, ... /*, (char *0)*/)
shall preserve interval timers across the call.
PREP: Open communication pipe for child
PREP: Fork child
PREP: Connect child's pipe to stdout
PREP: Construct exec path
PREP: Set ITIMER_REAL interval timer
PREP: Issue execlp
PREP: Wait for child
PREP: Read child's ITIMER_REAL value
TEST: ITIMER_REAL inherited after execlp
ERROR: ITIMER_REAL not inherited correctly
Expected it_interval.tv_sec = 1234567
it_interval.tv_usec = 89
it_value.tv_sec ~= 1234567
Received it_interval.tv_sec = 1234567
it_interval.tv_usec = 10000
it_value.tv_sec ~= 1234566
1 FAIL
TEST CASE: execv
TEST PURPOSE #1
A successful call to int execv(const char
*path, char *const argv[]) shall preserve interval
timers across the call.
PREP: Open communication pipe for child
PREP: Fork child
PREP: Wait for child
PREP: Read child's ITIMER_REAL value
TEST: ITIMER_REAL inherited after execv
ERROR: ITIMER_REAL not inherited correctly
Expected it_interval.tv_sec = 1234567
it_interval.tv_usec = 89
it_value.tv_sec ~= 1234567
Received it_interval.tv_sec = 1234567
it_interval.tv_usec = 10000
it_value.tv_sec ~= 1234566
PREP: Connect child's pipe to stdout
PREP: Construct exec path
PREP: Set ITIMER_REAL interval timer
PREP: Issue execv
1 FAIL
TEST CASE: execve
TEST PURPOSE #1
A successful call to int execve(const
char *path, char *const argv[], char *const envp[])
shall preserve interval timers across the call.
PREP: Open communication pipe for child
PREP: Fork child
PREP: Connect child's pipe to stdout
PREP: Construct exec path
PREP: Set ITIMER_REAL interval timer
PREP: Issue execve
PREP: Wait for child
PREP: Read child's ITIMER_REAL value
TEST: ITIMER_REAL inherited after execve
ERROR: ITIMER_REAL not inherited correctly
Expected it_interval.tv_sec = 1234567
it_interval.tv_usec = 89
it_value.tv_sec ~= 1234567
Received it_interval.tv_sec = 1234567
it_interval.tv_usec = 10000
it_value.tv_sec ~= 1234566
1 FAIL
TEST CASE: execvp
TEST PURPOSE #1
A successful call to int execvp(const
char *file, char *const argv[]) shall preserve
interval timers across the call.
PREP: Open communication pipe for child
PREP: Fork child
PREP: Connect child's pipe to stdout
PREP: Construct exec path
PREP: Set ITIMER_REAL interval timer
PREP: Issue execvp
PREP: Wait for child
PREP: Read child's ITIMER_REAL value
TEST: ITIMER_REAL inherited after execvp
ERROR: ITIMER_REAL not inherited correctly
Expected it_interval.tv_sec = 1234567
it_interval.tv_usec = 89
it_value.tv_sec ~= 1234567
Received it_interval.tv_sec = 1234567
it_interval.tv_usec = 10000
it_value.tv_sec ~= 1234566
1 FAIL
Review Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
The submitter is correct but a recent ruling regarding this issue
exists. To avoid the confusion duplicate rulings regarding the same
might cause we recommend this request be refused and the submitter
use TSD4U.00039 instead.
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 1211
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority