You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-08-10 01:22:48 +03:00
116 lines
4.9 KiB
C
116 lines
4.9 KiB
C
#ifndef VAR_STRUCT_H
|
|
#define VAR_STRUCT_H
|
|
/*
|
|
* The subtree structure contains a subtree prefix which applies to
|
|
* all variables in the associated variable list.
|
|
*
|
|
* By converting to a tree of subtree structures, entries can
|
|
* now be subtrees of another subtree in the structure. i.e:
|
|
* 1.2
|
|
* 1.2.0
|
|
*/
|
|
|
|
#define UCD_REGISTRY_OID_MAX_LEN 128
|
|
|
|
/*
|
|
* subtree flags
|
|
*/
|
|
#define FULLY_QUALIFIED_INSTANCE 0x01
|
|
#define SUBTREE_ATTACHED 0x02
|
|
|
|
typedef struct netsnmp_subtree_s {
|
|
oid *name_a; /* objid prefix of registered subtree */
|
|
u_char namelen; /* number of subid's in name above */
|
|
oid *start_a; /* objid of start of covered range */
|
|
u_char start_len; /* number of subid's in start name */
|
|
oid *end_a; /* objid of end of covered range */
|
|
u_char end_len; /* number of subid's in end name */
|
|
struct variable *variables; /* pointer to variables array */
|
|
int variables_len; /* number of entries in above array */
|
|
int variables_width; /* sizeof each variable entry */
|
|
char *label_a; /* calling module's label */
|
|
netsnmp_session *session;
|
|
u_char flags;
|
|
u_char priority;
|
|
int timeout;
|
|
struct netsnmp_subtree_s *next; /* List of 'sibling' subtrees */
|
|
struct netsnmp_subtree_s *prev; /* (doubly-linked list) */
|
|
struct netsnmp_subtree_s *children; /* List of 'child' subtrees */
|
|
int range_subid;
|
|
oid range_ubound;
|
|
netsnmp_handler_registration *reginfo; /* new API */
|
|
int cacheid;
|
|
int global_cacheid;
|
|
} netsnmp_subtree;
|
|
|
|
/*
|
|
* This is a new variable structure that doesn't have as much memory
|
|
* tied up in the object identifier. It's elements have also been re-arranged
|
|
* so that the name field can be variable length. Any number of these
|
|
* structures can be created with lengths tailor made to a particular
|
|
* application. The first 5 elements of the structure must remain constant.
|
|
*/
|
|
struct variable1 {
|
|
u_char magic; /* passed to function as a hint */
|
|
u_char type; /* type of variable */
|
|
u_short acl; /* access control list for variable */
|
|
FindVarMethod *findVar; /* function that finds variable */
|
|
u_char namelen; /* length of name below */
|
|
oid name[1]; /* object identifier of variable */
|
|
};
|
|
|
|
struct variable2 {
|
|
u_char magic; /* passed to function as a hint */
|
|
u_char type; /* type of variable */
|
|
u_short acl; /* access control list for variable */
|
|
FindVarMethod *findVar; /* function that finds variable */
|
|
u_char namelen; /* length of name below */
|
|
oid name[2]; /* object identifier of variable */
|
|
};
|
|
|
|
struct variable3 {
|
|
u_char magic; /* passed to function as a hint */
|
|
u_char type; /* type of variable */
|
|
u_short acl; /* access control list for variable */
|
|
FindVarMethod *findVar; /* function that finds variable */
|
|
u_char namelen; /* length of name below */
|
|
oid name[3]; /* object identifier of variable */
|
|
};
|
|
|
|
struct variable4 {
|
|
u_char magic; /* passed to function as a hint */
|
|
u_char type; /* type of variable */
|
|
u_short acl; /* access control list for variable */
|
|
FindVarMethod *findVar; /* function that finds variable */
|
|
u_char namelen; /* length of name below */
|
|
oid name[4]; /* object identifier of variable */
|
|
};
|
|
|
|
struct variable7 {
|
|
u_char magic; /* passed to function as a hint */
|
|
u_char type; /* type of variable */
|
|
u_short acl; /* access control list for variable */
|
|
FindVarMethod *findVar; /* function that finds variable */
|
|
u_char namelen; /* length of name below */
|
|
oid name[7]; /* object identifier of variable */
|
|
};
|
|
|
|
struct variable8 {
|
|
u_char magic; /* passed to function as a hint */
|
|
u_char type; /* type of variable */
|
|
u_short acl; /* access control list for variable */
|
|
FindVarMethod *findVar; /* function that finds variable */
|
|
u_char namelen; /* length of name below */
|
|
oid name[8]; /* object identifier of variable */
|
|
};
|
|
|
|
struct variable13 {
|
|
u_char magic; /* passed to function as a hint */
|
|
u_char type; /* type of variable */
|
|
u_short acl; /* access control list for variable */
|
|
FindVarMethod *findVar; /* function that finds variable */
|
|
u_char namelen; /* length of name below */
|
|
oid name[13]; /* object identifier of variable */
|
|
};
|
|
#endif /* VAR_STRUCT_H */
|