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

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 1261 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 1261.


Report 1261 Actions


    Problem Report Number 1261
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0463
    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/sigaction 29
    Problem Summary PG4U.00002 When a SIGSTOP is raised the siginfo_t element si_status should be SIGCHLD.
    Problem Text
    The test suite currently assumes that when a SIGSTOP is raised against
    a process the siginfo_t element si_status will have the value of
    SIGSTOP. Under our implementation the value of this element is
    SIGCHLD. The si_status element is defined as follows

    int si_status exit value or signal.

    As there isn't any specification as to exactly what the signal value
    should be under this condition we maintain that this value should be a
    SIGCHLD since the signal that is generated is a SIGCHLD. At the
    minimum the test suite should accept either signal value or should not
    test this parameter at all since there isn't a definition available.
    Test Output
    TEST CASE: sigaction

    TEST PURPOSE #29
    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_handler member when the child has stopped the
    si_code member of the structure pointed to by the
    siginfo argument shall contain CLD_STOPPED, 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: Generate SIGSTOP from child
    TEST: signal = SIGCHLD
    TEST: si_code = CLD_STOPPED
    TEST: si_status = SIGSTOP
    ERROR: si_status incorrect. Expected SIGSTOP, Received SIGCHLD
    CLEANUP: Set up SIG_IGN for SIGCHLD
    CLEANUP: Send SIGUSR1 to child
    29 FAIL

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    Although it could be worded more clearly, the sigaction() spec
    states that the siginfo_t information will "explain the reason
    why the signal was generated". This indicates that the signal
    referred to in the si_status definition must be the SIGSTOP
    received by the child. This is the explanation for the SIGCHLD
    received by the parent.

    We recommend this request be refused.

    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:

     

    Back   


Contact the Certification Authority