cd_suf - read System Use Field from a specified System Use
Area on a Rock Ridge format CD-ROM
#include <sys/cdrom.h>
int cd_suf(
char *path,
int fsec,
char signature[2],
int index,
char *buf,
int buflen );
CD-ROM library (libcdrom.so, libcdrom.a)
Points to a file or directory within the CD-ROM file hierarchy.
Specifies the File Section of that file. The numbering
starts with one. If fsec is set to -1, the System
Use Area of the last File Section of that file is assumed.
The 2-byte signature to look for and return from the System
Use Area. The occurrence of signature to return. If
signature is a NULL pointer, returns the System Use Field
specified by index starting from the beginning of the System
Use Area. Otherwise, returns the occurrence of signature
specified by index. The index number of the first
System Use Field of any signature is one. The buffer in
which to place the System Use Field. The buffer length of
buf.
The cd_suf() function returns a System Use Field in the
System Use Area for path.
The cd_suf() function will return the number of bytes
placed in buf if successful. The cd_suf() function will
return 0 if the signature field is not found. In case of
error, -1 is returned and errno is set to indicate the
error.
The cd_suf() function will fail if: Search permission is
denied for a component of the path prefix or read permission
on the file or directory pointed to by path is
denied. 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. A component of path does
not exist or the path argument points to an empty string.
The File Section indicated by fsec has no System Use Area.
A component of the path prefix is not a directory. The
address of buf, signature, or path is invalid. The value
of fsec, index, or buflen is invalid. The argument path
points to a file or directory not within a CD-ROM file
hierarchy. The Volume containing the File Section indicated
by fsec is not mounted. The CD-ROM is not in the
drive or a read error occurred. A signal was caught during
the cd_suf() function. {OPEN_MAX} file descriptors
are currently open in the calling process.
[Tru64 UNIX] Either the OPEN_MAX value or the perprocess
soft descriptor limit is checked. The system
file table is full.
Commands: cdsuf(1)
Files: <sys/cdrom.h>
cd_suf(3)
[ Back ] |