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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 2450 Actions


    Problem Report Number 2450
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0664
    Raised 2005-02-25 00:44
    Updated 2005-03-03 18:53
    Published 2005-03-03 18:53
    Product Standard Internationalised System Calls and Libraries Extended V3 (UNIX 03)
    Certification Program The Open Brand certification program
    Test Suite VSX4 version 4.6.3
    Test Identification POSIX.os/dataform/tar 45
    Specification Base Definitions Issue 6
    Location in Spec XCU pax section: line 27194
    Problem Summary Test assumes that hard links to symbolic links are supported by all
    implementations, but in SUSv3 such support is optional
    Problem Text Test 45 is testing the following from the pax section of SUSv3 TC2:

    If the selected archive format supports the specification of linked
    files, it shall be an error if these files cannot be linked when the
    archive is extracted, except that if the files to be linked are 2
    symbolic links and the system is not capable of making hard links to
    symbolic links, then 2 separate copies of the symbolic link shall be
    created instead.

    The rationale for pax states the following:

    The description of the -l option allows implementations to make hard
    links to symbolic links. IEEE Std 1003.1-2001 does not specify any way
    to create a hard link to a symbolic link, but many implementations
    provide this capability as an extension.

    Our implementation does not allow hard links to symbolic links, instead
    a hard link is created to the object the symbolic links points to. As an
    example:

    $ echo "hello world" > file
    $ ln -s file symlink
    $ ln symlink hardlink
    $ ls -l
    total 16
    -rw-r--r-- 2 vsx0 vsxg0 12 Feb 23 11:21 file
    -rw-r--r-- 2 vsx0 vsxg0 12 Feb 23 11:21 hardlink
    lrwxrwxrwx 1 vsx0 vsxg0 4 Feb 23 11:21 symlink -> file
    $ ls -1i
    34 file
    34 hardlink
    35 symlink

    The test fails when it finds a hard link and symbolic link instead of
    two symbolic links.
    Test Output
    ************************************************************************
    /tset/POSIX.os/dataform/tar/T.tar 45 Failed

    Test Description:
    For POSIX01 and UNIX03 modes:
    When reading an archive which contains a link (typeflag 1)
    to a
    symbolic link (typeflag 2), then the two symbolic
    links are
    extracted either as linked files or as separate identical
    copies.

    Test Strategy:
    CREATE new tar archive using new_tar()
    INITIALISE tar archive header using init_head()
    FOR an ordinary file, a symbolic link to the ordinary file, and
    a hard
    link to the symbolic link:
    CALCULATE check sum for format header using calc_sum()
    CONVERT check sum into an ASCII string of octal digits with
    trailing
    space and NULL using ltoaoct()
    WRITE archive header to tar archive using write_head()
    INITIALISE tar archive trailer using init_trail()
    WRITE archive trailer to tar archive using write_trail()
    ENSURE that the files to be extracted from the archive do not
    already
    exist by unlinking them and then using lstat() to check
    EXTRACT files from tar archive with pre-defined utility using
    extract_tar()
    REPEAT for the symbolic link to the ordinary file, and the hard link
    to the symbolic link:
    VERIFY that the current symbolic link has been created using
    lstat()
    VERIFY that the symbolic link has the expected contents by using
    readlink()

    Test Information:

    symlink 2 was not extracted as a symlink
    instead linked file was extracted


    ************************************************************************

    Review Information

    Review Type TSMA Review
    Start Date 2005-02-25 00:44
    Last Updated 2005-02-25 01:29
    Completed 2005-02-25 01:29
    Status Complete
    Review Recommendation Rejected (REJ)
    Review Response The standard clearly requires that hard-linked symbolic links in the
    archive must be extracted either as hard-linked symbolic links or as
    separate identical symbolic links. This implementation has done neither
    of these things, it has created a hard link to the target of the first
    symbolic link. This is indicative of a pax implementation which blindly
    calls link() when there are hard-linked files in the archive. In order
    to comply with the standard, on a system where hard-linked symbolic
    links are not supported pax must detect the situation where the
    hard-linked files in the archive are symbolic links and must create
    separate identical symbolic links instead.

    Review Type SA Review
    Start Date 2005-02-25 01:29
    Last Updated 2005-02-25 02:53
    Completed 2005-02-25 02:53
    Status Complete
    Review Resolution Rejected (REJ)
    Review Conclusion This PR is rejected as a TSD for the grounds stated by the TSMA.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority