/* * This file was generated by mib2c and is intended for use as a mib module * for the ucd-snmp snmpd agent. */ #ifndef _MIBGROUP_MTETRIGGERTABLE_H #define _MIBGROUP_MTETRIGGERTABLE_H /* * we may use header_complex from the header_complex module */ config_require(header_complex) config_require(utilities/iquery) #ifndef NETSNMP_TRANSPORT_CALLBACK_DOMAIN config_error(disman/mteTriggerTable depends on the Callback transport) #endif /* * our storage structure(s) */ struct mteTriggerTable_data { char *mteOwner; size_t mteOwnerLen; char *mteTriggerName; size_t mteTriggerNameLen; char *mteTriggerComment; size_t mteTriggerCommentLen; char *mteTriggerTest; size_t mteTriggerTestLen; long mteTriggerSampleType; oid *mteTriggerValueID; size_t mteTriggerValueIDLen; long mteTriggerValueIDWildcard; char *mteTriggerTargetTag; size_t mteTriggerTargetTagLen; char *mteTriggerContextName; size_t mteTriggerContextNameLen; long mteTriggerContextNameWildcard; unsigned long mteTriggerFrequency; char *mteTriggerObjectsOwner; size_t mteTriggerObjectsOwnerLen; char *mteTriggerObjects; size_t mteTriggerObjectsLen; long mteTriggerEnabled; long mteTriggerEntryStatus; /* * delta table */ oid *mteTriggerDeltaDiscontinuityID; size_t mteTriggerDeltaDiscontinuityIDLen; long mteTriggerDeltaDiscontinuityIDWildcard; long mteTriggerDeltaDiscontinuityIDType; unsigned long prevDiscoTicks; unsigned long prevUptimeTicks; /* * existence table */ char *mteTriggerExistenceTest; size_t mteTriggerExistenceTestLen; char *mteTriggerExistenceStartup; size_t mteTriggerExistenceStartupLen; char *mteTriggerExistenceObjectsOwner; size_t mteTriggerExistenceObjectsOwnerLen; char *mteTriggerExistenceObjects; size_t mteTriggerExistenceObjectsLen; char *mteTriggerExistenceEventOwner; size_t mteTriggerExistenceEventOwnerLen; char *mteTriggerExistenceEvent; size_t mteTriggerExistenceEventLen; /* * boolean table */ long mteTriggerBooleanComparison; long mteTriggerBooleanValue; long mteTriggerBooleanStartup; char *mteTriggerBooleanObjectsOwner; size_t mteTriggerBooleanObjectsOwnerLen; char *mteTriggerBooleanObjects; size_t mteTriggerBooleanObjectsLen; char *mteTriggerBooleanEventOwner; size_t mteTriggerBooleanEventOwnerLen; char *mteTriggerBooleanEvent; size_t mteTriggerBooleanEventLen; /* * threshold table */ long mteTriggerThresholdStartup; long mteTriggerThresholdRising; long mteTriggerThresholdFalling; long mteTriggerThresholdDeltaRising; long mteTriggerThresholdDeltaFalling; char *mteTriggerThresholdObjectsOwner; size_t mteTriggerThresholdObjectsOwnerLen; char *mteTriggerThresholdObjects; size_t mteTriggerThresholdObjectsLen; char *mteTriggerThresholdRisingEventOwner; size_t mteTriggerThresholdRisingEventOwnerLen; char *mteTriggerThresholdRisingEvent; size_t mteTriggerThresholdRisingEventLen; char *mteTriggerThresholdFallingEventOwner; size_t mteTriggerThresholdFallingEventOwnerLen; char *mteTriggerThresholdFallingEvent; size_t mteTriggerThresholdFallingEventLen; char *mteTriggerThresholdDeltaRisingEventOwner; size_t mteTriggerThresholdDeltaRisingEventOwnerLen; char *mteTriggerThresholdDeltaRisingEvent; size_t mteTriggerThresholdDeltaRisingEventLen; char *mteTriggerThresholdDeltaFallingEventOwner; size_t mteTriggerThresholdDeltaFallingEventOwnerLen; char *mteTriggerThresholdDeltaFallingEvent; size_t mteTriggerThresholdDeltaFallingEventLen; /* * internal variables */ int storageType; unsigned int alarmreg; int lastboolresult; int started; long lastvalue; struct header_complex_index *hc_storage, *hc_storage_old; unsigned long threshold_state; /* * pdu auth contents */ long have_copied_auth_info; long pdu_version; long pdu_securityModel; long pdu_securityLevel; void *pdu_transport; size_t pdu_transportLen; const oid *pdu_tDomain; size_t pdu_tDomainLen; u_char *pdu_community; size_t pdu_community_len; char *pdu_contextName; size_t pdu_contextNameLen; char *pdu_securityName; size_t pdu_securityNameLen; }; struct last_state { long *value; char lastbool; char lastthreshold; }; /* * enum definitions from the covered mib sections */ #define MTETRIGGERTEST_EXISTENCE 0x80 #define MTETRIGGERTEST_BOOLEAN 0x40 #define MTETRIGGERTEST_THRESHOLD 0x20 #define MTETRIGGERSAMPLETYPE_ABSOLUTEVALUE 1 #define MTETRIGGERSAMPLETYPE_DELTAVALUE 2 /* * What's wrong with using the regular TruthValue definitions TV_TRUE * and TV_FALSE (snmp-tc.h) which are up to 77% shorter? */ #define MTETRIGGERVALUEIDWILDCARD_TRUE 1 #define MTETRIGGERVALUEIDWILDCARD_FALSE 2 #define MTETRIGGERCONTEXTNAMEWILDCARD_TRUE 1 #define MTETRIGGERCONTEXTNAMEWILDCARD_FALSE 2 #define MTETRIGGERENABLED_TRUE 1 #define MTETRIGGERENABLED_FALSE 2 #define MTE_NOTSTARTED 0 #define MTE_STARTED 1 #define MTE_THRESHOLD_BEGIN 0 #define MTE_THRESHOLD_HIGH 1 #define MTE_THRESHOLD_LOW 2 /* * Just the first (MTE-specific) groups of errors defined here; * others are numerically equal to the regular SNMP errors. */ #define MTE_FAILURE_LOCALRESOURCELACK -1 #define MTE_FAILURE_BADDESTINATION -2 #define MTE_FAILURE_DESTINATIONUNREACHABLE -3 #define MTE_FAILURE_NORESPONSE -4 #define MTE_FAILURE_BADTYPE -5 #define MTE_FAILURE_SAMPLEOVERRUN -6 extern struct header_complex_index *mteTriggerTableStorage; /* * function prototypes */ void init_mteTriggerTable(void); FindVarMethod var_mteTriggerTable; void parse_mteTriggerTable(const char *, char *); void parse_simple_monitor(const char *, char *); void parse_default_monitors(const char *, char *); SNMPCallback store_mteTriggerTable; netsnmp_pdu *mte_get_response(struct mteTriggerTable_data *, netsnmp_pdu *); #ifndef NETSNMP_NO_WRITE_SUPPORT WriteMethod write_mteTriggerComment; WriteMethod write_mteTriggerTest; WriteMethod write_mteTriggerSampleType; WriteMethod write_mteTriggerValueID; WriteMethod write_mteTriggerValueIDWildcard; WriteMethod write_mteTriggerTargetTag; WriteMethod write_mteTriggerContextName; WriteMethod write_mteTriggerContextNameWildcard; WriteMethod write_mteTriggerFrequency; WriteMethod write_mteTriggerObjectsOwner; WriteMethod write_mteTriggerObjects; WriteMethod write_mteTriggerEnabled; WriteMethod write_mteTriggerEntryStatus; #endif /* !NETSNMP_NO_WRITE_SUPPORT */ void mte_enable_trigger(struct mteTriggerTable_data *item); void mte_disable_trigger(struct mteTriggerTable_data *item); SNMPAlarmCallback mte_run_trigger; #endif /* _MIBGROUP_MTETRIGGERTABLE_H */