#define ISIS_SNMP_ADJ_STATE_UP (3)
#define ISIS_SNMP_ADJ_STATE_FAILED (4)
+static inline uint32_t isis_snmp_adj_state(enum isis_adj_state state)
+{
+ switch (state) {
+ case ISIS_ADJ_UNKNOWN:
+ return ISIS_SNMP_ADJ_STATE_DOWN;
+ case ISIS_ADJ_INITIALIZING:
+ return ISIS_SNMP_ADJ_STATE_INITIALIZING;
+ case ISIS_ADJ_UP:
+ return ISIS_SNMP_ADJ_STATE_UP;
+ case ISIS_ADJ_DOWN:
+ return ISIS_SNMP_ADJ_STATE_FAILED;
+ }
+
+ return 0; /* not reached */
+}
+
#define ISIS_SNMP_ADJ_NEIGHTYPE_IS_L1 (1)
#define ISIS_SNMP_ADJ_NEIGHTYPE_IS_L2 (2)
#define ISIS_SNMP_ADJ_NEIGHTYPE_IS_L1_L2 (3)
#define ISIS_SNMP_ADJ_NEIGHTYPE_UNKNOWN (4)
+static inline uint32_t isis_snmp_adj_neightype(enum isis_system_type type)
+{
+ switch (type) {
+ case ISIS_SYSTYPE_UNKNOWN:
+ case ISIS_SYSTYPE_ES:
+ return ISIS_SNMP_ADJ_NEIGHTYPE_UNKNOWN;
+ case ISIS_SYSTYPE_IS:
+ return ISIS_SNMP_ADJ_NEIGHTYPE_IS_L1_L2;
+ case ISIS_SYSTYPE_L1_IS:
+ return ISIS_SNMP_ADJ_NEIGHTYPE_IS_L1;
+ case ISIS_SYSTYPE_L2_IS:
+ return ISIS_SNMP_ADJ_NEIGHTYPE_IS_L2;
+ }
+
+ return 0; /* not reached */
+}
+
#define ISIS_SNMP_INET_TYPE_V4 (1)
#define ISIS_SNMP_INET_TYPE_V6 (2)
switch (v->magic) {
case ISIS_ISADJ_STATE:
-
- switch (adj->adj_state) {
- case ISIS_ADJ_UNKNOWN:
- case ISIS_ADJ_DOWN:
- val = ISIS_SNMP_ADJ_STATE_DOWN;
- break;
-
- case ISIS_ADJ_INITIALIZING:
- val = ISIS_SNMP_ADJ_STATE_INITIALIZING;
- break;
-
- case ISIS_ADJ_UP:
- val = ISIS_SNMP_ADJ_STATE_UP;
- break;
- }
-
- return SNMP_INTEGER(val);
+ return SNMP_INTEGER(isis_snmp_adj_state(adj->adj_state));
case ISIS_ISADJ_3WAYSTATE:
return SNMP_INTEGER(adj->threeway_state);
}
case ISIS_ISADJ_NEIGHSYSTYPE:
-
- switch (adj->sys_type) {
- case ISIS_SYSTYPE_UNKNOWN:
- case ISIS_SYSTYPE_ES:
- val = ISIS_SNMP_ADJ_NEIGHTYPE_UNKNOWN;
- break;
-
- case ISIS_SYSTYPE_IS:
- val = ISIS_SNMP_ADJ_NEIGHTYPE_IS_L1_L2;
- break;
-
- case ISIS_SYSTYPE_L1_IS:
- val = ISIS_SNMP_ADJ_NEIGHTYPE_IS_L1;
- break;
-
- case ISIS_SYSTYPE_L2_IS:
- val = ISIS_SNMP_ADJ_NEIGHTYPE_IS_L2;
- break;
- }
-
- return SNMP_INTEGER(val);
+ return SNMP_INTEGER(isis_snmp_adj_neightype(adj->sys_type));
case ISIS_ISADJ_NEIGHSYSID:
*var_len = sizeof(adj->sysid);
lsp_id[ISIS_SYS_ID_LEN] = 0;
lsp_id[ISIS_SYS_ID_LEN + 1] = 0;
- val = ISIS_SNMP_ADJ_STATE_DOWN;
-
- switch (adj->adj_state) {
- case ISIS_ADJ_UNKNOWN:
- val = ISIS_SNMP_ADJ_STATE_DOWN;
- break;
-
- case ISIS_ADJ_INITIALIZING:
- val = ISIS_SNMP_ADJ_STATE_INITIALIZING;
- break;
-
- case ISIS_ADJ_UP:
- val = ISIS_SNMP_ADJ_STATE_UP;
- break;
-
- case ISIS_ADJ_DOWN:
- val = ISIS_SNMP_ADJ_STATE_FAILED;
- break;
- }
+ val = isis_snmp_adj_state(adj->adj_state);
isis_snmp_update_worker_b(
adj->circuit, ISIS_TRAP_ADJ_STATE_CHANGE,