NAME

getdevmajor - get block or character device major number

LIBRARY

Standard C Library (libc, -lc)

SYNOPSIS



dev_t getdevmajor(const char *name, mode_t type)

DESCRIPTION

The getdevmajor() function returns the major device number of the block or character device specified by name and a file type matching the one encoded in type which must be one of S_IFBLK or S_IFCHR.

RETURN VALUES

If no device matches the specified values, no information is available, or an error occurs, (dev_t)~0 is returned and errno is set to indicate the error.

EXAMPLES

To retrieve the major number for pty(4) slave devices (aka pts devices):
#include <stdlib.h>
#include <sys/stat.h>


dev_t pts; pts = getdevmajor("pts", S_IFCHR);

To retrieve the major numbers for the block and character wd(4) devices:

#include <stdlib.h>
#include <sys/stat.h>


dev_t c, b; c = getdevmajor("wd", S_IFCHR); b = getdevmajor("wd", S_IFBLK);

ERRORS

The getdevmajor() function may fail and set errno for any of the errors specified for the library functions malloc(3) and sysctlbyname(3). In addition, the following errors may be reported:

[EINVAL]
The value of the major argument is not S_IFCHR or S_IFBLK.

[ENOENT]
The named device is not found.

SEE ALSO

stat(2), devname(3), malloc(3), sysctlbyname(3)

HISTORY

The getdevmajor() function call appeared in NetBSD3.0.