| #ifndef MTEOBJECTS_H |
| #define MTEOBJECTS_H |
| |
| #include "disman/event/mteTrigger.h" |
| |
| /* |
| * Flags relating to the mteObjectsTable |
| */ |
| #define MTE_OBJECT_FLAG_WILD 0x01 /* for mteObjectsIDWildcard */ |
| #define MTE_OBJECT_FLAG_ACTIVE 0x02 /* for mteObjectsEntryStatus */ |
| #define MTE_OBJECT_FLAG_FIXED 0x04 /* for snmpd.conf persistence */ |
| #define MTE_OBJECT_FLAG_VALID 0x08 /* for row creation/undo */ |
| #define MTE_OBJECT_FLAG_NEXT 0x10 /* for appending a new row */ |
| |
| #define MTE_STR1_LEN 32 |
| |
| /* |
| * Data structure for an object row |
| */ |
| struct mteObject { |
| /* |
| * Index values |
| */ |
| char mteOwner[MTE_STR1_LEN+1]; |
| char mteOName[MTE_STR1_LEN+1]; |
| long mteOIndex; |
| |
| /* |
| * Column values |
| */ |
| oid mteObjectID[MAX_OID_LEN]; |
| size_t mteObjectID_len; |
| |
| long flags; |
| }; |
| |
| /* |
| * Container structure for the mteObjectsTable, |
| * and routine to create this. |
| */ |
| extern netsnmp_tdata *objects_table_data; |
| extern void init_objects_table_data(void); |
| |
| void init_mteObjects(void); |
| void mteObjects_removeEntry(netsnmp_tdata_row *row); |
| void mteObjects_removeEntries(const char *owner, char *oname); |
| netsnmp_tdata_row *mteObjects_createEntry( const char *owner, |
| const char *oname, |
| int oindex, int flags); |
| struct mteObject * mteObjects_addOID(const char *owner, const char *oname, int index, |
| const char *oid_name_buf, int wild ); |
| |
| int mteObjects_vblist( netsnmp_variable_list *vblist, |
| char *owner, char *oname, |
| oid *suffix, size_t sfx_len ); |
| int mteObjects_internal_vblist( netsnmp_variable_list *vblist, |
| char *oname, struct mteTrigger *trigger, |
| netsnmp_session *s); |
| |
| #endif /* MTEOBJECTS_H */ |