Blame lib/smi_node.3.in

Packit Service 9ccfef
.\"
Packit Service 9ccfef
.\" $Id: smi_node.3.in 5762 2006-08-17 08:10:17Z schoenw $
Packit Service 9ccfef
.\"
Packit Service 9ccfef
.TH smi_node 3  "March 30, 2004" "IBR" "SMI Management Information Library"
Packit Service 9ccfef
.SH NAME
Packit Service 9ccfef
.\" START OF MAN PAGE COPIES
Packit Service 9ccfef
smiGetNode,
Packit Service 9ccfef
smiGetNodeByOID,
Packit Service 9ccfef
smiGetFirstNode,
Packit Service 9ccfef
smiGetNextNode,
Packit Service 9ccfef
smiGetParentNode,
Packit Service 9ccfef
smiGetRelatedNode,
Packit Service 9ccfef
smiGetFirstChildNode,
Packit Service 9ccfef
smiGetNextChildNode,
Packit Service 9ccfef
smiGetNodeModule,
Packit Service 9ccfef
smiGetNodeType,
Packit Service 9ccfef
smiGetNodeLine,
Packit Service 9ccfef
smiGetFirstElement,
Packit Service 9ccfef
smiGetNextElement,
Packit Service 9ccfef
smiGetElementNode,
Packit Service 9ccfef
smiGetFirstOption,
Packit Service 9ccfef
smiGetNextOption,
Packit Service 9ccfef
smiGetOptionNode,
Packit Service 9ccfef
smiGetFirstRefinement,
Packit Service 9ccfef
smiGetNextRefinement,
Packit Service 9ccfef
smiGetRefinementModule,
Packit Service 9ccfef
smiGetRefinementNode,
Packit Service 9ccfef
smiGetRefinementType,
Packit Service 9ccfef
smiGetRefinementWriteType
Packit Service 9ccfef
.\" END OF MAN PAGE COPIES
Packit Service 9ccfef
\- SMI type
Packit Service 9ccfef
information routines
Packit Service 9ccfef
.SH SYNOPSIS
Packit Service 9ccfef
.nf
Packit Service 9ccfef
.B #include <smi.h>
Packit Service 9ccfef
.RS
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiNode *smiGetNode(SmiModule *" smiModulePtr ", char *" node );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiNode *smiGetNodeByOID(unsigned int " oidlen ", SmiSubid " oid[] );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiNode *smiGetFirstNode(SmiModule *" smiModulePtr ", SmiNodekind " kinds );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiNode *smiGetNextNode(SmiNode *" smiNodePtr ", SmiNodekind " kinds );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiNode *smiGetParentNode(SmiNode *" smiNodePtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiNode *smiGetRelatedNode(SmiNode *" smiNodePtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiNode *smiGetFirstChildNode(SmiNode *" smiNodePtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiNode *smiGetNextChildNode(SmiNode *" smiNodePtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiModule *smiGetNodeModule(SmiNode *" smiNodePtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiType *smiGetNodeType(SmiNode *" smiNodePtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "int smiGetNodeLine(SmiNode *" smiNodePtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiElement *smiGetFirstElement(SmiNode *" smiNodePtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiElement *smiGetNextElement(SmiElement *" smiElementPtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiNode *smiGetElementNode(SmiElement *" smiElementPtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiOption *smiGetFirstOption(SmiNode *" smiComplianceNodePtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiOption *smiGetNextOption(SmiOption *" smiOptionPtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiNode *smiGetOptionNode(SmiOption *" smiOptionPtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiRefinement *smiGetFirstRefinement(SmiNode *" smiComplianceNodePtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiRefinement *smiGetNextRefinement(SmiRefinement *" smiRefinementPtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiNode *smiGetRefinementNode(SmiRefinement *" smiRefinementPtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiType *smiGetRefinementType(SmiRefinement *" smiRefinementPtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
.sp
Packit Service 9ccfef
.BI "SmiType *smiGetRefinementWriteType(SmiRefinement *" smiRefinementPtr );
Packit Service 9ccfef
.RE
Packit Service 9ccfef
Packit Service 9ccfef
typedef struct SmiNode {
Packit Service 9ccfef
    SmiIdentifier       name;
Packit Service 9ccfef
    int                 oidlen;
Packit Service 9ccfef
    SmiSubid            *oid;         /* array of length oidlen */
Packit Service 9ccfef
    SmiDecl             decl;
Packit Service 9ccfef
    SmiAccess           access;
Packit Service 9ccfef
    SmiStatus           status;
Packit Service 9ccfef
    char                *format;
Packit Service 9ccfef
    SmiValue            value;
Packit Service 9ccfef
    char                *units;
Packit Service 9ccfef
    char                *description;
Packit Service 9ccfef
    char                *reference;
Packit Service 9ccfef
    SmiIndexkind        indexkind;
Packit Service 9ccfef
    int                 implied;
Packit Service 9ccfef
    int                 create;
Packit Service 9ccfef
    SmiNodekind         nodekind;
Packit Service 9ccfef
} SmiNode;
Packit Service 9ccfef
Packit Service 9ccfef
typedef struct SmiElement {
Packit Service 9ccfef
    /* no visible attributes */
Packit Service 9ccfef
} SmiElement;
Packit Service 9ccfef
Packit Service 9ccfef
typedef struct SmiOption {
Packit Service 9ccfef
    char                *description;
Packit Service 9ccfef
} SmiOption;
Packit Service 9ccfef
Packit Service 9ccfef
typedef struct SmiRefinement {
Packit Service 9ccfef
    SmiAccess           access;
Packit Service 9ccfef
    char                *description;
Packit Service 9ccfef
} SmiRefinement;
Packit Service 9ccfef
Packit Service 9ccfef
.fi
Packit Service 9ccfef
.SH DESCRIPTION
Packit Service 9ccfef
These functions retrieve information on any SMI node definition in the
Packit Service 9ccfef
object identifier tree, these are ASN.1 object identifier assignments,
Packit Service 9ccfef
MODULE-IDENTITYs, OBJECT-IDENTITYs, OBJECT-TYPEs, NOTIFICATION-TYPEs,
Packit Service 9ccfef
TRAP-TYPEs, OBJECT-GROUPs, NOTIFICATION-GROUPs, MODULE-COMPLIANCEs,
Packit Service 9ccfef
and AGENT-CAPABILITYs in SMIv1/v2 and node, scalar, table,
Packit Service 9ccfef
row, column, notification, group, and compliance statements in SMIng.
Packit Service 9ccfef
.PP
Packit Service 9ccfef
The \fBsmiGetNode()\fP function retrieves a \fBstruct SmiNode\fP that
Packit Service 9ccfef
represents a node of any kind. \fINode\fP may be either a
Packit Service 9ccfef
fully qualified descriptor, a simple node name, or a numerical OID.
Packit Service 9ccfef
Nodes are also found, if \fInode\fP contains an instance identifier
Packit Service 9ccfef
suffix.
Packit Service 9ccfef
If \fIsmiModulePtr\fP is not NULL it used to limit the search to the
Packit Service 9ccfef
given module. If the node is not found, \fBsmiGetNode()\fP returns NULL.
Packit Service 9ccfef
.PP
Packit Service 9ccfef
The \fBsmiGetNodeByOID()\fP function retrieves a \fBstruct SmiNode\fP that
Packit Service 9ccfef
matches the longest prefix of the node that is specified by the
Packit Service 9ccfef
object identifier \fIoid[]\fP with the length \fIoidlen\fP.
Packit Service 9ccfef
If no such node is not found, \fBsmiGetNodeByOID()\fP returns NULL.
Packit Service 9ccfef
.PP
Packit Service 9ccfef
The \fBsmiGetFirstNode()\fP and \fBsmiGetNextNode()\fP functions are
Packit Service 9ccfef
used to iteratively retrieve \fBstruct SmiNode\fPs in tree pre-order.
Packit Service 9ccfef
\fBsmiGetFirstNode()\fP returns the first node defined in the module
Packit Service 9ccfef
specified by \fIsmiModulePtr\fP that is of any kind specified in
Packit Service 9ccfef
the \fIkinds\fP bitset.
Packit Service 9ccfef
Subsequent calls to \fBsmiGetNextNode()\fP return the next node of
Packit Service 9ccfef
any kind specified in the \fIkinds\fP bitset. If there are no
Packit Service 9ccfef
more node definitions in the module, NULL is returned.
Packit Service 9ccfef
.PP
Packit Service 9ccfef
The \fBsmiGetFirstChildNode()\fP and \fBsmiGetNextChildNode()\fP
Packit Service 9ccfef
functions are used to iteratively retrieve \fBstruct SmiNode\fPs that
Packit Service 9ccfef
represent the immediate child nodes of the node specified
Packit Service 9ccfef
by \fIsmiNodePtr\fP passed to the \fBsmiGetFirstChildNode()\fP call.
Packit Service 9ccfef
.PP
Packit Service 9ccfef
The \fBsmiGetParentNode()\fP function is used to retrieve
Packit Service 9ccfef
a \fBstruct SmiNode\fPs that represents the parent node of the node
Packit Service 9ccfef
specified by \fIsmiNodePtr\fP.
Packit Service 9ccfef
.PP
Packit Service 9ccfef
The \fBsmiGetRelatedNode()\fP function is used to retrieve
Packit Service 9ccfef
a \fBstruct SmiNode\fPs that is related to the node specified
Packit Service 9ccfef
by \fIsmiNodePtr\fP. Actually, this is used for SMIv2 table augmentation
Packit Service 9ccfef
entries and similar SMIng constructs.
Packit Service 9ccfef
.PP
Packit Service 9ccfef
The \fBsmiGetNodeModule()\fP function returns the module that defines
Packit Service 9ccfef
the node given by \fIstruct SmiNodePtr\fP.
Packit Service 9ccfef
.PP
Packit Service 9ccfef
The \fBsmiGetNodeType()\fP function returns the type of
Packit Service 9ccfef
the (scalar or columnar) node given by \fIstruct SmiNodePtr\fP.
Packit Service 9ccfef
If \fIstruct SmiNodePtr\fP does not specify a scalar or columnar
Packit Service 9ccfef
node, NULL is returned.
Packit Service 9ccfef
.PP
Packit Service 9ccfef
The \fBsmiGetFirstElement()\fP and \fBsmiGetNextElement()\fP functions are
Packit Service 9ccfef
used to iteratively retrieve \fBstruct SmiElement\fPs that represent
Packit Service 9ccfef
elements of index clauses or notification object lists, groups of object
Packit Service 9ccfef
types or notification types, and mandatory groups of module compliance
Packit Service 9ccfef
statements. The node to which the list belongs has to be specified
Packit Service 9ccfef
by \fIsmiNodePtr\fP. To retrieve the node that is represented by
Packit Service 9ccfef
a \fBstruct SmiElement\fP, the \fBsmiGetElementNode()\fP function has
Packit Service 9ccfef
to be called.
Packit Service 9ccfef
.PP
Packit Service 9ccfef
The \fBsmiGetFirstOption()\fP and \fBsmiGetNextOption()\fP functions are
Packit Service 9ccfef
used to iteratively retrieve \fBstruct SmiOption\fPs that represent
Packit Service 9ccfef
statements on optional (object or notification) groups within the compliance
Packit Service 9ccfef
statement specified by \fIsmiComplianceNodePtr\fP. The group node which is
Packit Service 9ccfef
subject of such a statement can be retrieved by the \fBsmiGetOptionNode()\fP
Packit Service 9ccfef
function.
Packit Service 9ccfef
.PP
Packit Service 9ccfef
Similarly, the \fBsmiGetFirstRefinement()\fP and \fBsmiGetNextRefinement()\fP
Packit Service 9ccfef
functions are used to iteratively retrieve \fBstruct SmiRefinement\fPs that
Packit Service 9ccfef
represent statements on optional object refinements within the compliance
Packit Service 9ccfef
statement specified by \fIsmiComplianceNodePtr\fP. The node which is
Packit Service 9ccfef
subject of such a refinement can be retrieved by
Packit Service 9ccfef
the \fBsmiGetRefinementNode()\fP function. The optional refined type and
Packit Service 9ccfef
write-type of a refinement can be retrieved by
Packit Service 9ccfef
the \fBsmiGetRefinementType()\fP and \fBsmiGetRefinementWriteType()\fP
Packit Service 9ccfef
functions. If they are not present, NULL is returned.
Packit Service 9ccfef
.PP
Packit Service 9ccfef
The \fBsmiGetNodeLine()\fP function returns the line number within the
Packit Service 9ccfef
module where the node specified by \fIsmiNodePtr\fP is defined.
Packit Service 9ccfef
.SH "FILES"
Packit Service 9ccfef
.nf
Packit Service 9ccfef
@includedir@/smi.h    SMI library header file
Packit Service 9ccfef
.fi
Packit Service 9ccfef
.SH "SEE ALSO"
Packit Service 9ccfef
.BR libsmi "(3), "
Packit Service 9ccfef
.BR smi_config "(3), "
Packit Service 9ccfef
.BR smi_type "(3), "
Packit Service 9ccfef
.BR smi_module "(3), "
Packit Service 9ccfef
.BR smi.h
Packit Service 9ccfef
.SH "AUTHOR"
Packit Service 9ccfef
(C) 1999-2004 Frank Strauss, TU Braunschweig, Germany <strauss@ibr.cs.tu-bs.de>
Packit Service 9ccfef
.br