xref: /freebsd/lib/libc/gen/devname.3 (revision 1dd9f42a29c7b2c6247f0b8334baa29db11cf982)
158f0484fSRodney W. Grimes.\" Copyright (c) 1993
258f0484fSRodney W. Grimes.\"	The Regents of the University of California.  All rights reserved.
358f0484fSRodney W. Grimes.\"
458f0484fSRodney W. Grimes.\" Redistribution and use in source and binary forms, with or without
558f0484fSRodney W. Grimes.\" modification, are permitted provided that the following conditions
658f0484fSRodney W. Grimes.\" are met:
758f0484fSRodney W. Grimes.\" 1. Redistributions of source code must retain the above copyright
858f0484fSRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer.
958f0484fSRodney W. Grimes.\" 2. Redistributions in binary form must reproduce the above copyright
1058f0484fSRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer in the
1158f0484fSRodney W. Grimes.\"    documentation and/or other materials provided with the distribution.
1258f0484fSRodney W. Grimes.\" 3. All advertising materials mentioning features or use of this software
1358f0484fSRodney W. Grimes.\"    must display the following acknowledgement:
1458f0484fSRodney W. Grimes.\"	This product includes software developed by the University of
1558f0484fSRodney W. Grimes.\"	California, Berkeley and its contributors.
1658f0484fSRodney W. Grimes.\" 4. Neither the name of the University nor the names of its contributors
1758f0484fSRodney W. Grimes.\"    may be used to endorse or promote products derived from this software
1858f0484fSRodney W. Grimes.\"    without specific prior written permission.
1958f0484fSRodney W. Grimes.\"
2058f0484fSRodney W. Grimes.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
2158f0484fSRodney W. Grimes.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
2258f0484fSRodney W. Grimes.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
2358f0484fSRodney W. Grimes.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
2458f0484fSRodney W. Grimes.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
2558f0484fSRodney W. Grimes.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
2658f0484fSRodney W. Grimes.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2758f0484fSRodney W. Grimes.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
2858f0484fSRodney W. Grimes.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2958f0484fSRodney W. Grimes.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
3058f0484fSRodney W. Grimes.\" SUCH DAMAGE.
3158f0484fSRodney W. Grimes.\"
320014b4c0SPeter Wemm.\"     @(#)devname.3	8.2 (Berkeley) 4/29/95
337f3dea24SPeter Wemm.\" $FreeBSD$
3458f0484fSRodney W. Grimes.\"
351dd9f42aSDima Dorfman.Dd July 18, 1999
3658f0484fSRodney W. Grimes.Dt DEVNAME 3
37a307d598SRuslan Ermilov.Os
3858f0484fSRodney W. Grimes.Sh NAME
3958f0484fSRodney W. Grimes.Nm devname
4058f0484fSRodney W. Grimes.Nd get device name
4125bb73e0SAlexey Zelkin.Sh LIBRARY
4225bb73e0SAlexey Zelkin.Lb libc
4358f0484fSRodney W. Grimes.Sh SYNOPSIS
4432eef9aeSRuslan Ermilov.In sys/stat.h
4532eef9aeSRuslan Ermilov.In stdlib.h
4658f0484fSRodney W. Grimes.Ft char *
4758f0484fSRodney W. Grimes.Fn devname "dev_t dev" "mode_t type"
4858f0484fSRodney W. Grimes.Sh DESCRIPTION
4958f0484fSRodney W. GrimesThe
5058f0484fSRodney W. Grimes.Fn devname
5158f0484fSRodney W. Grimesfunction returns a pointer to the name of the block or character
5258f0484fSRodney W. Grimesdevice in
531dd9f42aSDima Dorfman.Pa /dev
5458f0484fSRodney W. Grimeswith a device number of
5558f0484fSRodney W. Grimes.Fa dev ,
5658f0484fSRodney W. Grimesand a file type matching the one encoded in
5758f0484fSRodney W. Grimes.Fa type
581dd9f42aSDima Dorfmanwhich must be one of
591dd9f42aSDima Dorfman.Dv S_IFBLK
601dd9f42aSDima Dorfmanor
611dd9f42aSDima Dorfman.Dv S_IFCHR .
62f04938aaSDima DorfmanTo find the right name,
63f04938aaSDima Dorfman.Fn devname
64f04938aaSDima Dorfmanfirst searches the device database created by
65f04938aaSDima Dorfman.Xr dev_mkdb 8 ;
66f04938aaSDima Dorfmanif that fails, it asks the kernel via the
67f04938aaSDima Dorfman.Va kern.devname
68f04938aaSDima Dorfmansysctl.
69f04938aaSDima DorfmanIf it was still unable to come up with a suitable name,
70f04938aaSDima Dorfmanit will format the information encapsulated in
71f04938aaSDima Dorfman.Fa dev
72f04938aaSDima Dorfmanand
73f04938aaSDima Dorfman.Fa type
74f04938aaSDima Dorfmanin a human-readable format.
7558f0484fSRodney W. Grimes.Sh SEE ALSO
7658f0484fSRodney W. Grimes.Xr stat 2 ,
7758f0484fSRodney W. Grimes.Xr dev_mkdb 8
7858f0484fSRodney W. Grimes.Sh HISTORY
7958f0484fSRodney W. GrimesThe
80bf5a138eSMike Pritchard.Fn devname
8158f0484fSRodney W. Grimesfunction call appeared in
8258f0484fSRodney W. Grimes.Bx 4.4 .
83f04938aaSDima Dorfman.Sh BUGS
84f04938aaSDima DorfmanThe
85f04938aaSDima Dorfman.Fn devname
86f04938aaSDima Dorfmanfunction returns a poiner to an internal static object;
87f04938aaSDima Dorfmanthus, subsequent calls will modify the same buffer.
88