cd_drec(3)cd_drec(3)NAME
cd_drec, cd_cdrec - reads the Directory Record from a CD-ROM directory
SYNOPSIS
#include <sys/cdrom.h>
int cd_drec(
char *path,
int fsec,
struct iso9660_drec *drec ); int cd_cdrec(
char *path,
int fsec,
char *addr );
LIBRARY
Rock Ridge and X/Open Extensions to the CDFS library (libcdrom.so,
libcdrom.a)
PARAMETERS
Points to a file or directory within the CD-ROM File System hierarchy.
Specifies the File Section of the file or directory pointed to by
*path, with the numbering beginning at one. If fsec is set to -1, the
last File Section of the named file or the only File Section of the
named directory is assumed. Points to the iso9660_drec structure that
holds the contents of the Directory Record associated with the file or
directory pointed to by *path. The iso9660_drec structure is defined in
cdfs/xcdr.h, an include file that is called into sys/cdrom.h. Speci‐
fies the address to which the function cd_cdrec copies the complete
Directory Record that is recorded on the CD-ROM.
DESCRIPTION
The cd_drec routine fills the *drec structure with the contents of the
Directory Record that is associated with a file or directory pointed to
by *path.
The cd_cdrec function copies the complete Directory Record from the CD-
ROM to the address pointed to by *addr. The user must allocate
{CD_MAXDRECL} bytes for the Directory Record. The variable {CD_MAX‐
DRECL} 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: Search permission is denied for a directory
in *path or read permission is denied for the file or directory pointed
to by *path. The address of *path or *addr is invalid. A signal was
caught during execution of the function. The argument *path points to
a file or directory that is not within the CD-ROM file hierarchy.
The value of fsec is invalid. {OPEN_MAX} file descriptors are
currently open in the calling process.
[Tru64 UNIX] Either the OPEN_MAX value or the per-process soft
descriptor limit is checked. 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. The system
file table is full. A component of *path does not exist, or the
*path argument points to an empty string. A component of the
*path prefix is not a directory. The CD-ROM is not in the
drive, or a read error occurred.
SEE ALSO
Files: cdfs/xcdr.h, sys/cdrom.h
cd_drec(3)