cd_nmconv(3)cd_nmconv(3)NAMEcd_nmconv - sets or gets CD-ROM file name conversions
SYNOPSIS
#include <sys/cdrom.h>
int cd_nmconv(
char *path,
int cmd,
int *flag );
LIBRARY
Rock Ridge and X/Open Extensions to the CDFS library (libcdrom.so,
libcdrom.a)
PARAMETERS
Points to a mount point of a CD-ROM file system. Can be set to either
{CD_SETNMCONV} to set or {CD_GETNMCONV} to get the name conversion for
file names on a mounted CD-ROM. Used in conjunction with cmd, and can
be one of the following:
{CD_NOCONV}
No conversion. This is the default when the CD-ROM is first
mounted.
{CD_LOWER}
File or directory names on the CD-ROM File System are converted
to lowercase when represented in the XSI file hierarchy. In
addition, if a file or directory name contains no File Name
Extension, SEPARATOR 1, a dot (.), is not represented in the XSI
file hierarchy.
{CD_NOVERSION}
The version number and SEPARATOR 2, a semicolon (;), of a file
or directory name on the CD-ROM File System are not represented
in the XSI file hierarchy.
Note that {CD_LOWER} and {CD_NOVERSION} may be bitwise-inclusive
ORed.
DESCRIPTION
The cd_nmconv() routine sets of gets the name conversion *flag for file
names on a mounted CD-ROM.
RESTRICTIONS
Setting a file name conversion is restricted to users with the appro‐
priate privileges. This function is intended to be used to set a file
name conversion only directly after the CD-ROM is mounted and before
its files and directories are accessed. Attempting to use this function
to set a file name conversion after files or directories on the CD-ROM
have been accessed may produce unpredictable results.
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 on the mount-point. The address
of *flag or *path is invalid. A signal was caught during execution of
the function. The argument *path does not point to a mount point of a
CD-ROM File System. The value of cmd or *flag 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 user does not have the
appropriate privileges to set values.
SEE ALSO
Files: cdfs/xcdr.h, sys/cdrom.h
cd_nmconv(3)