smi_render - Man Page
SMI data and MIB data rendering routines
Synopsis
#include <smi.h>
char *smiRenderOID(unsigned int oidlen, SmiSubid *oid, int flags);
char *smiRenderValue(SmiValue *smiValuePtr, SmiType *smiTypePtr, int flags);
char *smiRenderNode(SmiNode *smiNodePtr, int flags);
char *smiRenderType(SmiType *smiTypePtr, int flags);
Description
These functions provide can be used to render OIDs, values of MIB data, or names of MIB nodes or types.
The smiRenderOID() function renders an OID given by its length oidlen and its array of sub-identifiers oid*. The flags can be used to control the resulting format, see Formats below.
The smiRenderValue() function renders a MIB data value given by smiValuePtr. An underlying type smiTypePtr may be supplied to support a more human friendly rendering. The flags can be used to control the resulting format, see Formats below.
The smiRenderNode() function renders the name of a node given by smiNodePtr. The flags can be used to control the resulting format, see Formats below.
The smiRenderType() function renders the name of a type given by smiTypePtr. The flags can be used to control the resulting format, see Formats below.
Formats
Each of these functions gets a last argument named flags. This is a logcially or-ed set of flags that can be used to control the format of the rendered items:
- SMI_RENDER_NUMERIC
Allow numeric representation (default).
- SMI_RENDER_NAME
Allow a representation by name(s) if possible.
- SMI_RENDER_QUALIFIED
In case of a name representation, force a module prefix, e.g. IF-MIB::ifIndex instead of just ifIndex.
- SMI_RENDER_FORMAT
In case of smiRenderValue(), force the application of a format specification (e.g. an SMIv2 DISPLAY-HINT) of an underlying type if the smiTypePtr argument is not NULL and this type contains such a format specification.
- SMI_RENDER_PRINTABLE
In case of octet string value rendering, force a printable representation if all octets of the octet string are printable.
- SMI_RENDER_UNKNOWN
Force the return of a string containing SMI_LABEL_UNKNOWN ("<unknown>"), if the rendering would fail. This way, the only condition where NULL can be returned is the lack of memory.
- SMI_RENDER_ALL
Apply a combination of all these flags. This supports the (hopefully) most human friendly representations.
Return Value
All of these functions return a string, if successful, or NULL in case of a rendering failure. See also the SMI_RENDER_UNKNOWN flag above.
See Also
libsmi(3), smi.h
Author
(C) 2002 Frank Strauss, TU Braunschweig, Germany <strauss@ibr.cs.tu-bs.de>