diff options
Diffstat (limited to 'agent/mibgroup/sctp-mib/sctpScalars_common.h')
-rw-r--r-- | agent/mibgroup/sctp-mib/sctpScalars_common.h | 148 |
1 files changed, 148 insertions, 0 deletions
diff --git a/agent/mibgroup/sctp-mib/sctpScalars_common.h b/agent/mibgroup/sctp-mib/sctpScalars_common.h new file mode 100644 index 0000000..7e5ceb5 --- /dev/null +++ b/agent/mibgroup/sctp-mib/sctpScalars_common.h @@ -0,0 +1,148 @@ +#ifndef SCTP_SCALARS_COMMON_H +#define SCTP_SCALARS_COMMON_H + +/* + * Define OIDs + */ +#define SCTP_CURRESTAB 1 +#define SCTP_ACTIVEESTABS 2 +#define SCTP_PASSIVEESTABS 3 +#define SCTP_ABORTEDS 4 +#define SCTP_SHUTDOWNS 5 +#define SCTP_OUTOFBLUES 6 +#define SCTP_CHECKSUMERRORS 7 +#define SCTP_OUTCTRLCHUNKS 8 +#define SCTP_OUTORDERCHUNKS 9 +#define SCTP_OUTUNORDERCHUNKS 10 +#define SCTP_INCTRLCHUNKS 11 +#define SCTP_INORDERCHUNKS 12 +#define SCTP_INUNORDERCHUNKS 13 +#define SCTP_FRAGUSRMSGS 14 +#define SCTP_REASMUSRMSGS 15 +#define SCTP_OUTSCTPPACKS 16 +#define SCTP_INSCTPPACKS 17 +#define SCTP_DISCONTINUITYTIME 18 + +#define SCTP_RTOALGORITHM 1 +#define SCTP_RTOMIN 2 +#define SCTP_RTOMAX 3 +#define SCTP_RTOINITIAL 4 +#define SCTP_MAXASSOCS 5 +#define SCTP_VALCOOKIELIFE 6 +#define SCTP_MAXINITRETR 7 + +/* + * Define cache timeouts + */ +#define SCTP_STATS_CACHE_TIMEOUT 30 +#define SCTP_PARAMS_CACHE_TIMEOUT 30 + +/* + * Structure to hold sctpStats + */ +typedef struct netsnmp_sctp_stats_s { + u_int curr_estab; + u_int active_estabs; + u_int passive_estabs; + u_int aborteds; + u_int shutdowns; + u_int out_of_blues; + u_int checksum_errors; + struct counter64 out_ctrl_chunks; + struct counter64 out_order_chunks; + struct counter64 out_unorder_chunks; + struct counter64 in_ctrl_chunks; + struct counter64 in_order_chunks; + struct counter64 in_unorder_chunks; + struct counter64 frag_usr_msgs; + struct counter64 reasm_usr_msgs; + struct counter64 out_sctp_packs; + struct counter64 in_sctp_packs; + u_long discontinuity_time; +} netsnmp_sctp_stats; + +/* + * Enums for sctpParams + */ +#define NETSNMP_SCTP_ALGORITHM_OTHER 1 +#define NETSNMP_SCTP_ALGORITHM_VANJ 2 + +/* + * Structure to hold sctpParams + */ +typedef struct netsnmp_sctp_params_s { + u_int rto_algorithm; + u_int rto_min; + u_int rto_max; + u_int rto_initial; + int max_assocs; + u_int val_cookie_life; + u_int max_init_retr; +} netsnmp_sctp_params; + + +/* + * sctpStats cached values. + * Will be used to reconstruct 64-bit counters when the underlying platform + * provides only 32-bit ones. + */ +extern netsnmp_sctp_stats sctp_stats; + +/* + * sctpParams cached values. + */ +extern netsnmp_sctp_params sctp_params; + +Netsnmp_Node_Handler sctp_stats_handler; +Netsnmp_Node_Handler sctp_params_handler; + +/* + * function declarations + */ + + +/* + * ======================================================= + * Platform independent functions. + * Mostly just wrappers around the platform dependent ones. + * ======================================================= + */ +extern void netsnmp_access_sctp_stats_init(void); +extern NetsnmpCacheLoad netsnmp_access_sctp_stats_load; +extern NetsnmpCacheFree netsnmp_access_sctp_stats_free; + +extern void netsnmp_access_sctp_params_init(void); +extern NetsnmpCacheLoad netsnmp_access_sctp_params_load; +extern NetsnmpCacheFree netsnmp_access_sctp_params_free; + +/* + * ======================================================= + * Platform dependent functions. + * These do the real work. + * ======================================================= + */ + +/* + * Initialize patform dependent part of sctpStats. + */ +extern void netsnmp_access_sctp_stats_arch_init(void); + +/* + * Load the sctpStats from underlying platform. The caller will reconstruct + * 64-bit counters if the platform provided 32-bit ones only. + */ +extern int netsnmp_access_sctp_stats_arch_load(netsnmp_sctp_stats * + sctp_stats); + +/* + * Initialize patform dependent part of sctpParams. + */ +extern void netsnmp_access_sctp_params_arch_init(void); + +/* + * Load the sctpParams. + */ +extern int netsnmp_access_sctp_params_arch_load(netsnmp_sctp_params * + sctp_params); + +#endif /* SCTP_SCALARS_COMMON_H */ |