Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ cd_cxar(3X) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

cdxar(1M)

cd_drec(3X)

cd_pvd(3X)






       cd_xar(3X)                                                cd_xar(3X)


       NAME
             cd_xar, cd_cxar - read CD-ROM Extended Attribute Record (XAR)

       SYNOPSIS
             cc [flag . . . ] file . . . -lcdfs -lgen [library] . . .
             #include <sys/cdrom.h>
             int cd_xar(const char *path, const int fsec, struct iso9660_xar *xar,
                   const int applen, const int esclen);
             int cd_cxar(const char *path, const int fsec, char *xar,
                   const int xarlen);

       DESCRIPTION
             cd_xar fills xar with the contents of the XAR associated with
             the file or directory referred to by the argument path.  An
             XAR describes attributes of a file or directory (such as the
             user ID, group ID, or permissions) on an extent, a portion of
             a file on a CD-ROM.  An XAR contains a fixed-length field and
             two variable length fields.  CD_XARFIXL defines the length of
             the fixed part of the XAR.

             You can obtain the total number of an XAR's logical blocks
             with the cd_drec function.  You can obtain the Logical Block
             Size in bytes with the cd_pvd function.

             path      File or directory in the CD-ROM file system.

             fsec      Specifies the File Section of that file.  The
                       numbering starts with one.  If fsec is set to -1,
                       the function reads the XAR of the last File Section
                       of the file.

             xar       Pointer to structure or character array where XAR is
                       to be copied.

             applen    Bytes to be copied to the address.  specified in the
                       xar structure by app_use.

             esclen    Bytes to be copied to the address specified in the
                       xar structure by esc_seq.

             xarlen    Bytes to be copied to xar.

          Return Values
             On success, cd_xar returns the number of bytes copied for the
             variable part of the XAR.  On success, cd_cxar returns the
             number of bytes copied.  On failure, the functions return -1


                           Copyright 1994 Novell, Inc.               Page 1













      cd_xar(3X)                                                cd_xar(3X)


            and set errno to identify the error.

         Errors
            EACCES    Read permission is denied on the mount point, or
                      search permission is denied on a component of path.

            EFAULT    Invalid address for the structure cd_defs or path.

            EINTR     A signal was caught during the execution of one of
                      the functions.

            EINVAL    Invalid value for fsec or xarlen.

            EINVAL    path points to a file or directory that is outside
                      the CD-ROM file system.

            EMFILE    The maximum number of file descriptors are open.

            ENAMETOOLONG
                      The size of path exceeds MAXPATHLEN, or the
                      component of a path name is longer than MAXNAMELEN
                      while _POSIX_NO_TRUNC is in effect.

            ENFILE    The system file table is full.

            ENOENT    path does not exist, the path argument points to an
                      empty string, or the file section indicated by fsec
                      has no XAR.

            ENOTDIR   A component of path is not a directory.

            ENXIO     CD-ROM is not in the drive or a read error occurred.

      REFERENCES
            cdxar(1M), cd_drec(3X), cd_pvd(3X)













                          Copyright 1994 Novell, Inc.               Page 2








Typewritten Software • bear@typewritten.org • Edmonds, WA 98026