|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 1639 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 1639.
Report 1639 Actions
Problem Report Number 1639 Submitter's Classification Test Suite problem State Resolved Resolution Permanent Interpretation (PIN) Problem Resolution ID PIN.X.0196 Raised 2000-10-23 08:00 Updated 2003-03-13 08:00 Published 2000-11-06 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 CAPIbase/sigaction 30 Specification System Interfaces and Headers Issue 5 Location in Spec See Problem Text Linked Problem Reports PIN4U.00047, (in, old, system) Problem Summary PIN4U.00062 This IR claims that SIGCHLD need not be generated when a stopped child has continued. Problem Text
The way the test works is that a child is forked which stops itself.
The parent sets up a handler for SIGCHLD, and sends the child
SIGCONT. The parent expects the child to send SIGCHLD in response
to reciept of SIGCONT. Thus the parent expects to enter the SIGCHLD
signal handler, and in that signal handler have recieved a pointer to
a siginfo structure such that the si_code field of that siginfo
structure will equal CLD_CONTINUED.
The XSH5 does not seem to specify the requirement that this test is expecting
that is a SIGCHLD is generated for the parent of a child in response to the
child recieving SIGCONT. XSH5 pages 545-552 make no mention of such required
behavior in the sigaction() description, which deals with SIGCHLD being
generated for the parent of stopping children. In the signal.h signal table
page 795 it simply states: "SIGCHLD - Child process terminated or stopped."
On pages 1134-1135, the text states:
"Implementations may support additional si_code values not included in
this list, may generate values include in this list under circmstances
other than those described in this list, and may contain extensions or
limitations that prevent some values from being generated".
This seems to indicate that SIGCHLD/CLD_CONTINUED does not necessarily have
to be generated. The other text the spec only refers to the signal being
generated when a child stops rather than continues.
This was originally decided in PIN4U.00047, and the wording of the
specification in this area has not changed since then, thus indicating the
intent of the authors.Test Output
TEST CASE: sigaction
TEST PURPOSE #30
After a call to int sigaction(int sig, const struct
sigaction *act, struct sigaction *oact) with
SA_SIGINFO set in the sa_flags member of the sigaction
structure pointed to by act and sig equal to SIGCHLD,
on entry to the signal catching function specified by
the sa_sigaction member when the stopped child has
continued the si_code member of the structure pointed
to by the siginfo argument shall contain
CLD_CONTINUED, the si_pid member shall contain the
child process ID, the si_status member shall contain
the child's signal and the si_uid member
shall contain the real user ID of the process that
sent the signal.
PREP: Set up action for SIGCHLD
PREP: fork() a child that stops itself
PREP: Set up action for SIGCHLD
TEST: Send SIGCONT to child
PREP: Reset action for SIGCHLD in signal handler
TEST: signal = SIGCHLD
TEST: si_code = CLD_CONTINUED
ERROR: si_code incorrect. Expected 15,Received 10
TEST: si_status = SIGCONT
ERROR: si_status incorrect. Expected SIGCONT,Received Unknown signal (0)
30 FAILReview Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
There has been no change between XSH4.2 and XSH5 to resolve the grey
area identified in PIN4U.00047, therefore it is recommended that an
equivalent Permanent Interpretation is granted for XSH5.
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Permanent Interpretation (PIN) Review Conclusion
A Permanent Interpretation is granted.
Problem Reporting System Options:
- View Report 1639
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority