HomeAbout Us A-Z IndexSearch * Contact Us Register LoginPress Shop

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 1639 Details

Help 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 FAIL

    Review 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:

     

    Back   


Contact the Certification Authority