 |
Index for Section 3 |
|
 |
Alphabetical listing for C |
|
 |
Bottom of page |
|
cd_nmconv(3)
NAME
cd_nmconv - Sets or gets CD-ROM file name conversions
LIBRARY
Rock Ridge and X/Open Extensions to the CDFS library (libcdrom.so,
libcdrom.a)
SYNOPSIS
#include <sys/cdrom.h>
int cd_nmconv (
char *path,
int cmd,
int *flag );
PARAMETERS
*path
Points to a mount-point of a CD-ROM file system.
cmd
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.
*flag
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 semi-colon (;), 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 OR-ed.
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 appropriate
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:
[EACCES] Search permission is denied for a directory in *path or read
permission is denied on the mount-point.
[EFAULT] The address of *flag or *path is invalid.
[EINTR] A signal was caught during execution of the function.
[EINVAL] The argument *path does not point to a mount-point of a CDROM
File System.
The value of cmd or *flag is invalid.
[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.
[EPERM] The user does not have the appropriate privileges to set values.
RELATED INFORMATION
Files: cdfs/xcdr.h, sys/cdrom.h.
 |
Index for Section 3 |
|
 |
Alphabetical listing for C |
|
 |
Top of page |
|