Index Index for
Section 3
Index Alphabetical
listing for C
Bottom of page Bottom of
page

cd_type(3)

NAME

cd_type - determines the type of file system recorded on a CD-ROM

SYNOPSIS

#include <sys/cdrom.h> int cd_type( char *path );

LIBRARY

Rock Ridge and X/Open Extensions to the CDFS library (libcdrom.so, libcdrom.a)

PARAMETERS

*path Points to a pathname naming a file or directory within the CD-ROM File System hierarchy, or to a pathname naming the block special file for the CD-ROM File System.

DESCRIPTION

The cd_type() routine determines the type of file system recorded on the CD-ROM pointed to by *path.

RETURN VALUES

If successful, the cd_type() function returns one of the following values, which are defined in cdfs/xcdr.h, an include file that is called into sys/cdrom.h: {CD_ISO9660} -- CD-ROM is recorded according to ISO 9660. {CD_HSG} -- CD-ROM is recorded according to High Sierra Group. {CD_RRIP} -- CD-ROM is recorded according to ISO 9660 with the Rock Ridge Extension. 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 and execute permission are denied for the named file, or read permission is denied on the block special file pointed to by *path. [EFAULT] The address of *path 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. [Tru64 UNIX] 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. The named file is a block special file and the device associated with the special file does not exist.

SEE ALSO

Files: cdfs/xcdr.h, sys/cdrom.h

Index Index for
Section 3
Index Alphabetical
listing for C
Top of page Top of
page