|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 2106 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 2106.
Report 2106 Actions
Problem Report Number 2106 Submitter's Classification Test Suite problem State Resolved Resolution Test Suite Deficiency (TSD) Problem Resolution ID TSD.X.1071 Raised 1999-07-21 08:00 Updated 2003-03-13 08:00 Published 1999-08-06 08:00 Product Standard Internationalised System Calls and Libraries Extended V2 (UNIX 98) Certification Program The Open Brand certification program Test Suite VSTH version 5.1.4 Test Identification PTHR.os/all/pthread_mutex_init 9 Problem Summary TSD5TH.00063 This request concerns: PTHR.os/all/pthread_mutex_init/T.pthread_mutex_init 9 Failed PTHR.os/all/pthread_mutexattr_getprioceiling/\ T.pthread_mutexattr_getprioceiling 4 Failed PTHR.os/all/pthread_mute... Problem Text
This request concerns:
PTHR.os/all/pthread_mutex_init/T.pthread_mutex_init 9 Failed
PTHR.os/all/pthread_mutexattr_getprioceiling/\
T.pthread_mutexattr_getprioceiling 4 Failed
PTHR.os/all/pthread_mutexattr_setprioceiling/\
T.pthread_mutexattr_setprioceiling 5 Failed
PTHR.os/all/pthread_mutex_getprioceiling/\
T.pthread_mutex_getprioceiling 4 Unresolved
PTHR.os/all/pthread_mutex_setprioceiling/\
T.pthread_mutex_setprioceiling 6 Unresolved
In each case, the test executes in a directory such as:
bittums$ ls -l ~/TESTROOT/tset/PTHR.os/all/pthread_mutex_init
ls -l ~/TESTROOT/tset/PTHR.os/all/pthread_mutex_init
total 636
-rwsr-xr-x 1 root vsxg0 190508 Jul 19 17:23 T.pthread_mutex_init
-rwxr-xr-x 1 vsx0 vsxg0 101268 Jul 19 17:23 pthread_mutex_init_9
-rw-rw-rw- 1 root vsxg0 5684 Jul 20 23:27 tet_xres
The test proper is suid root. pthread_mutex_init_9 is owned by vsx0 and
intended to run as if owned by vsx0, but it inherits the effective root id
from T.pthread_mutex_init and fails.
Further, some of the test are coded incorrectly and fail even when the
effective ownership problem is resolved:
In PTHR.os/all/pthread_mutexattr_getprioceiling/
if ( rval != EINVAL )
{
vsth_surprise("pthread_mutexattr_getprioceiling", EINVAL,
rval, &nfails);
}
should be:
if ( rval != EPERM )
{
vsth_surprise("pthread_mutexattr_getprioceiling", EPERM,
rval, &nfails);
}
In PTHR.os/all/pthread_mutex_getprioceiling/:
rval = pthread_mutex_getprioceiling( &mx, &prio );
if ( rval != EPERM )
{
vsth_surprise("pthread_mutex_getprioceiling", 0, rval, &nfails);
}
should be:
rval = pthread_mutex_getprioceiling( &mx, &prio );
if ( rval != EPERM )
{
vsth_surprise("pthread_mutex_getprioceiling", EPERM, rval, &nfails);
}
In PTHR.os/all/pthread_mutex_setprioceiling/:
rval = pthread_mutex_setprioceiling( &mx, priomax, NULL );
if ( rval != EPERM )
{
vsth_surprise("pthread_mutex_setprioceiling", EPERM, rval, &nfails);
return;
}
should be:
rval = pthread_mutex_setprioceiling( &mx, priomax, &oldprio );
if ( rval != EPERM )
{
vsth_surprise("pthread_mutex_setprioceiling", EPERM, rval, &nfails);
return;
}Test Output
PTHR.os/all/pthread_mutex_init/T.pthread_mutex_init 9
200|0 9 18:24:14|TP Start
520|0 9 000100408 1 1|If the caller does not have the privilege to perform
the o
peration:
520|0 9 000100408 1 2|a call to pthread_mutex_init(mutex, attr) shall fail
and r
eturn
520|0 9 000100408 1 3|EPERM without modifying the state of the mutex.
520|0 9 000100408 1 4|Posix Ref: Component PTHREAD_MUTEX_INIT
520|0 9 000100408 1 5|Assertion 9945-1:1996 11.3.2.4-9(A)
520|0 9 000100414 2 1|pthread_mutex_init, expected 1, got 0
520|0 9 000100408 2 1|tet_fork, expected 0, got 2
220|0 9 1 18:24:14|FAIL
410|0 9 1 18:24:14|IC End
PTHR.os/all/pthread_mutexattr_getprioceiling/T.pthread_mutexattr_getprioceiling
4 Failed
200|0 4 18:26:03|TP Start
520|0 4 000100416 1 1|If _POSIX_THREAD_PRIO_PROTECT is defined:
520|0 4 000100416 1 2|when the implementation detects that the caller does
520|0 4 000100416 1 3|not have the privilege to perform the operation,
520|0 4 000100416 1 4|then a call to
520|0 4 000100416 1 5|pthread_mutexattr_getprioceiling(attr, prioceiling)
520|0 4 000100416 1 6|shall fail and return EPERM.
520|0 4 000100416 1 7|Posix Ref: Component
PTHREAD_MUTEXATTR_GETPRIOCEILING
520|0 4 000100416 1 8|Assertion 9945-1:1996 13.6.1.4-4(C)
520|0 4 000100417 2 1|pthread_mutexattr_getprioceiling, expected 22, got 0
520|0 4 000100416 2 1|tet_fork, expected 0, got 2
220|0 4 1 18:26:03|FAIL
410|0 4 1 18:26:03|IC End
PTHR.os/all/pthread_mutexattr_setprioceiling/T.pthread_mutexattr_setprioceiling
5 Failed
200|0 5 18:33:47|TP Start
520|0 5 000100430 1 1|If _POSIX_THREAD_PRIO_PROTECT is defined:
520|0 5 000100430 1 2|when the implementation detects that the caller does
520|0 5 000100430 1 3|not have the privilege to perform the operation,
520|0 5 000100430 1 4|then a call to
520|0 5 000100430 1 5|pthread_mutexattr_setprioceiling(attr, prioceiling)
520|0 5 000100430 1 6|shall fail and return EPERM.
520|0 5 000100430 1 7|Posix Ref: Component
PTHREAD_MUTEXATTR_SETPRIOCEILING
520|0 5 000100430 1 8|Assertion 9945-1:1996 13.6.1.4-5(C)
520|0 5 000100432 2 1|pthread_mutexattr_setprioceiling, expected 1, got 0
520|0 5 000100430 2 1|tet_fork, expected 0, got 2
220|0 5 1 18:33:47|FAIL
410|0 5 1 18:33:47|IC End
PTHR.os/all/pthread_mutex_getprioceiling/T.pthread_mutex_getprioceiling
4 Un
resolved
200|0 4 18:35:46|TP Start
520|0 4 000100434 1 1|If _POSIX_THREAD_PRIO_PROTECT is defined
520|0 4 000100434 1 2|and the implementation detects that the caller does
not ha
ve the
520|0 4 000100434 1 3|privilege to perform the operation:
520|0 4 000100434 1 4|a call to pthread_mutex_getprioceiling(mutex,
prioceiling)
shall
520|0 4 000100434 1 5|fail and return EPERM.
520|0 4 000100434 1 6|Posix Ref: Component PTHREAD_MUTEX_GETPRIOCEILING
520|0 4 000100434 1 7|Assertion 9945-1:1996 13.6.2.4-4(C)
520|0 4 000100435 2 1|pthread_mutex_getprioceiling, expected 0, got 0
520|0 4 000100434 2 1|tet_fork, expected 0, got 1
220|0 4 2 18:35:47|UNRESOLVED
410|0 4 1 18:35:47|IC End
PTHR.os/all/pthread_mutex_setprioceiling/T.pthread_mutex_setprioceiling
6 Un
resolved
200|0 6 19:08:59|TP Start
520|0 6 000100465 1 1|If _POSIX_THREAD_PRIO_PROTECT is defined
520|0 6 000100465 1 2|and the implementation detects that the caller does
not ha
ve the
520|0 6 000100465 1 3|privilege to perform the operation:
520|0 6 000100465 1 4|a call to pthread_mutex_setprioceiling(mutex,
prioceiling,
old_ceiling)
520|0 6 000100465 1 5|shall fail and return EPERM without changing the
priority
ceiling.
520|0 6 000100465 1 6|Posix Ref: Component PTHREAD_MUTEX_SETPRIOCEILING
520|0 6 000100465 1 7|Assertion 9945-1:1996 13.6.2.4-6(C)
520|0 6 000100465 2 1|child process was terminated by signal 11 (SIGSEGV)
220|0 6 2 19:08:59|UNRESOLVED
410|0 6 1 19:08:59|IC EndReview Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
A test suite deficiency is recommended.
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 2106
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority