| Click this button to go to the index for this section. |
cd_ptrec(3)
NAME
cd_ptrec, cd_cptrec - Reads the Path Table Record from the CD-ROM Path TableLIBRARY
Rock Ridge and X/Open Extensions to the CDFS library (libcdrom.so, libcdrom.a)SYNOPSIS
#include <sys/cdrom.h> int cd_ptrec ( char *path, struct iso9660_ptrec *ptrec ); int cd_cptrec ( char *path, char *addr );PARAMETERS
*path Points to a file or directory within the CD-ROM File System hierarchy. *ptrec Points to the iso9660_ptrec structure that holds the contents of the Path Table Record associated with the file or directory pointed to by *path. The iso9660_ptrec structure is defined in cdfs/xcdr.h, an include file that is called into sys/cdrom.h *addr Specifies the address to which the function cd_cptrec copies the complete Path Table Record that is recorded on the CD-ROM.DESCRIPTION
The cd_ptrec routine fills the *ptrec structure with the contents of the Path Table Record associated with the directory that is pointed to by *path. The cd_cptrec function copies the complete Path Table Record that is recorded on the CD-ROM to the address pointed to by *addr. The user must allocate {CD_MAXPTRECL} bytes for the Path Table Record. The variable {CD_MAXPTRECL} is defined in cdfs/xcdr.h, an include file that is called into sys/cdrom.h.RETURN VALUES
If successful, the value zero is returned. If unsuccessful, the integer -1 is returned and errno is set to indicate the error.ERRORS
The function will fail if: [EACCES] Search permission is denied for a directory in *path or read permission is denied for the named directory. [EFAULT] The address of *path or *addr is invalid. [EINTR] A signal was caught during execution of the function. [EINVAL] The argument *path points to a file or directory that is not within the CD-ROM file hierarchy. [EMFILE] {OPEN_MAX} file descriptors are currently open in the calling process. [DIGITAL] Either the OPEN_MAX value or the per-process soft descriptor limit is checked. [ENAMETOOLONG] The length of the *path string exceeds {PATH_MAX}, or a pathname component is longer than {NAME_MAX} while {_POSIX_NO_TRUNC} is in effect. [ENFILE] The system file table is full. [ENOENT] A component of *path does not exist, or the *path argument points to an empty string. [ENOTDIR] A component of the *path prefix is not a directory. [ENXIO] The CD-ROM is not in the drive, or a read error occurred.RELATED INFORMATION
Files: cdfs/xcdr.h, sys/cdrom.h.