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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 1664 Actions


    Problem Report Number 1664
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0468
    Raised 1999-05-21 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 5.0.3
    Test Identification xcurses/getstr 17
    Problem Summary PG4U.00171 The implementation's newterm() function alters the setting of ICANON.
    Problem Text
    This submittal is for getnstr #17
    getstr #17
    mvgetnstr #17
    mvgetstr #17
    mvwgetnstr #17
    mvwgetstr #17
    wgetnstr #17
    wgetstr #17

    This request was originally refused as PG4U.00157. I have gone back and
    dug a little deeper to understand when ICANON is getting turned off
    after being initially being set in the curs_prep module.
    ICANON is turned off by the call to newterm() in avsstart_curses().
    Per the spec for newterm() (found in the description under initscr() )
    it states "It is unspecified whether Curses modifies the buffering mode
    of these file pointers." On our implementation is does modify ICANON,
    and this is conforming behaviour.
    Test Output
    TEST CASE: xgetnstr

    TEST PURPOSE #17
    A call to int getnstr(char *str, int n)
    shall interpret the kill and erase characters.
    PREP: Set test locale: /vsu/xcurses_locale
    PREP: Set environment variables and open terminal connection
    PREP: Call newterm
    PREP: Initialize color pairs
    PREP: Set no-delay, keypad, nonl
    PREP: Output line with erase characters
    TEST: Read line with getnstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello", received "Hexxl"
    PREP: Output line with Kill characters
    TEST: Read line with getnstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello2", received "sdfjhs"
    CLEANUP: Call endwin
    CLEANUP: Call delscreen
    CLEANUP: Restore environment variables and close terminal connection
    17 FAIL

    TEST CASE: xgetstr

    TEST PURPOSE #17
    A call to int getstr(char *str) shall interpret the
    kill and erase characters.
    PREP: Set test locale: /vsu/xcurses_locale
    PREP: Set environment variables and open terminal connection
    PREP: Call newterm
    PREP: Initialize color pairs
    PREP: Set no-delay, keypad, nonl
    PREP: Output line with erase characters
    TEST: Read line with getstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello", received "Hexxl"
    PREP: Output line with Kill characters
    TEST: Read line with getstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello2", received "sdfjhs"
    CLEANUP: Call endwin
    CLEANUP: Call delscreen
    CLEANUP: Restore environment variables and close terminal connection
    17 FAIL

    TEST CASE: xmvgetnstr

    TEST PURPOSE #17
    A call to int mvgetnstr(int y, int x, char *str, int n)
    shall interpret the kill and erase characters.
    PREP: Set test locale: /vsu/xcurses_locale
    PREP: Set environment variables and open terminal connection
    PREP: Call newterm
    PREP: Initialize color pairs
    PREP: Set no-delay, keypad, nonl
    PREP: Output line with erase characters
    TEST: Read line with mvgetnstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello", received "Hexxl"
    PREP: Output line with Kill characters
    TEST: Read line with mvgetnstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello2", received "sdfjhs"
    CLEANUP: Call endwin
    CLEANUP: Call delscreen
    CLEANUP: Restore environment variables and close terminal connection
    17 FAIL

    TEST CASE: xmvgetstr

    TEST PURPOSE #17
    A call to int mvgetstr(int y, int x, char *str) shall
    interpret the kill and erase characters.
    PREP: Set test locale: /vsu/xcurses_locale
    PREP: Set environment variables and open terminal connection
    PREP: Call newterm
    PREP: Initialize color pairs
    PREP: Set no-delay, keypad, nonl
    PREP: Output line with erase characters
    TEST: Read line with mvgetstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello", received "Hexxl"
    PREP: Output line with Kill characters
    TEST: Read line with mvgetstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello2", received "sdfjhs"
    CLEANUP: Call endwin
    CLEANUP: Call delscreen
    CLEANUP: Restore environment variables and close terminal connection
    17 FAIL

    TEST CASE: xmvwgetnstr

    TEST PURPOSE #17
    A call to int mvwgetnstr(WINDOW *win, int y, int x, char *str, int n)
    shall interpret the kill and erase characters.
    PREP: Set test locale: /vsu/xcurses_locale
    PREP: Set environment variables and open terminal connection
    PREP: Call newterm
    PREP: Initialize color pairs
    PREP: Create a window
    PREP: Set no-delay, keypad, nonl
    PREP: Output line with erase characters
    TEST: Read line with mvwgetnstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello", received "Hexxl"
    PREP: Output line with Kill characters
    TEST: Read line with mvwgetnstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello2", received "sdfjhs"
    CLEANUP: Call endwin
    CLEANUP: Call delscreen
    CLEANUP: Restore environment variables and close terminal connection
    17 FAIL

    TEST CASE: xmvwgetstr

    TEST PURPOSE #17
    A call to int mvwgetstr(WINDOW *win, int y, int x,
    char *str) shall interpret the kill and erase
    characters.
    PREP: Set test locale: /vsu/xcurses_locale
    PREP: Set environment variables and open terminal connection
    PREP: Call newterm
    PREP: Initialize color pairs
    PREP: Create a window
    PREP: Set no-delay, keypad, nonl
    PREP: Output line with erase characters
    TEST: Read line with mvwgetstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello", received "Hexxl"
    PREP: Output line with Kill characters
    TEST: Read line with mvwgetstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello2", received "sdfjhs"
    CLEANUP: Call endwin
    CLEANUP: Call delscreen
    CLEANUP: Restore environment variables and close terminal connection
    17 FAIL

    TEST CASE: xwgetnstr

    TEST PURPOSE #17
    A call to int wgetnstr(WINDOW *win, char *str, int n)
    shall interpret the kill and erase characters.
    PREP: Set test locale: /vsu/xcurses_locale
    PREP: Set environment variables and open terminal connection
    PREP: Call newterm
    PREP: Initialize color pairs
    PREP: Create a window
    PREP: Set no-delay, keypad, nonl
    PREP: Output line with erase characters
    TEST: Read line with wgetnstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello", received "Hexxl"
    PREP: Output line with Kill characters
    TEST: Read line with wgetnstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello2", received "sdfjhs"
    CLEANUP: Call endwin
    CLEANUP: Call delscreen
    CLEANUP: Restore environment variables and close terminal connection
    17 FAIL

    TEST CASE: xwgetstr

    TEST PURPOSE #17
    A call to int wgetstr(WINDOW *win, char *str) shall
    interpret the kill and erase characters.
    PREP: Set test locale: /vsu/xcurses_locale
    PREP: Set environment variables and open terminal connection
    PREP: Call newterm
    PREP: Initialize color pairs
    PREP: Create a window
    PREP: Set no-delay, keypad, nonl
    PREP: Output line with erase characters
    TEST: Read line with wgetstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello", received "Hexxl"
    PREP: Output line with Kill characters
    TEST: Read line with wgetstr
    TEST: Return value
    TEST: Data received correctly
    ERROR: Expected "Hello2", received "sdfjhs"
    CLEANUP: Call endwin
    CLEANUP: Call delscreen
    CLEANUP: Restore environment variables and close terminal connection
    17 FAIL

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    We recommend this request be refused.

    The buffering mode of a file pointer is an attribute of a file stream.
    This is separate from ICANON which is an input mode of a file descriptor.
    That is, the spec allows a conforming implementation to alter the assignment
    of buffering to the file stream but this does not bear on the implementation
    under test's behavior of altering ICANON on the underlying file descriptor,
    which is nonconforming.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution No Resolution Given
    Review Conclusion
    This request requires review by the Base Working Group. It is
    being sent for the 14 day anonymous review.

    Review Type Expert Group Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution No Resolution Given
    Review Conclusion
    The Base Working Group agreed with the consultant that the request
    should 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