DragonFly On-Line Manual Pages
smi_attribute(3) SMI Management Information Library smi_attribute(3)
NAME
smiGetAttribute, smiGetFirstAttribute, smiGetNextAttribute,
smiGetAttributeParentClass, smiGetAttributeParentType,
smiGetFirstUniqueAttribute, smiGetNextUniqueAttribute, smiGetEvent,
smiGetFirstEvent, smiGetNextEvent, smiGetAttributeFirstRange,
smiGetAttributeNextRange, smiGetAttributeFirstNamedNumber,
smiGetAttributeNextNamedNumber - SMI Attribute information routines
SYNOPSIS
#include <smi.h>
SmiAttribute *smiGetAttribute(SmiClass *smiClassPtr, char *name);
SmiAttribute *smiGetFirstAttribute(SmiClass *smiClassPtr);
SmiAttribute *smiGetNextAttribute(SmiAttribute *smiAttributePtr);
SmiType *smiGetAttributeParentType(SmiType *smiAttributePtr);
SmiClass *smiGetAttributeParentClass(SmiType *smiAttributePtr);
SmiAttribute *smiGetFirstUniqueAttribute(SmiClass *smiClassPtr);
SmiAttribute *smiGetNextUniqueAttribute(SmiAttribute *smiAttributePtr);
SmiRange *smiGetAttributeFirstRange(SmiAttribute *smiAttributePtr);
SmiRange *smiGetAttributeNextRange(SmiRange *smiRangePtr);
SmiNamedNumber *smiGetAttributeFirstNamedNumber(SmiAttribute *smiAttributePtr);
SmiNamedNumber *smiGetAttributeNextNamedNumber(SmiNamedNumber *smiNamedNumberPtr);
typedef struct SmiAttribute {
SmiIdentifier name;
SmiDecl decl;
SmiStatus status;
char *description;
char *reference;
} SmiAttribute;
typedef struct SmiRange {
SmiValue minValue;
SmiValue maxValue;
} SmiRange;
typedef struct SmiNamedNumber {
SmiIdentifier name;
SmiValue value;
} SmiNamedNumber;
DESCRIPTION
These functions retrieve information on a SMIng Attribute definition
(SMIng).
smiGetAttribute(SmiClass *smiClassPtr, char *name) returns a pointer to
struct SmiAttribute for the Attribute with the given name in the given
class(smiClassPtr), or NULL if the attribute with the given name does
not exist.
smiGetFirstAttribute(SmiClass *smiClassPtr) and
smiGetNextAttribute(SmiAttribute *smiAttributePtr) are used to iterate
through the attributes of the class given by smiClassPtr. They return a
pointer to struct SmiAttribute that represents an attribute or NULL if
there are no attributes left in the class, or error has occurred.
smiGetAttributeParentClass(SmiAttribute *smiAttributePtr) returns a
pointer to a struct SmiClass, pointing to the parent class of the given
smiAttributePtr, or NULL if the attribute does not reference class.
Note that attributes always have either parent type or parent class.
smiGetAttributeParentType(SmiType *smiAttributePtr) returns a pointer
to a struct SmiType, pointing to the parent type of the given
smiAttributePtr, or NULL if the attribute does not reference type.
Note that attributes always have either parent type or parent class.
smiGetFirstUniqueAttribute(SmiClass *smiClassPtr) and
smiGetNextUniqueAttribute(SmiType *smiAttributePtr) are used to iterate
through the unique attributes of the class given by smiClassPtr. They
return a pointer to struct SmiAttribute that represents a unique
attribute or NULL if there are no unique attributes left in the class,
or error has occurred. This function MUST NOT be used for scalar
classes, so it should only be called after isClassScalar() has returned
0.
smiGetAttributeFirstRange(SmiAttribute *smiAttributePtr), and
smiGetAttributeNextRange(SmiRange *smiRangePtr) are used to iterate
through ranges that restrict number or octet string types. Both
functions return a pointer to the struct SmiRange representing the
range, or NULL if there are no more ranges, or error has occurred.
smiGetAttributeFirstNamedNumber(SmiAttribute *smiAttributePtr) and
smiGetAttributeNextNamedNumber(SmiNamedNumber *smiNamedNumberPtr) are
used to iterate through named numbers of bits or enumerations for
attributes, which reference types, and to retrieve the reference
restriction of a pointer. Both functions return a pointer to the
struct SmiNamedNumber representing the named number, or NULL if there
are no named numbers left, or error has occurred.
smiGetFirstNamedNumber() can be used to retrieve the name of the
identity that is restricting Pointer type, as it is stored as the name
of the first named number.
FILES
${prefix}/include/smi.h SMI library header file
SEE ALSO
libsmi(3), smi_module(3), smi.h
AUTHOR
(C) 2007 Kaloyan Kanev, Jacobs University, Germany <k.kanev@jacobs-
university.de>
February 10, 2007 smi_attribute(3)