net-snmp 5.7
Data Structures | Typedefs | Enumerations | Functions | Variables
mib parsing and datatype manipulation routines.
The Net-SNMP library

Data Structures

struct  _PrefixList
struct  parse_hints

Typedefs

typedef struct _PrefixListPrefixListPtr
typedef struct _PrefixList PrefixList

Enumerations

enum  inet_address_type {
  IPV4 = 1, IPV6 = 2, IPV4Z = 3, IPV6Z = 4,
  DNS = 16
}

Functions

int _sprint_hexstring_line (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const u_char *cp, size_t line_len)
 Prints a hexadecimal string into a buffer.
int sprint_realloc_hexstring (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const u_char *cp, size_t len)
int sprint_realloc_asciistring (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const u_char *cp, size_t len)
 Prints an ascii string into a buffer.
int sprint_realloc_octet_string (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints an octet string into a buffer.
int sprint_realloc_counter64 (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints a counter into a buffer.
int sprint_realloc_opaque (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints an object identifier into a buffer.
int sprint_realloc_object_identifier (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints an object identifier into a buffer.
int sprint_realloc_timeticks (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints a timetick variable into a buffer.
int sprint_realloc_hinted_integer (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, long val, const char decimaltype, const char *hint, const char *units)
 Prints an integer according to the hint into a buffer.
int sprint_realloc_integer (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints an integer into a buffer.
int sprint_realloc_uinteger (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints an unsigned integer into a buffer.
int sprint_realloc_gauge (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints a gauge value into a buffer.
int sprint_realloc_counter (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints a counter value into a buffer.
int sprint_realloc_networkaddress (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints a network address into a buffer.
int sprint_realloc_ipaddress (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints an ip-address into a buffer.
int sprint_realloc_null (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints a null value into a buffer.
int sprint_realloc_bitstring (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Prints a bit string into a buffer.
int sprint_realloc_nsapaddress (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int sprint_realloc_badtype (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Fallback routine for a bad type, prints "Variable has bad type" into a buffer.
int sprint_realloc_by_type (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
 Universal print routine, prints a variable into a buffer according to the variable type.
struct treeget_tree_head (void)
 Retrieves the tree head.
char * snmp_out_toggle_options (char *options)
void snmp_out_toggle_options_usage (const char *lead, FILE *outf)
char * snmp_in_options (char *optarg, int argc, char *const *argv)
char * snmp_in_toggle_options (char *options)
void snmp_in_toggle_options_usage (const char *lead, FILE *outf)
 Prints out a help usage for the in* toggle options.
void register_mib_handlers (void)
void netsnmp_set_mib_directory (const char *dir)
char * netsnmp_get_mib_directory (void)
void netsnmp_fixup_mib_directory (void)
void netsnmp_init_mib (void)
 Initialises the mib reader.
void init_mib (void)
int _mibindex_add (const char *dirname, int i)
void netsnmp_mibindex_load (void)
char * netsnmp_mibindex_lookup (const char *dirname)
FILE * netsnmp_mibindex_new (const char *dirname)
void shutdown_mib (void)
 Unloads all mibs.
void print_mib (FILE *fp)
 Prints the MIBs to the file fp.
void print_ascii_dump (FILE *fp)
void set_function (struct tree *subtree)
 Set's the printing function printomat in a subtree according it's type.
int read_objid (const char *input, oid *output, size_t *out_len)
 Reads an object identifier from an input string into internal OID form.
void netsnmp_sprint_realloc_objid (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, int *buf_overflow, const oid *objid, size_t objidlen)
struct treenetsnmp_sprint_realloc_objid_tree (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, int *buf_overflow, const oid *objid, size_t objidlen)
int sprint_realloc_objid (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const oid *objid, size_t objidlen)
int snprint_objid (char *buf, size_t buf_len, const oid *objid, size_t objidlen)
void print_objid (const oid *objid, size_t objidlen)
 Prints an oid to stdout.
void fprint_objid (FILE *f, const oid *objid, size_t objidlen)
 Prints an oid to a file descriptor.
int sprint_realloc_variable (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const oid *objid, size_t objidlen, const netsnmp_variable_list *variable)
int snprint_variable (char *buf, size_t buf_len, const oid *objid, size_t objidlen, const netsnmp_variable_list *variable)
void print_variable (const oid *objid, size_t objidlen, const netsnmp_variable_list *variable)
 Prints a variable to stdout.
void fprint_variable (FILE *f, const oid *objid, size_t objidlen, const netsnmp_variable_list *variable)
 Prints a variable to a file descriptor.
int sprint_realloc_value (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, const oid *objid, size_t objidlen, const netsnmp_variable_list *variable)
int snprint_value (char *buf, size_t buf_len, const oid *objid, size_t objidlen, const netsnmp_variable_list *variable)
void print_value (const oid *objid, size_t objidlen, const netsnmp_variable_list *variable)
void fprint_value (FILE *f, const oid *objid, size_t objidlen, const netsnmp_variable_list *variable)
int build_oid_segment (netsnmp_variable_list *var)
 Takes the value in VAR and turns it into an OID segment in var->name.
int build_oid_noalloc (oid *in, size_t in_len, size_t *out_len, oid *prefix, size_t prefix_len, netsnmp_variable_list *indexes)
int build_oid (oid **out, size_t *out_len, oid *prefix, size_t prefix_len, netsnmp_variable_list *indexes)
int parse_oid_indexes (oid *oidIndex, size_t oidLen, netsnmp_variable_list *data)
int parse_one_oid_index (oid **oidStart, size_t *oidLen, netsnmp_variable_list *data, int complete)
int dump_realloc_oid_to_inetaddress (const int addr_type, const oid *objid, size_t objidlen, u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, char quotechar)
int dump_realloc_oid_to_string (const oid *objid, size_t objidlen, u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, char quotechar)
void _oid_finish_printing (const oid *objid, size_t objidlen, u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, int *buf_overflow)
struct treeget_tree (const oid *objid, size_t objidlen, struct tree *subtree)
void print_description (oid *objid, size_t objidlen, int width)
 Prints on oid description on stdout.
void fprint_description (FILE *f, oid *objid, size_t objidlen, int width)
 Prints on oid description into a file descriptor.
int snprint_description (char *buf, size_t buf_len, oid *objid, size_t objidlen, int width)
int sprint_realloc_description (u_char **buf, size_t *buf_len, size_t *out_len, int allow_realloc, oid *objid, size_t objidlen, int width)
int get_module_node (const char *fname, const char *module, oid *objid, size_t *objidlen)
int get_wild_node (const char *name, oid *objid, size_t *objidlen)
int get_node (const char *name, oid *objid, size_t *objidlen)
void clear_tree_flags (register struct tree *tp)
void print_oid_report (FILE *fp)
void print_oid_report_enable_labeledoid (void)
void print_oid_report_enable_oid (void)
void print_oid_report_enable_suffix (void)
void print_oid_report_enable_symbolic (void)
void print_oid_report_enable_mibchildoid (void)
char * uptime_string (u_long timeticks, char *buf)
 Converts timeticks to hours, minutes, seconds string.
char * uptime_string_n (u_long timeticks, char *buf, size_t buflen)
oid * snmp_parse_oid (const char *argv, oid *root, size_t *rootlen)
 Given a string, parses an oid out of it (if possible).
const char * parse_octet_hint (const char *hint, const char *value, unsigned char **new_val, int *new_val_len)
u_char mib_to_asn_type (int mib_type)
int netsnmp_str2oid (const char *S, oid *O, int L)
 Converts a string to its OID form.
int netsnmp_oid2chars (char *C, int L, const oid *O)
 Converts an OID to its character form.
int netsnmp_oid2str (char *S, int L, oid *O)
 Converts an OID to its string form.
int snprint_by_type (char *buf, size_t buf_len, netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_hexstring (char *buf, size_t buf_len, const u_char *cp, size_t len)
int snprint_asciistring (char *buf, size_t buf_len, const u_char *cp, size_t len)
int snprint_octet_string (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_opaque (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_object_identifier (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_timeticks (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_hinted_integer (char *buf, size_t buf_len, long val, const char *hint, const char *units)
int snprint_integer (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_uinteger (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_gauge (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_counter (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_networkaddress (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_ipaddress (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_null (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_bitstring (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_nsapaddress (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_counter64 (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)
int snprint_badtype (char *buf, size_t buf_len, const netsnmp_variable_list *var, const struct enum_list *enums, const char *hint, const char *units)

Variables

PrefixList mib_prefixes []
char ** _mibindexes = NULL

Function Documentation

int _sprint_hexstring_line ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const u_char *  cp,
size_t  line_len 
)

Prints a hexadecimal string into a buffer.

The characters pointed by *cp are encoded as hexadecimal string.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufaddress of the buffer to print to.
buf_lenaddress to an integer containing the size of buf.
out_lenincremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
cpthe array of characters to encode.
line_lenthe array length of cp.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 299 of file mib.c.

int build_oid ( oid **  out,
size_t *  out_len,
oid *  prefix,
size_t  prefix_len,
netsnmp_variable_list indexes 
)

xxx-rks: should free previous value?

Definition at line 3764 of file mib.c.

int build_oid_segment ( netsnmp_variable_list var)

Takes the value in VAR and turns it into an OID segment in var->name.

Parameters:
varThe variable.
Returns:
SNMPERR_SUCCESS or SNMPERR_GENERR

Definition at line 3630 of file mib.c.

void fprint_description ( FILE *  f,
oid *  objid,
size_t  objidlen,
int  width 
)

Prints on oid description into a file descriptor.

Parameters:
fThe file descriptor to print to.
objidThe object identifier.
objidlenThe object id length.
widthNumber of subidentifiers.

Definition at line 4639 of file mib.c.

void fprint_objid ( FILE *  f,
const oid *  objid,
size_t  objidlen 
)

Prints an oid to a file descriptor.

Parameters:
fThe file descriptor to print to.
objidThe oid to print
objidlenThe length of oidid.

Definition at line 3348 of file mib.c.

void fprint_variable ( FILE *  f,
const oid *  objid,
size_t  objidlen,
const netsnmp_variable_list variable 
)

Prints a variable to a file descriptor.

Parameters:
fThe file descriptor to print to.
objidThe object id.
objidlenThe length of teh object id.
variableThe variable to print.

Definition at line 3504 of file mib.c.

struct tree* get_tree_head ( void  ) [read]

Retrieves the tree head.

Returns:
the tree head.

Definition at line 2060 of file mib.c.

int get_wild_node ( const char *  name,
oid *  objid,
size_t *  objidlen 
)
See also:
comments on find_best_tree_node for usage after first time.

Definition at line 5680 of file mib.c.

void netsnmp_fixup_mib_directory ( void  )

swap in the new value and repeat

Definition at line 2525 of file mib.c.

char* netsnmp_get_mib_directory ( void  )

Check if the environment variable is set

Not set use hard coded path

Definition at line 2478 of file mib.c.

void netsnmp_init_mib ( void  )

Initialises the mib reader.

Reads in all settings from the environment.

Definition at line 2572 of file mib.c.

int netsnmp_oid2chars ( char *  C,
int  L,
const oid *  O 
)

Converts an OID to its character form.

in example 5 . 1 . 2 . 3 . 4 . 5 = 12345

Parameters:
CThe character buffer.
LThe length of the buffer.
OThe oid.
Returns:
0 on Sucess, 1 on failure.

length

Definition at line 6462 of file mib.c.

int netsnmp_oid2str ( char *  S,
int  L,
oid *  O 
)

Converts an OID to its string form.

in example 5 . 'h' . 'e' . 'l' . 'l' . 'o' = "hello\0" (null terminated)

Parameters:
SThe character string buffer.
LThe length of the string buffer.
OThe oid.
Returns:
0 on Sucess, 1 on failure.

Definition at line 6490 of file mib.c.

void netsnmp_set_mib_directory ( const char *  dir)

New dir starts with '+', thus we add it.

If dir starts with '+' skip '+' it.

set_string calls strdup, so if we allocated memory, free it

Definition at line 2423 of file mib.c.

int netsnmp_str2oid ( const char *  S,
oid *  O,
int  L 
)

Converts a string to its OID form.

in example "hello" = 5 . 'h' . 'e' . 'l' . 'l' . 'o'

Parameters:
SThe string.
OThe oid.
LThe length of the oid.
Returns:
0 on Sucess, 1 on failure.

Definition at line 6427 of file mib.c.

void print_description ( oid *  objid,
size_t  objidlen,
int  width 
)

Prints on oid description on stdout.

See also:
fprint_description

Definition at line 4623 of file mib.c.

void print_mib ( FILE *  fp)

Prints the MIBs to the file fp.

Parameters:
fpThe file descriptor to print to.

Definition at line 2923 of file mib.c.

void print_objid ( const oid *  objid,
size_t  objidlen 
)

Prints an oid to stdout.

Parameters:
objidThe oid to print
objidlenThe length of oidid.

Definition at line 3334 of file mib.c.

void print_variable ( const oid *  objid,
size_t  objidlen,
const netsnmp_variable_list variable 
)

Prints a variable to stdout.

Parameters:
objidThe object id.
objidlenThe length of teh object id.
variableThe variable to print.

Definition at line 3488 of file mib.c.

int read_objid ( const char *  input,
oid *  output,
size_t *  out_len 
)

Reads an object identifier from an input string into internal OID form.

When called, out_len must hold the maximum length of the output array.

Parameters:
inputthe input string.
outputthe oid wirte.
out_lennumber of subid's in output.
Returns:
1 if successful.

If an error occurs, this function returns 0 and MAY set snmp_errno. snmp_errno is NOT set if SET_SNMP_ERROR evaluates to nothing. This can make multi-threaded use a tiny bit more robust.

Definition at line 3022 of file mib.c.

void set_function ( struct tree subtree)

Set's the printing function printomat in a subtree according it's type.

Parameters:
subtreeThe subtree to set.

Definition at line 2945 of file mib.c.

void shutdown_mib ( void  )

Unloads all mibs.

Definition at line 2889 of file mib.c.

void snmp_in_toggle_options_usage ( const char *  lead,
FILE *  outf 
)

Prints out a help usage for the in* toggle options.

Parameters:
leadThe lead to print for every line.
outfThe file descriptor to write to.

Definition at line 2333 of file mib.c.

oid* snmp_parse_oid ( const char *  argv,
oid *  root,
size_t *  rootlen 
)

Given a string, parses an oid out of it (if possible).

It will try to parse it based on predetermined configuration if present or by every method possible otherwise. If a suffix has been registered using NETSNMP_DS_LIB_OIDSUFFIX, it will be appended to the input string before processing.

Parameters:
argvThe OID to string parse
rootAn OID array where the results are stored.
rootlenThe max length of the array going in and the data length coming out.
Returns:
The root oid pointer if successful, or NULL otherwise.

Definition at line 6030 of file mib.c.

int sprint_realloc_asciistring ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const u_char *  cp,
size_t  len 
)

Prints an ascii string into a buffer.

The characters pointed by *cp are encoded as an ascii string.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufaddress of the buffer to print to.
buf_lenaddress to an integer containing the size of buf.
out_lenincremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
cpthe array of characters to encode.
lenthe array length of cp.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 395 of file mib.c.

int sprint_realloc_badtype ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Fallback routine for a bad type, prints "Variable has bad type" into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1945 of file mib.c.

int sprint_realloc_bitstring ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints a bit string into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1806 of file mib.c.

int sprint_realloc_by_type ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Universal print routine, prints a variable into a buffer according to the variable type.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1980 of file mib.c.

int sprint_realloc_counter ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints a counter value into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1573 of file mib.c.

int sprint_realloc_counter64 ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints a counter into a buffer.

The variable var is encoded as a counter value.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 889 of file mib.c.

int sprint_realloc_gauge ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints a gauge value into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1500 of file mib.c.

int sprint_realloc_hinted_integer ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
long  val,
const char  decimaltype,
const char *  hint,
const char *  units 
)

Prints an integer according to the hint into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
valThe variable to encode.
decimaltypeThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may _NOT_ be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1226 of file mib.c.

int sprint_realloc_integer ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints an integer into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1300 of file mib.c.

int sprint_realloc_ipaddress ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints an ip-address into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1702 of file mib.c.

int sprint_realloc_networkaddress ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints a network address into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1636 of file mib.c.

int sprint_realloc_null ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints a null value into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1762 of file mib.c.

int sprint_realloc_object_identifier ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints an object identifier into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1082 of file mib.c.

int sprint_realloc_octet_string ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints an octet string into a buffer.

The variable var is encoded as octet string.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 455 of file mib.c.

int sprint_realloc_opaque ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints an object identifier into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 992 of file mib.c.

int sprint_realloc_timeticks ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints a timetick variable into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1152 of file mib.c.

int sprint_realloc_uinteger ( u_char **  buf,
size_t *  buf_len,
size_t *  out_len,
int  allow_realloc,
const netsnmp_variable_list var,
const struct enum_list enums,
const char *  hint,
const char *  units 
)

Prints an unsigned integer into a buffer.

If allow_realloc is true the buffer will be (re)allocated to fit in the needed size. (Note: *buf may change due to this.)

Parameters:
bufAddress of the buffer to print to.
buf_lenAddress to an integer containing the size of buf.
out_lenIncremented by the number of characters printed.
allow_reallocif not zero reallocate the buffer to fit the needed size.
varThe variable to encode.
enumsThe enumeration ff this variable is enumerated. may be NULL.
hintContents of the DISPLAY-HINT clause of the MIB. See RFC 1903 Section 3.1 for details. may be NULL.
unitsContents of the UNITS clause of the MIB. may be NULL.
Returns:
1 on success, or 0 on failure (out of memory, or buffer to small when not allowed to realloc.)

Definition at line 1403 of file mib.c.

char* uptime_string ( u_long  timeticks,
char *  buf 
)

Converts timeticks to hours, minutes, seconds string.

Parameters:
timeticksThe timeticks to convert.
bufBuffer to write to, has to be at least 40 Bytes large.
Returns:
The buffer
See also:
uptimeString

Definition at line 6002 of file mib.c.


Variable Documentation

PrefixList mib_prefixes[]
Initial value:
 {
    {&Standard_Prefix[0]},      
    {".iso.org.dod.internet.mgmt.mib-2"},
    {".iso.org.dod.internet.experimental"},
    {".iso.org.dod.internet.private"},
    {".iso.org.dod.internet.snmpParties"},
    {".iso.org.dod.internet.snmpSecrets"},
    {NULL, 0}                   
}

Definition at line 188 of file mib.c.