FILENAME_TO_DEVNAME(2) FILENAME_TO_DEVNAME(2)
filename_to_devname - determine the device name for the device file
#include <invent.h>
char* filename_to_devname (char *filename, char *buf, int *length);
filename_to_devname is useful to determine the canonical hardware graph
path name given the filename for the device. Note that there can multiple
alias names for a device vertex in the hardware graph and the canonical
name is unique.
The filename_to_devname function provides a way to retrieve the canonical
path name for a device.
filename identifies the device, buf is the placeholder for the device
name and length is an input/output argument that on the call to
filename_to_devname should contain the maximum size of the name the
process is willing to accept. On return, the length will have been
modified to show the actual size of the device name returned.
filename_to_devname will fail if one or more of the following are true:
[E2BIG]
The device name is too large to fit into the buffer. The integer
that the valuelength argument points to has been modified to show
the actual number of bytes that would be required to store the value
of that attribute.
[ENOENT]
The named file does not exist.
[ENOTDIR]
A component of the file path name prefix is not a directory.
[EACCES]
Search permission is denied on a component of the file path name
prefix.
[EPERM]
The effective user ID does not match the owner of the file and the
effective user ID is not super-user.
[ELOOP]
The file path name lookup involved too many symbolic links.
[ENAMETOOLONG]
The length of filename exceeds {MAXPATHLEN}, or a filename component
is longer than {MAXNAMELEN}.
Page 1
FILENAME_TO_DEVNAME(2) FILENAME_TO_DEVNAME(2)
[EFAULT]
Buf, or length points outside the allocated address space of the
process.
attr(1), hwgraph(4)
Upon successful completion, the name is returned. Otherwise, a value of
NULL is returned and errno is set to indicate the error.
PPPPaaaaggggeeee 2222 [ Back ]
|