snmp_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_API(3)					      SNMP_API(3)

NAME
       snmp_sess_init,	 snmp_open,   snmp_send,   snmp_free_pdu,
       snmp_select_info,  snmp_read,  snmp_timeout,   snmp_close,
       snmp_perror,	    snmp_sess_perror,	      snmp_error,
       snmp_api_errstring - send and receive SNMP messages

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

       void snmp_sess_init ( struct snmp_session * );

       struct snmp_session * snmp_open ( struct snmp_session *);
	      /* Input parameter not used in active sessions */

       int snmp_send ( struct snmp_session *session,
	      struct snmp_pdu *pdu );

       int snmp_select_info ( int *numfds, fd_set *fdset,
	      struct timeval *timeout, int *block );

       void snmp_read ( fd_set *fdset );

       void snmp_timeout ( void );

       int snmp_close ( struct snmp_session *session );

       void snmp_free_pdu ( struct snmp_pdu *pdu );

       void snmp_error ( struct snmp_session *session,
	      int *pcliberr, int *psnmperr, char **pperrstring );

       char *snmp_api_errstring ( int snmperr );

       void snmp_perror ( char * msg );
	      /* for parsing errors only */

       void snmp_sess_perror (char * msg, struct snmp_session *);
	      /* all other SNMP library errors */

DESCRIPTION
       Snmp_sess_init prepares a struct snmp_session that sources
       transport characteristics and common information that will
       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_open returns  a  pointer  to  a  newly-formed  struct

			   21 Oct 1999				1

SNMP_API(3)					      SNMP_API(3)

       snmp_session  object,  which  the  application must use to
       reference the active SNMP session.

       Snmp_send and snmp_free_pdu each take as input  a  pointer
       to  a  struct  snmp_pdu	object.	  This structure contains
       information that describes a transaction that will be per-
       formed over an open session.

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

       Snmp_read, snmp_select_info, and snmp_timeout  provide  an
       interface for the use of the select(2) system call so that
       SNMP transactions can occur asynchronously.

       Snmp_select_info is given the information that would  have
       been  passed  to select in the absence of SNMP.	For exam-
       ple, 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_select_info, select is called with the
       returned data.  When select returns, snmp_read  should  be
       called  with  the fd_set returned from select to read each
       SNMP  socket  that  has	input.	 If  select  times   out,
       snmp_timeout  should  be	 called to see if the timeout was
       intended for SNMP.

DIAGNOSTICS
       Previous versions of the library	 used  snmp_get_errno  to
       read  the  global  variable snmp_errno which may have held
       the error status within the SNMP	 library.   The	 existing
       method  snmp_perror  should  be	used  to log ASN.1 coding
       errors only.

       The new method snmp_sess_perror	is  provided  to  capture
       errors  that  occur  during the processing of a particular
       SNMP session.  Snmp_sess_perror calls snmp_error	 function
       to  obtain  the "C" library error errno , the SNMP library
       error snmperr , and the SNMP library detailed  error  mes-
       sage that is associated with an error that occurred during
       a given session.

       Note that in all cases except one, snmp_sess_perror should
       be  handed the struct snmp_session * pointer returned from
       snmp_open.  If snmp_open returns a null pointer, pass  the
       INPUT   struct	snmp_session   *  pointer  used	 to  call

			   21 Oct 1999				2

SNMP_API(3)					      SNMP_API(3)

       snmp_open.

       Error return status from snmp_close and snmp_send is indi-
       cated by return of 0.  A successful status will return a 1
       for snmp_close and then	request	 id  of	 the  packet  for
       snmp_send.   Upon successful return from snmp_send the pdu
       will be freed by the library.

       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_PARSE

	 SNMPERR_BAD_VERSION

	 SNMPERR_NOAUTH_DESPRIV

	 SNMPERR_ABORT

	 SNMPERR_UNKNOWN_PDU

	 SNMPERR_TIMEOUT

       A string representation of the error code can be	 obtained
       with  snmp_api_errstring, and a standard error message may

			   21 Oct 1999				3

SNMP_API(3)					      SNMP_API(3)

       be printed using snmp_perror that functions like the  per-
       ror standard routine.

SEE ALSO
       select(2), 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