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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 0147 Actions


    Problem Report Number 0147
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Test Suite Deficiency (TSD)
    Problem Resolution ID TSD.X.0147
    Raised 1994-05-25 08:00
    Updated 2003-03-13 08:00
    Published 1994-06-08 08:00
    Product Standard Internationalised System Calls and Libraries (XPG4)
    Certification Program The Open Brand certification program
    Test Suite VSX4 version 4.3.4
    Test Identification ANSI.os/streamio/fseek 15
    Problem Summary TSD4.147 Error is generated in module ANSI.os/streamio/fflush/enospc.c, where at line 322 the following portion of code can be found: /* * Now complete writing of this block and try on the next one * This shou...
    Problem Text
    Error is generated in module ANSI.os/streamio/fflush/enospc.c, where
    at line 322 the following portion of code can be found:

    /*
    * Now complete writing of this block and try on the next one
    * This should not cause a failure because we have already
    * tried writing this block.
    */
    if (fwrite((void*)outstr, BUFSIZ-1, 1, fp) != 1) {
    err = errno;
    if (errno == ENOSPC) {
    xx_rpt(UNTESTED);
    in_rpt("out of space on fwrite");
    } else {
    xx_rpt(FAILURE);
    valrpt(1, 0, 0, err);
    }
    }
    else
    PATH_TRACE;

    Therefore this behaviour is accepted by the test which should exit with
    result "UNTESTED".
    Instead since this portion of code is in a loop that increases the
    variable "i" and since at the end of this routine there is the
    following instruction (line 353):

    PATH_XS_RPT(7+i);

    the path count is expexcted to be 8 but the actual value
    is 7 and test exits with result "UNRESOLVED".

    It seems that a "break" instruction is missing:

    if (fwrite((void*)outstr, BUFSIZ-1, 1, fp) != 1) {
    err = errno;
    if (errno == ENOSPC) {
    xx_rpt(UNTESTED);
    in_rpt("out of space on fwrite");
    } else {
    xx_rpt(FAILURE);
    valrpt(1, 0, 0, err);
    }
    >>>> break;
    }
    else
    PATH_TRACE;

    By the way, this "break" instruction is already present in another
    portion of code of the same module, which performs a similar control
    (line 249):


    if (fputc('a', fp) == EOF) {
    testfail++;
    if (errno == ENOSPC) {
    xx_rpt(UNTESTED);
    in_rpt("out of space on fputc");
    } else {
    xx_rpt(FAILURE);
    in_rpt("fputc failed");
    }
    break;
    }
    Test Output
    ************************************************************************
    /tset/ANSI.os/streamio/fseek/T.fseek 15 Unresolved

    Test Information:
    out of space on fwrite
    path tracing error: path counter 7, expected 8
    ************************************************************************

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    This is agreed to be a fault in the test suite and it is recommended that
    a test suite deficiency be granted.

    Review Type SA Review
    Start Date null
    Completed null
    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