snmp_sess_api man page on BSDi

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



SNMP_SESS_API(3)				 SNMP_SESS_API(3)

NAME
       snmp_sess_init,	   snmp_sess_open,     snmp_sess_session,
       snmp_sess_send,			    snmp_sess_async_send,
       snmp_sess_select_info,  snmp_sess_read, snmp_sess_timeout,
       snmp_sess_close, snmp_sess_error - session functions

SYNOPSIS
       #include <sys/types>
       #include <netinet/in.h>
       #include <sys/time.h>
       #include <ucd-snmp/snmp.h>
       #include <ucd-snmp/snmp_impl.h>
       #include <ucd-snmp/asn1.h>
       #include <ucd-snmp/snmp_api.h>

       void snmp_sess_init ( struct snmp_session * );

       void * snmp_sess_open ( struct snmp_session * );

       struct snmp_session * snmp_sess_session ( void * );

       int snmp_sess_send ( void * opaque,
	      struct snmp_pdu *pdu );

       int snmp_sess_async_send ( void * opaque,
	      struct snmp_pdu *pdu,
	      snmp_callback callback, void * callbackData );

       int snmp_sess_select_info ( void * opaque,
	      int *numfds, fd_set *fdset,
	      struct timeval *timeout, int *block );

       void snmp_sess_read ( void * opaque, fd_set *fdset );

       void snmp_sess_timeout ( void * opaque );

       int snmp_sess_close ( void * opaque );

       void snmp_sess_error ( void * opaque,
	      int *pcliberr, int *psnmperr, char **pperrstring );

DESCRIPTION
       These  functions	 define	 a  subset of the API that can be
       used to manage single SNMP sessions  in	a  multi-threaded
       application.   Except  for  snmp_sess_session, these func-
       tions are single session versions of the traditional  SNMP
       library API.

       Note  that  these functions use an Opaque pointer to iden-
       tify a single session in lieu of a session pointer.

       Snmp_sess_init prepares a struct snmp_session that sources
       transport characteristics and common information that will

			   21 Oct 1999				1

SNMP_SESS_API(3)				 SNMP_SESS_API(3)

       be used for a set of SNMP transactions.	After this struc-
       ture is passed to snmp_open to create an SNMP session, the
       structure is not used.

       SNMP sessions that are created with snmp_sess_open are not
       affected	 by and should not be used with snmp_select_info,
       snmp_read, snmp_timeout, nor snmp_close.	  Use  the  other
       functions described here with similar capabilities.

       Snmp_sess_init  and  snmp_sess_open  each  take as input a
       pointer to a struct snmp_session object.	  This	structure
       contains	 information  for a set of transactions that will
       share similar transport	characteristics.   Snmp_sess_ses-
       sion takes the opaque session handle and returns a pointer
       to its associated struct snmp_session.

       Snmp_sess_send and snmp_sess_async_send each take as input
       an  additional  pointer to a struct snmp_pdu object.  This
       structure contains information that describes  a	 transac-
       tion that will be performed over an open session.

       Consult	snmp_api.h  for	 the  definitions of these struc-
       tures.

       Snmp_sess_select_info, snmp_sess_read, and snmp_sess_time-
       out provide an interface for the use of the select(2) sys-
       tem call so that SNMP transactions for  a  single  session
       can occur asynchronously.

       Snmp_sess_select_info  is given the information that would
       have been passed to select in the absence  of  SNMP.   For
       example,	 this  might  include  window update information.
       This information is modified so that  SNMP  will	 get  the
       service	it  requires  from  the	 call to select.  In this
       case, numfds, fdset, and timeout correspond to  the  nfds,
       readfds,	 and  timeout  arguments to select, respectively.
       The only exception is that timeout must always point to an
       allocated  (but perhaps uninitialized) struct timeval.  If
       timeout would have been passed as NULL, block  is  set  to
       true, and timeout is treated as undefined.  This same rule
       applies upon return from snmp_select_info.

       After calling snmp_sess_select_info, select is called with
       the returned data.  When select returns, snmp_sess_read is
       called with the fd_set returned from  select.   This  will
       read any input from this session's SNMP socket.	If select
       times out, snmp_sess_timeout should be called  to  see  if
       the timeout was intended for SNMP.

DIAGNOSTICS
       Error  return  status  from snmp_sess_open is indicated by
       return of  a  null  pointer.   Error  return  status  from
       snmp_sess_close	and snmp_sess_send is indicated by return
       of 0.  A successful status will return a 1.

			   21 Oct 1999				2

SNMP_SESS_API(3)				 SNMP_SESS_API(3)

       Further	 information   can   be	  obtained    by    using
       snmp_sess_error	to  see	 what type of error has occurred.
       This function returns the SNMP "snmp_errno" variable,  the
       value  of the system "errno" variable, and a string inter-
       pretation of both variables.  The  string  must	be  freed
       after use by the caller.

       For errors returned by snmp_sess_open, use the correspond-
       ing function snmp_error instead of snmp_sess_error.

       Consult snmp_api.h for the complete set	of  SNMP  library
       error values.  The SNMP library error value snmperr can be
       one of the following values:

	 SNMPERR_GENERR		  A generic error occurred.

	 SNMPERR_BAD_LOCPORT	  The local port was bad  because
				  it  had  already been allocated
				  or permission was denied.

	 SNMPERR_BAD_ADDRESS	  The host name or address  given
				  was not useable.

	 SNMPERR_BAD_SESSION	  The  specified  session was not
				  open.

	 SNMPERR_TOO_LONG

	 SNMPERR_NO_SOCKET

	 SNMPERR_V2_IN_V1

	 SNMPERR_V1_IN_V2

	 SNMPERR_BAD_REPEATERS

	 SNMPERR_BAD_REPETITIONS

	 SNMPERR_BAD_ASN1_BUILD

	 SNMPERR_BAD_SENDTO

	 SNMPERR_BAD_RCVFROM

	 SNMPERR_BAD_PARSE

	 SNMPERR_BAD_VERSION

	 SNMPERR_BAD_COMMUNITY

	 SNMPERR_NOAUTH_DESPRIV

	 SNMPERR_ABORT

			   21 Oct 1999				3

SNMP_SESS_API(3)				 SNMP_SESS_API(3)

	 SNMPERR_UNKNOWN_PDU

	 SNMPERR_TIMEOUT

SEE ALSO
       select(2), snmp_api(3), snmp_api.h

			   21 Oct 1999				4

[top]

List of man pages available for BSDi

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