|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 2512 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 2512.
Report 2512 Actions
Problem Report Number 2512 Submitter's Classification Specification problem State Resolved Resolution Permanent Interpretation (PIN) Problem Resolution ID PIN.X.0273 Raised 2006-02-24 03:49 Updated 2006-02-28 01:45 Published 2006-02-28 01:45 Product Standard Internationalised System Calls and Libraries Extended V3 (UNIX 03) Certification Program The Open Brand certification program Test Suite VSTH version 5.4.3 Test Identification PTHR.os/general/General/T.General,11 Specification Base Definitions Issue 6 Location in Spec XSH P1540, L46753-46754
XSH P1402, L42498,42499Problem Summary The system() function is defined to be a thread-safe function. The
specification requires it to use features which have an affect at the
process scope, which renders it non-thread-safe.Problem Text As per the system () interface definition, "The system() function shall
ignore the SIGINT and SIGQUIT signals, and shall block the SIGCHLD
signal", the implementation needs to ignore the SIGINT and SIGQUIT
signals during the execution of system(). To achieve this the
implementation needs to literally or effectively execute the sigaction()
function which has process wide scope "the sigaction() function allows
the calling process to examine and/or specify the action to be
associated with a specific signal".
Since sigaction() can also be called in another thread to set a
different signal action for SIGINT and SIGQUIT. This makes system()
non-reentrant and non-threadsafe.
See:
http://www.opengroup.org/austin/aardvark/latest/xshbug2.txt
Request Number 125Test Output 00|86 11 15:35:08|TP Start
520|86 11 0001069703502 1026 1|system() did not restore the disposition
of SIGINT
520|86 11 0001069703502 1026 2|system() did not restore the disposition
of SIGQUIT
520|86 11 0001069703502 1026 3|Cleanup function, expected 0, got 2
520|86 11 0001069703502 1026 4|system() unresolved
520|86 11 0001069703484 3 1|tet_fork, expected 0, got 1
220|86 11 2 15:35:31|UNRESOLVED
410|86 11 1 15:35:31|IC EndReview Information
Review Type SA Review Start Date 2006-02-24 03:49 Last Updated 2006-02-28 00:39 Completed 2006-02-28 00:39 Status Complete Review Resolution Temporary Interpretation (TIN) Review Conclusion This PR represents and agreed Temporary Interpretation. The Austin
Group have considered the matter and a future change will allow the
behaviour.
Problem Reporting System Options:
- View Report 2512
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority