Volume Management Library Functions media_findname(3VOLMGT)
NAME
media_findname - convert a supplied name into an absolute
pathname that can be used to access removable mediaSYNOPSIS
cc [ flag ... ] file ... -lvolmgt [ library ... ]
#include
char *media_findname(char *start);
DESCRIPTION
This function is obsolete. The management of removable media by the Volume Management feature, including vold, has been replaced by software that supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is through the HAL APIs, which are documented on the HAL web site. See hal(5). The return value of this function is undefined.media_findname() converts the supplied start string into an
absolute pathname that can then be used to access a particu-
lar piece of media. The start parameter can be one of the following types of specifications: /dev/... An absolute pathname in /dev, such as /dev/rdiskette0, in which case a copy of that string is returned (see NOTES on this page).volume_name The volume name for a particular volume,
such as fred (see fdformat(1) for a description of how to label floppies).volmgt_symname The symbolic name for a device, such as
floppy0 or cdrom2.media_type The generic media type name. For example,
floppy or cdrom. In this casemedia_findname() looks for the first piece
of media that matches that media type, starting at 0 (zero) and continuing on until a match is found (or some fairly large maximum number is reached). In thisSunOS 5.11 Last change: 2 Mar 2007 1
Volume Management Library Functions media_findname(3VOLMGT)
case, if a match is found, a copy of the pathname to the volume found is returned.RETURN VALUES
The return from this function is undefined.ERRORS
For cases where the supplied start parameter is an absolutepathname, media_findname() can fail, returning a null string
pointer, if an lstat(2) of that supplied pathname fails. Also, if the supplied absolute pathname is a symbolic link,media_findname() can fail if a readlink(2) of that symbolic
link fails, or if a stat(2) of the pathname pointed to by that symbolic link fails, or if any of the following is true: ENXIO The specified absolute pathname was not a character special device, and it was not a directory with a character special device in it.EXAMPLES
Example 1 Sample programs of the media_findname() function.
The following example attempts to find what the pathname is to a piece of media called fred. Notice that avolmgt_check() is done first (see the NOTES section on this
page).(void) volmgt_check(NULL);
if ((nm = media_findname("fred")) != NULL) {
(void) printf("media named \"fred\" is at \"%s\"\n", nm);
} else { (void) printf("media named \"fred\" not found\n"); } This example looks for whatever volume is in the firstfloppy drive, letting media_findname() call volmgt_check()
if and only if no floppy is currently known to be the first floppy drive.if ((nm = media_findname("floppy0")) != NULL) {
(void) printf("path to floppy0 is \"%s\"\n", nm);
} else { (void) printf("nothing in floppy0\n"); }SunOS 5.11 Last change: 2 Mar 2007 2
Volume Management Library Functions media_findname(3VOLMGT)
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| MT-Level | MT-Unsafe |
|_____________________________|_____________________________|
| Interface Stability | Obsolete ||_____________________________|_____________________________|
SEE ALSO
fdformat(1), lstat(2), readlink(2), stat(2), free(3C),malloc(3C), volmgt_check(3VOLMGT), volmgt_inuse(3VOLMGT),
volmgt_root(3VOLMGT), volmgt_running(3VOLMGT),
volmgt_symname(3VOLMGT), attributes(5), hal(5)
NOTESIf media_findname() cannot find a match for the supplied
name, it performs a volmgt_check(3VOLMGT) and tries again,
so it can be more efficient to perform volmgt_check() before
calling media_findname().
Upon success media_findname() returns a pointer to string
which has been allocated; this should be freed when no longer in use (see free(3C)).SunOS 5.11 Last change: 2 Mar 2007 3