libmms man page on OpenIndiana

Man page or keyword search:  
man Server   20441 pages
apropos Keyword Search (all sections)
Output format
OpenIndiana logo
[printable version]

libmms(3LIB)		      Interface Libraries		  libmms(3LIB)

NAME
       libmms - Media Management System library

SYNOPSIS
       cc [ flag... ] file... -lmms [ library... ]

DESCRIPTION
       Functions in this library provide access to the Media Management System
       (MMS).

       The Media Management System (MMS) is a distributed removable media man‐
       agement	system.	 It  is	 based	on  IEEE 1244, Media Management System
       (MMS). Client applications request MMS to mount and unmount  cartridges
       and process them after they are mounted. Applications use Media Manage‐
       ment Protocol (MMP) commands to make  requests.	The  Media  Management
       System  (MMS) client API provides basic functions that give an applica‐
       tion the ability to connect to MMS, send commands to MMS, and interpret
       the responses to the commands.

       For  a  client to establish a connection to MMS, it needs to first ini‐
       tialize a session and then establish  the  connection.  There  are  two
       types of sessions:

       synchronous     A  synchronous  connection  means that the client waits
		       for a response for each command that it sends to MMS.

       asynchronous    A asynchronous connections means the  client  can  con‐
		       tinue  to  send	commands  to MMS without waiting for a
		       response to the commands.

       The type of session is specified	 with  the  choice  of	initialization
       function, either mms_init() or mms_ainit().

       The connection is established with the hello function, mms_hello().

       Within  an  asynchronous	 session, the client can also send synchronous
       commands.

       If a client's instance is configured to allow  multiple	sessions,  the
       client can create more than one session, in any combination of synchro‐
       nous and asynchronous types. The client must manage which commands  are
       sent over which session.

       If  the	client's instance is not configured to allow multiple sessions
       and a second init function  is  called,	the  client's  hello  function
       receives an "unwelcome" response from MMS.

       Any command sent using the asynchronous send function, mms_send_acmd(),
       specifies a callback routine that is invoked when the MMS API  receives
       a  response to the command. This callback routine is a client-specified
       function. A callback function can  not  issue  other  commands  to  MMS
       because	the  callback  function	 is  executed as part of the MMS API's
       reader thread.

       An asynchronous session allows the client to also issue commands	 using
       the  synchronous	 send function, mms_send_cmd(), waiting for a response
       before returning.

       A client can receive notification of certain events that	 occur	within
       MMS through the event notification mechanism.

       Routines are provided by the API to help in the processing of responses
       to the client's commands.

       For OpenSolaris platforms, libmms is released in	 shared	 object	 (.so)
       format, installed in /usr/lib/libmms.so.

       The  following  table  lists  libmms library routines and indicates the
       type of connection that supports them and whether they are optional.

	     Routine		     Availability		     Required
       ─────────────────────────────────────────────────────────────────────────────────
       mms_init()	     synchronous		    required for synchronous
       ─────────────────────────────────────────────────────────────────────────────────
       mms_ainit()	     asynchronous		    required for asynchronous
       ─────────────────────────────────────────────────────────────────────────────────
       mms_hello()	     synchronous and asynchronous   required for both
       ─────────────────────────────────────────────────────────────────────────────────
       mms_send_cmd()	     synchronous and asynchronous   required  for  synchronous,
							    optional for asynchronous
       ─────────────────────────────────────────────────────────────────────────────────
       mms_send_acmd()	     synchronous and asynchronous   required  for asynchronous,
							    optional for synchronous
       ─────────────────────────────────────────────────────────────────────────────────
       mms_read_response()   synchronous and asynchronous   required  for  intermediate
							    response to mms_send_cmd()
       ─────────────────────────────────────────────────────────────────────────────────
       mms_free_rsp()	     synchronous and asynchronous   required for both
       ─────────────────────────────────────────────────────────────────────────────────
       mms_goodbye()	     synchronous		    required for synchronous
       ─────────────────────────────────────────────────────────────────────────────────
       mms_agoodbye()	     asynchronous		    required for asynchronous

       The  following routines are used by a client to to process the response
       to a MMS command.

       mms_rsp_type()	       Returns the type of response that was  received
			       for the command.

       mms_handle_err_rsp()    Returns	the  error code and error message from
			       an error response.

       mms_get_tree()	       Returns the parse tree of the response.

       mms_get_attribute()     Obtains the value associcated with a  attribute
			       name from a response in namevalue mode.

USAGE
       To  make	 a  client  application able to use MMS, build the client with
       access to the MMS API library routines and then configure the  applica‐
       tion.

	   1.	  Get a copy of the MMS source tree.

	   2.	  Include  <mms_api.h>	and  <mms_sym.h>  in the makefile. The
		  path is  the	san-andreas/include/$(OBJ_DIR).	 For  example,
		  OBJ_DIR is the obj/SunOS_5.10_sparc_DEBUG.

	   3.	  Link	the  client  to	 the mms library to get the MMS API. A
		  client can link either statically or	dynamically.  To  link
		  the	  library     statically,    the    path    is	  san-
		  andreas/lib/$(OBJ_DIR). To link at runtime, MMS is installed
		  in /opt/SUNWsmmms/lib/libmms.so.

	   4.	  Link with either libcommon.so or libcommon.a depending on if
		  the client is dynamically linked or statically linked.

	   5.	  Create the client's application name in MMS database. Client
		  application instances must be created within MMS database in
		  order for clients to establish  a connection with MMS.

	   6.	  Use the MMS database password to connect to MMS. The default
		  database  password  is  a  construction of the administrator
		  password with the characters " dbadmin" appended.

INTERFACES
       The shared object libmms.so.1 provides the  public  interfaces  defined
       below.  See Intro(3) for additional information on shared object inter‐
       faces.

       mms_agoodbye		     mms_ainit
       mms_free_rsp		     mms_get_attribute
       mms_get_str		     mms_get_tree
       mms_goodbye		     mms_handle_err_rsp
       mms_hello		     mms_init
       mms_read_response	     mms_rsp_type
       mms_send_acmd		     mms_send_cmd

FILES
       /usr/lib/libmms.so.1	  shared object

       /usr/lib/64/libmms.so.1	  64-bit shared object

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Availability		     │system/storage/mms	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Interface Stability	     │Uncommitted		   │
       ├─────────────────────────────┼─────────────────────────────┤
       │MT-Level		     │MT-Safe			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       Intro(3),   mms_init(3MMS),   mms_rsp_type(3MMS),   mms_send_cmd(3MMS),
       attributes(5)

SunOS 5.11			  2 Dec 2008			  libmms(3LIB)
[top]

List of man pages available for OpenIndiana

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net