Content-type: text/html Man page of cd_getdevmap

cd_getdevmap

Section: C Library Functions (3)
Index Return to Main Contents
 

NAME

cd_getdevmap - Get mappings of major/minor numbers of a file on a Rock Ridge format CD-ROM  

LIBRARY

CD-ROM library (libcdrom.so, libcdrom.a)  

SYNOPSIS

#include <sys/cdrom.h>

int cd_getdevmap (path, pathlen, index, new_major, new_minor)
        char *path;
        int pathlen;
        int index;
        int *new_major;
        int *new_minor;  

DESCRIPTION

This function gets the major and minor numbers of one device file on a mounted Rock Ridge format CD-ROM. The argument path points to a file or directory within the CD-ROM file hierarchy. The argument index refers to the number index mapped device file. Mappings can be obtained by path or index.

If index is zero, this function gets the mapped major and minor numbers of the device file pointed to by path. The value of the mapped major number shall be returned in new_major. The value of the mapped minor number shall be returned in new_minor. The value of pathlen is not used.

If index is not zero, this function gets the major and minor numbers and pathname of the mapped device file specified by index. Numbering for index starts at one. The value of the mapped major number shall be returned in new_major. The value of the mapped minor number shall be returned in new_minor. The pathname of the device file shall be returned in path. If the length of the pathname for the device file is longer than pathlen, the pathname returned in path will be truncated to pathlen length and will not be NULL terminated.  

RETURN VALUES

The cd_getdevmap function will return the length of pathname if the device file is successfully returned (a return value of zero means mapping not found). Note: if the pathname is truncated, the return value will be larger than pathlen.

In case of error, -1 is returned and errno is set to indicate the error.  

RESTRICTIONS

The maximum number of mappings is defined in <sys/cdrom.h>. The device file mappings for a mounted CD-ROM are undone when the CD-ROM is unmounted.

The index numbers from 1 to n (where n is the number of the last device file mapping) are always guaranteed to have a device file mapping associated with the number. Thus if an application wishes to successively delete all device file mappings, one at a time, it would call cd_getdevmap() with index equal to 1, and then cd_setdevmap() with CD_UNSETDMAP in a loop until cd_getdevmap() returns zero.  

ERRORS

Search permission is denied for a component of the path prefix or read permission on the device file 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. A component of the path prefix is not a directory. The address of path, new_major, or new_minor is invalid. The value of index or pathlen is invalid. The argument path points to a file or directory not within a CD-ROM file hierarchy. The file pointed to by path is not a device file. The CD-ROM is not in the drive or a read error occurred. A signal was caught during the cd_getdevmap() function. {OPEN_MAX} file descriptors are currently open in the calling process.
[DIGITAL]  Either the OPEN_MAX value or the per-process soft descriptor limit is checked. The system file table is full.
 

RELATED INFORMATION

Commands: cddevsuppl(8)

Functions: cd_setdevmap(3)

Files: <sys/cdrom.h> delim off


 

Index

NAME
LIBRARY
SYNOPSIS
DESCRIPTION
RETURN VALUES
RESTRICTIONS
ERRORS
RELATED INFORMATION

This document was created by man2html, using the manual pages.
Time: 02:41:38 GMT, October 02, 2010