various PDU processing routines(3)

NAME
various PDU processing routines -

  Defines
#define BSD4_2
#define NFDBITS (sizeof(fd_mask) * NBBY) /* bits per mask */
#define FD_SET(n, p) ((p)->fds_bits[(n)/NFDBITS] |= (1 << ((n) % NFDBITS)))
#define FD_CLR(n, p) ((p)->fds_bits[(n)/NFDBITS] &= ~(1 << ((n) % NFDBITS)))
#define FD_ISSET(n, p) ((p)->fds_bits[(n)/NFDBITS] & (1 << ((n) % NFDBITS)))
#define FD_ZERO(p) memset((p), 0, sizeof(*(p)))

  Typedefs
typedef long fd_mask

  Functions
netsnmp_pdu * snmp_pdu_create (int command)
netsnmp_variable_list * snmp_add_null_var (netsnmp_pdu *pdu, const oid *name, size_t name_length)
int snmp_clone_var (netsnmp_variable_list *var, netsnmp_variable_list *newvar)
int snmp_clone_mem (void **dstPtr, void *srcPtr, unsigned len)
void snmp_reset_var_buffers (netsnmp_variable_list *var)
netsnmp_variable_list * snmp_clone_varbind (netsnmp_variable_list *varlist)
netsnmp_pdu * snmp_clone_pdu (netsnmp_pdu *pdu)
netsnmp_pdu * snmp_split_pdu (netsnmp_pdu *pdu, int skip_count, int copy_count)
netsnmp_pdu * snmp_fix_pdu (netsnmp_pdu *pdu, int command)
unsigned long snmp_varbind_len (netsnmp_pdu *pdu)
int snmp_set_var_objid (netsnmp_variable_list *vp, const oid *objid, size_t name_length)
int snmp_set_var_typed_value (netsnmp_variable_list *newvar, u_char type, const u_char *val_str, size_t val_len)
snmp_set_var_typed_value is used to set data into the netsnmp_variable_list structure.
int count_varbinds (netsnmp_variable_list *var_ptr)
int count_varbinds_of_type (netsnmp_variable_list *var_ptr, u_char type)
netsnmp_variable_list * find_varbind_of_type (netsnmp_variable_list *var_ptr, u_char type)
int snmp_set_var_value (netsnmp_variable_list *newvar, const u_char *val_str, size_t val_len)
void snmp_replace_var_types (netsnmp_variable_list *vbl, u_char old_type, u_char new_type)
void snmp_reset_var_types (netsnmp_variable_list *vbl, u_char new_type)
int snmp_synch_response_cb (netsnmp_session *ss, netsnmp_pdu *pdu, netsnmp_pdu **response, snmp_callback pcb)
int snmp_synch_response (netsnmp_session *ss, netsnmp_pdu *pdu, netsnmp_pdu **response)
int snmp_sess_synch_response (void *sessp, netsnmp_pdu *pdu, netsnmp_pdu **response)
const char * snmp_errstring (int errstat)

  Variables
const char * error_string [19]

Function Documentation

  int snmp_set_var_typed_value (netsnmp_variable_list * newvar, u_char type, const u_char * val_str, size_t val_len)

snmp_set_var_typed_value is used to set data into the netsnmp_variable_list structure. Used to return data to the snmp request via the netsnmp_request_info structure's requestvb pointer.

Parameters:
    newvar the structure gets populated with the given data, type, val_str, and val_len.
    type is the asn data type to be copied
    val_str is a buffer containing the value to be copied into the newvar structure.
    val_len the length of val_str

Returns:
    returns 0 on success and 1 on a malloc error

Examples:
delayed_instance.c.

Definition at line 670 of file snmp_client.c.

References variable_list::type.

Referenced by check_getnext_results(), handle_pdu(), netsnmp_check_getnext_reply(), netsnmp_old_api_helper(), netsnmp_table_build_result(), and netsnmp_table_data_build_result().

Variable Documentation

  const char* error_string[19]

Initial value:.nf
 {
    '(noError) No Error',
    '(tooBig) Response message would have been too large.',
    '(noSuchName) There is no such variable name in this MIB.',
    '(badValue) The value given has the wrong type or length.',
    '(readOnly) The two parties used do not have access to use the specified SNMP PDU.',
    '(genError) A general failure occured',
    'noAccess',
    'wrongType (The set datatype does not match the data type the agent expects)',
    'wrongLength (The set value has an illegal length from what the agent expects)',
    'wrongEncoding',
    'wrongValue (The set value is illegal or unsupported in some way)',
    'noCreation (that table does not support row creation)',
    'inconsistentValue (The set value is illegal or unsupported in some way)',
    'resourceUnavailable (This is likely a out-of-memory failure within the agent)',
    'commitFailed',
    'undoFailed',
    'authorizationError (access denied to that object)',
    'notWritable (that object does not support modification)',
    'inconsistentName' }

Definition at line 926 of file snmp_client.c.