VOLMGT_RELEASE(3VOLMGT) Volume Management Library Functions VOLMGT_RELEASE(3VOLMGT)

volmgt_release - release removable media device reservation

cc [ flag ... ] file ... -lvolmgt [ library ... ]
#include <volmgt.h>
int volmgt_release(char *dev);

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(7). The return value of this function is undefined.

The volmgt_release() routine releases the removable media device reservation specified as dev. See volmgt_acquire(3VOLMGT) for a description of dev.

If dev is reserved by the caller, volmgt_release() updates the internal device reservation database to indicate that the device is no longer reserved. If the requested device is reserved by another process, the release attempt fails and errno is set to 0.

The return from this function is undefined.

On failure, volmgt_release() returns 0, and sets errno for one of the following conditions:

EINVAL

dev was invalid or missing.

EBUSY

dev was not reserved by the caller.

Example 1 Using volmgt_release()

In the following example, volume management is running, and the first floppy drive is reserved, accessed and released.


#include <volmgt.h>
char *errp;
if (!volmgt_acquire("floppy0", "FileMgr", 0, &errp,

NULL)) { /* handle error case */ ... } /* floppy acquired - now access it */ if (!volmgt_release("floppy0")) { /* handle error case */ ... }

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE ATTRIBUTE VALUE
MT-Level MT-Safe
Interface Stability Obsolete

volmgt_acquire(3VOLMGT), attributes(7), hal(7)

March 8, 2007 OmniOS