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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 2304 Actions


    Problem Report Number 2304
    Submitter's Classification Specification problem
    State Resolved
    Resolution Test Suite Deficiency (TSD)
    Problem Resolution ID TSD.X.1180
    Raised 2004-01-10 04:06
    Updated 2004-01-16 20:18
    Published 2004-01-16 20:18
    Product Standard Internationalised System Calls and Libraries Extended V3 (UNIX 03)
    Certification Program The Open Brand certification program
    Test Identification POSIX_art.os/timers/clock_nanosleep: tests 6, 7, 8, 9, 10, 11, 12, 13,
    14, 15
    Specification Base Definitions Issue 6
    Location in Spec SUSv3 TC1, XSH line 6786
    Problem Summary clock_nanosleep() tests incorrect checks errno for the error rather than
    the return value as specified in SUSv3 tC1.
    Problem Text The return value section of clock_nanosleep() states the following:

    RETURN VALUE
    If the clock_nanosleep( ) function returns because the requested
    time has elapsed, its return value shall be zero.

    If the clock_nanosleep( ) function returns because it has been
    interrupted by a signal, it shall return the corresponding error value.
    For the relative clock_nanosleep() function, if the rmtp argument is
    non-NULL, the timespec structure referenced by it shall be updated to
    contain the amount of time remaining in the interval (the requested time
    minus the time actually slept). If the rmtp argument is NULL, the
    remaining time is not returned. The absolute clock_nanosleep( ) function
    has no effect on the structure referenced by rmtp.

    If clock_nanosleep( ) fails, it shall return the corresponding error value.

    But the referenced assertions do something similiar to the following
    code from test 8:

    if (clock_nanosleep(CLOCK_REALTIME, NULL, &tp, &rmtp) != -1)
    {
    in_rpt("clock_nanosleep() did not return -1");
    xx_rpt(FAILURE);
    error++;
    }
    if (errno != EINTR)
    {
    in_rpt("clock_nanosleep() did not return errno
    EINTR. er
    rno %d %s ", errno, errname(errno));
    xx_rpt(FAILURE);
    error++;
    }

    According to the text above -1 is not a valid return code. Additionally,
    the return value needs to checked where errno is being checked in the code.

    Review Information

    Review Type SA Review
    Start Date 2004-01-10 04:06
    Last Updated 2004-01-16 20:18
    Completed 2004-01-16 20:18
    Status Complete
    Review Resolution Test Suite Deficiency (TSD)
    Review Conclusion This is an agreed test suite deficiency.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority