FILENAME_TO_DRIVERNAME(2) FILENAME_TO_DRIVERNAME(2)
filename_to_drivername - determine the device name for the device file
#include <invent.h>
int filename_to_drivername (char *filename, char *buf, int *length);
filename_to_drivername is useful to determine the name of the driver
handling the device with the given special filename. Note that there can
multiple alias names for a device vertex in the hardware graph.
The filename_to_drivername function provides a way to retrieve the name
of the driver handling the device with the given special filename.
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_drivername 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 driver name returned.
filename_to_drivername will fail if one or more of the following are
true:
[E2BIG]
The driver 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_DRIVERNAME(2) FILENAME_TO_DRIVERNAME(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 ]
|