rsm_get_controller(3Remote Shared Memory Library Functrsm_get_controller(3RSM)NAME
rsm_get_controller, rsm_get_controller_attr, rsm_release_controller-
get or release a controller handle
SYNOPSIS
cc [ flag... ] file... -lrsm [ library... ]
#include <rsmapi.h>
int rsm_get_controller(char *name, rsmapi_controller_handle_t *con‐
troller);
int rsm_get_controller_attr(rsmapi_controller_handle_t chdl,
rsmapi_controller_attr_t *attr);
int rsm_release_controller(rsmapi_controller_handle_t chdl);
DESCRIPTION
The controller functions provide mechanisms for obtaining access to a
controller, determining the characteristics of the controller, and
releasing the controller.
The rsm_get_controller() function acquires a controller handle through
the controller argument. The name argument is the specific controller
instance (for example, "sci0" or "loopback"). This controller handle is
used for subsequent RSMAPI calls.
The rsm_get_controller_attr() function obtains a controller's
attributes through the attr argument. The chdl argument is the con‐
troller handle obtained by the rsm_get_controller() call. The
attribute structure is defined in the <rsmapi> header.
The rsm_release_controller() function releases the resources associ‐
ated with the controller identified by the controller handle chdl,
obtained by calling rsm_get_controller(). Each rsm_release_con‐
troller() call must have a corresponding rsm_get_controller() call. It
is illegal to access a controller or segments exported or imported
using a released controller.
RETURN VALUES
Upon successful completion, these functions return 0. Otherwise, an
error value is returned to indicate the error.
ERRORS
The rsm_get_controller(), rsm_get_controller_attr(), and
rsm_release_controller() functions can return the following errors:
RSMERR_BAD_CTLR_HNDL Invalid controller handle.
The rsm_get_controller() and rsm_get_controller_attr() functions can
return the following errors:
RSMERR_BAD_ADDR Bad address.
The rsm_get_controller() function can return the following errors:
RSMERR_CTLR_NOT_PRESENT Controller not present.
RSMERR_INSUFFICIENT_MEM Insufficient memory.
RSMERR_BAD_LIBRARY_VERSION Invalid library version.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability │Evolving │
├─────────────────────────────┼─────────────────────────────┤
│MT-Level │MT-Safe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOrsm_memseg_export_create(3RSM), rsm_memseg_import_connect(3RSM),
attributes(5)SunOS 5.10 8 Jun 2001 rsm_get_controller(3RSM)