diff --git a/src/core/snmp/asn1_dec.c b/src/core/snmp/asn1_dec.c index fcc0888e..5e04b38e 100644 --- a/src/core/snmp/asn1_dec.c +++ b/src/core/snmp/asn1_dec.c @@ -59,7 +59,7 @@ snmp_asn1_dec_type(struct pbuf *p, u16_t ofs, u8_t *type) base = plen; plen += p->len; if (ofs < plen) - { + { msg_ptr = p->payload; msg_ptr += ofs - base; *type = *msg_ptr; @@ -92,7 +92,7 @@ snmp_asn1_dec_length(struct pbuf *p, u16_t ofs, u8_t *octets_used, u16_t *length base = plen; plen += p->len; if (ofs < plen) - { + { msg_ptr = p->payload; msg_ptr += ofs - base; @@ -131,7 +131,7 @@ snmp_asn1_dec_length(struct pbuf *p, u16_t ofs, u8_t *octets_used, u16_t *length { /* next octet in same pbuf */ msg_ptr++; - } + } if (*msg_ptr == 0) { zeros++; @@ -227,7 +227,7 @@ snmp_asn1_dec_length(struct pbuf *p, u16_t ofs, u8_t *octets_used, u16_t *length * * @param p points to a pbuf holding an ASN1 coded integer * @param ofs points to the offset within the pbuf chain of the ASN1 coded integer - * @param len length of the coded integer field + * @param len length of the coded integer field * @param value return host order integer * @return ERR_OK if successfull, ERR_ARG if we can't (or won't) decode * @@ -247,7 +247,7 @@ snmp_asn1_dec_u32t(struct pbuf *p, u16_t ofs, u16_t len, u32_t *value) base = plen; plen += p->len; if (ofs < plen) - { + { msg_ptr = p->payload; msg_ptr += ofs - base; if ((len > 0) && (len < 6)) @@ -322,7 +322,7 @@ snmp_asn1_dec_u32t(struct pbuf *p, u16_t ofs, u16_t len, u32_t *value) * * @param p points to a pbuf holding an ASN1 coded integer * @param ofs points to the offset within the pbuf chain of the ASN1 coded integer - * @param len length of the coded integer field + * @param len length of the coded integer field * @param value return host order integer * @return ERR_OK if successfull, ERR_ARG if we can't (or won't) decode * @@ -342,7 +342,7 @@ snmp_asn1_dec_s32t(struct pbuf *p, u16_t ofs, u16_t len, s32_t *value) base = plen; plen += p->len; if (ofs < plen) - { + { msg_ptr = p->payload; msg_ptr += ofs - base; if ((len > 0) && (len < 5)) @@ -415,7 +415,7 @@ snmp_asn1_dec_s32t(struct pbuf *p, u16_t ofs, u16_t len, s32_t *value) * * @param p points to a pbuf holding an ASN1 coded object identifier * @param ofs points to the offset within the pbuf chain of the ASN1 coded object identifier - * @param len length of the coded object identifier + * @param len length of the coded object identifier * @param oid return object identifier struct * @return ERR_OK if successfull, ERR_ARG if we can't (or won't) decode */ @@ -432,7 +432,7 @@ snmp_asn1_dec_oid(struct pbuf *p, u16_t ofs, u16_t len, struct snmp_obj_id *oid) base = plen; plen += p->len; if (ofs < plen) - { + { msg_ptr = p->payload; msg_ptr += ofs - base; @@ -451,21 +451,21 @@ snmp_asn1_dec_oid(struct pbuf *p, u16_t ofs, u16_t len, struct snmp_obj_id *oid) } else if (*msg_ptr < 40) { - *oid_ptr = 0; + *oid_ptr = 0; oid_ptr++; *oid_ptr = *msg_ptr; oid_ptr++; } else if (*msg_ptr < 80) { - *oid_ptr = 1; + *oid_ptr = 1; oid_ptr++; *oid_ptr = (*msg_ptr) - 40; oid_ptr++; } else { - *oid_ptr = 2; + *oid_ptr = 2; oid_ptr++; *oid_ptr = (*msg_ptr) - 80; oid_ptr++; @@ -501,7 +501,7 @@ snmp_asn1_dec_oid(struct pbuf *p, u16_t ofs, u16_t len, struct snmp_obj_id *oid) /* sub-identifier uses multiple octets */ if (*msg_ptr & 0x80) { - s32_t sub_id = 0; + s32_t sub_id = 0; while ((*msg_ptr & 0x80) && (len > 1)) { @@ -553,7 +553,7 @@ snmp_asn1_dec_oid(struct pbuf *p, u16_t ofs, u16_t len, struct snmp_obj_id *oid) /* next octet in same pbuf */ msg_ptr++; } - } + } oid_ptr++; oid->len++; } @@ -600,13 +600,13 @@ snmp_asn1_dec_raw(struct pbuf *p, u16_t ofs, u16_t len, u16_t raw_len, u8_t *raw base = plen; plen += p->len; if (ofs < plen) - { + { msg_ptr = p->payload; msg_ptr += ofs - base; if (raw_len >= len) { while (len > 1) - { + { /* copy len - 1 octets */ len--; *raw = *msg_ptr; diff --git a/src/core/snmp/asn1_enc.c b/src/core/snmp/asn1_enc.c index b67ab21e..4d04f285 100644 --- a/src/core/snmp/asn1_enc.c +++ b/src/core/snmp/asn1_enc.c @@ -33,7 +33,7 @@ * * Author: Christiaan Simons */ - + #include "lwip/opt.h" #if LWIP_SNMP @@ -142,7 +142,7 @@ snmp_asn1_enc_oid_cnt(u8_t ident_len, s32_t *ident, u16_t *octets_needed) { s32_t sub_id; u8_t cnt; - + cnt = 0; if (ident_len > 1) { @@ -188,7 +188,7 @@ snmp_asn1_enc_type(struct pbuf *p, u16_t ofs, u8_t type) base = plen; plen += p->len; if (ofs < plen) - { + { msg_ptr = p->payload; msg_ptr += ofs - base; *msg_ptr = type; @@ -220,7 +220,7 @@ snmp_asn1_enc_length(struct pbuf *p, u16_t ofs, u16_t length) base = plen; plen += p->len; if (ofs < plen) - { + { msg_ptr = p->payload; msg_ptr += ofs - base; @@ -251,7 +251,7 @@ snmp_asn1_enc_length(struct pbuf *p, u16_t ofs, u16_t length) else { u8_t i; - + /* length >= 0x100 && length <= 0xFFFF */ *msg_ptr = 0x82; i = 2; @@ -315,7 +315,7 @@ snmp_asn1_enc_u32t(struct pbuf *p, u16_t ofs, u8_t octets_needed, u32_t value) base = plen; plen += p->len; if (ofs < plen) - { + { msg_ptr = p->payload; msg_ptr += ofs - base; @@ -338,10 +338,10 @@ snmp_asn1_enc_u32t(struct pbuf *p, u16_t ofs, u8_t octets_needed, u32_t value) /* next octet in same pbuf */ msg_ptr++; } - } + } while (octets_needed > 1) { - octets_needed--; + octets_needed--; *msg_ptr = value >> (octets_needed << 3); ofs += 1; if (ofs >= plen) @@ -391,13 +391,13 @@ snmp_asn1_enc_s32t(struct pbuf *p, u16_t ofs, u8_t octets_needed, s32_t value) base = plen; plen += p->len; if (ofs < plen) - { + { msg_ptr = p->payload; msg_ptr += ofs - base; while (octets_needed > 1) { - octets_needed--; + octets_needed--; *msg_ptr = value >> (octets_needed << 3); ofs += 1; if (ofs >= plen) @@ -445,15 +445,15 @@ snmp_asn1_enc_oid(struct pbuf *p, u16_t ofs, u8_t ident_len, s32_t *ident) base = plen; plen += p->len; if (ofs < plen) - { + { msg_ptr = p->payload; msg_ptr += ofs - base; - + if (ident_len > 1) { if ((ident[0] == 1) && (ident[1] == 3)) { - /* compressed (most common) prefix .iso.org */ + /* compressed (most common) prefix .iso.org */ *msg_ptr = 0x2b; } else @@ -488,15 +488,15 @@ snmp_asn1_enc_oid(struct pbuf *p, u16_t ofs, u8_t ident_len, s32_t *ident) { s32_t sub_id; u8_t shift, tail; - + ident_len--; sub_id = *ident; - tail = 0; + tail = 0; shift = 28; while(shift > 0) { u8_t code; - + code = sub_id >> shift; if ((code != 0) || (tail != 0)) { @@ -569,12 +569,12 @@ snmp_asn1_enc_raw(struct pbuf *p, u16_t ofs, u8_t raw_len, u8_t *raw) base = plen; plen += p->len; if (ofs < plen) - { + { msg_ptr = p->payload; msg_ptr += ofs - base; while (raw_len > 1) - { + { /* copy raw_len - 1 octets */ raw_len--; *msg_ptr = *raw; diff --git a/src/core/snmp/mib_structs.c b/src/core/snmp/mib_structs.c index c93434c2..ec143491 100644 --- a/src/core/snmp/mib_structs.c +++ b/src/core/snmp/mib_structs.c @@ -124,7 +124,7 @@ snmp_netiftoifindex(struct netif *netif, s32_t *ifidx) nif = nif->next; i++; } - *ifidx = i+1; + *ifidx = i+1; } /** @@ -168,7 +168,7 @@ struct mib_list_node * snmp_mib_ln_alloc(s32_t id) { struct mib_list_node *ln; - + ln = (struct mib_list_node *)mem_malloc(sizeof(struct mib_list_node)); if (ln != NULL) { @@ -190,7 +190,7 @@ struct mib_list_rootnode * snmp_mib_lrn_alloc(void) { struct mib_list_rootnode *lrn; - + lrn = (struct mib_list_rootnode*)mem_malloc(sizeof(struct mib_list_rootnode)); if (lrn != NULL) { @@ -231,7 +231,7 @@ snmp_mib_node_insert(struct mib_list_rootnode *rn, s32_t objid, struct mib_list_ s8_t insert; LWIP_ASSERT("rn != NULL",rn != NULL); - + /* -1 = malloc failure, 0 = not inserted, 1 = inserted, 2 = was present */ insert = 0; if (rn->head == NULL) @@ -240,7 +240,7 @@ snmp_mib_node_insert(struct mib_list_rootnode *rn, s32_t objid, struct mib_list_ LWIP_DEBUGF(SNMP_MIB_DEBUG,("alloc empty list objid==%"S32_F"\n",objid)); nn = snmp_mib_ln_alloc(objid); if (nn != NULL) - { + { rn->head = nn; rn->tail = nn; *insn = nn; @@ -261,7 +261,7 @@ snmp_mib_node_insert(struct mib_list_rootnode *rn, s32_t objid, struct mib_list_ if (n->objid == objid) { /* node is already there */ - LWIP_DEBUGF(SNMP_MIB_DEBUG,("node already there objid==%"S32_F"\n",objid)); + LWIP_DEBUGF(SNMP_MIB_DEBUG,("node already there objid==%"S32_F"\n",objid)); *insn = n; insert = 2; } @@ -289,7 +289,7 @@ snmp_mib_node_insert(struct mib_list_rootnode *rn, s32_t objid, struct mib_list_ } else { - /* there's more to explore: traverse list */ + /* there's more to explore: traverse list */ LWIP_DEBUGF(SNMP_MIB_DEBUG,("traverse list\n")); n = n->next; } @@ -298,7 +298,7 @@ snmp_mib_node_insert(struct mib_list_rootnode *rn, s32_t objid, struct mib_list_ { /* n->objid > objid */ /* alloc and insert between n->prev and n */ - LWIP_DEBUGF(SNMP_MIB_DEBUG,("alloc ins n->prev, objid==%"S32_F", n\n",objid)); + LWIP_DEBUGF(SNMP_MIB_DEBUG,("alloc ins n->prev, objid==%"S32_F", n\n",objid)); nn = snmp_mib_ln_alloc(objid); if (nn != NULL) { @@ -351,7 +351,7 @@ snmp_mib_node_find(struct mib_list_rootnode *rn, s32_t objid, struct mib_list_no { s8_t fc; struct mib_list_node *n; - + LWIP_ASSERT("rn != NULL",rn != NULL); n = rn->head; while ((n != NULL) && (n->objid != objid)) @@ -370,7 +370,7 @@ snmp_mib_node_find(struct mib_list_rootnode *rn, s32_t objid, struct mib_list_no else { struct mib_list_rootnode *rn; - + if (n->nptr->node_type == MIB_NODE_LR) { rn = (struct mib_list_rootnode *)n->nptr; @@ -440,7 +440,7 @@ snmp_mib_node_delete(struct mib_list_rootnode *rn, struct mib_list_node *n) n->next->prev = n->prev; } LWIP_DEBUGF(SNMP_MIB_DEBUG,("free list objid==%"S32_F"\n",n->objid)); - snmp_mib_ln_free(n); + snmp_mib_ln_free(n); if (rn->count == 0) { rn->head = NULL; @@ -476,7 +476,7 @@ snmp_search_tree(struct mib_node *node, u8_t ident_len, s32_t *ident, struct snm u16_t i; if (ident_len > 0) - { + { /* array node (internal ROM or RAM, fixed length) */ an = (struct mib_array_node *)node; i = 0; @@ -571,10 +571,10 @@ snmp_search_tree(struct mib_node *node, u8_t ident_len, s32_t *ident, struct snm u16_t i, len; if (ident_len > 0) - { + { /* external node (addressing and access via functions) */ en = (struct mib_external_node *)node; - + i = 0; len = en->level_length(en->addr_inf,ext_level); while ((i < len) && (en->ident_cmp(en->addr_inf,ext_level,i,*ident) != 0)) @@ -584,7 +584,7 @@ snmp_search_tree(struct mib_node *node, u8_t ident_len, s32_t *ident, struct snm if (i < len) { s32_t debug_id; - + en->get_objid(en->addr_inf,ext_level,i,&debug_id); LWIP_DEBUGF(SNMP_MIB_DEBUG,("en->objid==%"S32_F" *ident==%"S32_F"\n",debug_id,*ident)); if ((ext_level + 1) == en->tree_levels) @@ -653,7 +653,7 @@ empty_table(struct mib_node *node) { u8_t node_type; u8_t empty = 0; - + if (node != NULL) { node_type = node->node_type; @@ -669,7 +669,7 @@ empty_table(struct mib_node *node) else if ((node_type == MIB_NODE_AR) || (node_type == MIB_NODE_RA)) { struct mib_array_node *an; - an = (struct mib_array_node *)node; + an = (struct mib_array_node *)node; if ((an->maxlength == 0) || (an->nptr == NULL)) { empty = 1; @@ -678,7 +678,7 @@ empty_table(struct mib_node *node) else if (node_type == MIB_NODE_EX) { struct mib_external_node *en; - en = (struct mib_external_node *)node; + en = (struct mib_external_node *)node; if (en->tree_levels == 0) { empty = 1; @@ -723,7 +723,7 @@ snmp_expand_tree(struct mib_node *node, u8_t ident_len, s32_t *ident, struct snm /* add identifier to oidret */ oidret->id[oidret->len] = an->objid[i]; (oidret->len)++; - + if (an->nptr[i] == NULL) { LWIP_DEBUGF(SNMP_MIB_DEBUG,("leaf node\n")); @@ -847,7 +847,7 @@ snmp_expand_tree(struct mib_node *node, u8_t ident_len, s32_t *ident, struct snm /* leaf node */ if (ln->objid > *ident) { - return (struct mib_node*)lrn; + return (struct mib_node*)lrn; } else if (ln->next != NULL) { @@ -950,7 +950,7 @@ snmp_expand_tree(struct mib_node *node, u8_t ident_len, s32_t *ident, struct snm if (ident_len > 0) { u16_t i, len; - + i = 0; len = en->level_length(en->addr_inf,ext_level); while ((i < len) && (en->ident_cmp(en->addr_inf,ext_level,i,*ident) < 0)) @@ -958,20 +958,20 @@ snmp_expand_tree(struct mib_node *node, u8_t ident_len, s32_t *ident, struct snm i++; } if (i < len) - { + { /* add identifier to oidret */ en->get_objid(en->addr_inf,ext_level,i,&ex_id); - LWIP_DEBUGF(SNMP_MIB_DEBUG,("en->objid[%"U16_F"]==%"S32_F" *ident==%"S32_F"\n",i,ex_id,*ident)); + LWIP_DEBUGF(SNMP_MIB_DEBUG,("en->objid[%"U16_F"]==%"S32_F" *ident==%"S32_F"\n",i,ex_id,*ident)); oidret->id[oidret->len] = ex_id; (oidret->len)++; - + if ((ext_level + 1) == en->tree_levels) { LWIP_DEBUGF(SNMP_MIB_DEBUG,("leaf node\n")); /* leaf node */ if (ex_id > *ident) { - return (struct mib_node*)en; + return (struct mib_node*)en; } else if ((i + 1) < len) { @@ -979,7 +979,7 @@ snmp_expand_tree(struct mib_node *node, u8_t ident_len, s32_t *ident, struct snm en->get_objid(en->addr_inf,ext_level,i + 1,&ex_id); (oidret->len)--; oidret->id[oidret->len] = ex_id; - (oidret->len)++; + (oidret->len)++; return (struct mib_node*)en; } else @@ -1027,7 +1027,7 @@ snmp_expand_tree(struct mib_node *node, u8_t ident_len, s32_t *ident, struct snm { /* i == len (en->level_len()) */ climb_tree = 1; - } + } } else { @@ -1076,7 +1076,7 @@ snmp_expand_tree(struct mib_node *node, u8_t ident_len, s32_t *ident, struct snm LWIP_DEBUGF(SNMP_MIB_DEBUG,("expand failed node_type %"U16_F" unkown\n",(u16_t)node_type)); return NULL; } - + if (climb_tree) { struct nse child; diff --git a/src/core/snmp/msg_in.c b/src/core/snmp/msg_in.c index 5c5ad4d2..f00ea243 100644 --- a/src/core/snmp/msg_in.c +++ b/src/core/snmp/msg_in.c @@ -76,7 +76,7 @@ snmp_init(void) { struct snmp_msg_pstat *msg_ps; u8_t i; - + snmp1_pcb = udp_new(); if (snmp1_pcb != NULL) { @@ -137,7 +137,7 @@ snmp_ok_response(struct snmp_msg_pstat *msg_ps) /** * Service an internal or external event for SNMP GET. - * + * * @param request_id identifies requests from 0 to (SNMP_CONCURRENT_REQUESTS-1) * @param msg_ps points to the assosicated message process state */ @@ -145,7 +145,7 @@ static void snmp_msg_get_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) { LWIP_DEBUGF(SNMP_MSG_DEBUG, ("snmp_msg_get_event: msg_ps->state==%"U16_F"\n",(u16_t)msg_ps->state)); - + if (msg_ps->state == SNMP_MSG_EXTERNAL_GET_OBJDEF) { struct mib_external_node *en; @@ -196,7 +196,7 @@ snmp_msg_get_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) vb->value_len = msg_ps->ext_object_def.v_len; if (vb->value_len > 0) { - vb->value = mem_malloc(vb->value_len); + vb->value = mem_malloc(vb->value_len); LWIP_ASSERT("vb->value != NULL",vb->value != NULL); if (vb->value != NULL) { @@ -234,7 +234,7 @@ snmp_msg_get_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) snmp_error_response(msg_ps,SNMP_ES_TOOBIG); } } - + while ((msg_ps->state == SNMP_MSG_SEARCH_OBJ) && (msg_ps->vb_idx < msg_ps->invb.count)) { @@ -271,14 +271,14 @@ snmp_msg_get_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) msg_ps->ext_mib_node = en; msg_ps->ext_name_ptr = np; - en->get_object_def_q(en->addr_inf, request_id, np.ident_len, np.ident); + en->get_object_def_q(en->addr_inf, request_id, np.ident_len, np.ident); } else { /* internal object */ struct obj_def object_def; - msg_ps->state = SNMP_MSG_INTERNAL_GET_OBJDEF; + msg_ps->state = SNMP_MSG_INTERNAL_GET_OBJDEF; mn->get_object_def(np.ident_len, np.ident, &object_def); if (object_def.instance != MIB_OBJECT_NONE) { @@ -338,7 +338,7 @@ snmp_msg_get_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) snmp_varbind_tail_add(&msg_ps->outvb, vb); msg_ps->state = SNMP_MSG_SEARCH_OBJ; msg_ps->vb_idx += 1; - } + } } else { @@ -363,7 +363,7 @@ snmp_msg_get_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) /** * Service an internal or external event for SNMP GETNEXT. - * + * * @param request_id identifies requests from 0 to (SNMP_CONCURRENT_REQUESTS-1) * @param msg_ps points to the assosicated message process state */ @@ -371,7 +371,7 @@ static void snmp_msg_getnext_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) { LWIP_DEBUGF(SNMP_MSG_DEBUG, ("snmp_msg_getnext_event: msg_ps->state==%"U16_F"\n",(u16_t)msg_ps->state)); - + if (msg_ps->state == SNMP_MSG_EXTERNAL_GET_OBJDEF) { struct mib_external_node *en; @@ -416,7 +416,7 @@ snmp_msg_getnext_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) en->get_value_pc(request_id, &msg_ps->ext_object_def); LWIP_DEBUGF(SNMP_MSG_DEBUG, ("snmp_msg_getnext_event: couldn't allocate outvb space\n")); snmp_error_response(msg_ps,SNMP_ES_TOOBIG); - } + } } while ((msg_ps->state == SNMP_MSG_SEARCH_OBJ) && @@ -464,7 +464,7 @@ snmp_msg_getnext_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) msg_ps->ext_mib_node = en; msg_ps->ext_oid = oid; - en->get_object_def_q(en->addr_inf, request_id, 1, &oid.id[oid.len - 1]); + en->get_object_def_q(en->addr_inf, request_id, 1, &oid.id[oid.len - 1]); } else { @@ -488,8 +488,8 @@ snmp_msg_getnext_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) { LWIP_DEBUGF(SNMP_MSG_DEBUG, ("snmp_recv couldn't allocate outvb space\n")); snmp_error_response(msg_ps,SNMP_ES_TOOBIG); - } - } + } + } } if (mn == NULL) { @@ -506,7 +506,7 @@ snmp_msg_getnext_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) /** * Service an internal or external event for SNMP SET. - * + * * @param request_id identifies requests from 0 to (SNMP_CONCURRENT_REQUESTS-1) * @param msg_ps points to the assosicated message process state */ @@ -514,7 +514,7 @@ static void snmp_msg_set_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) { LWIP_DEBUGF(SNMP_MSG_DEBUG, ("snmp_msg_set_event: msg_ps->state==%"U16_F"\n",(u16_t)msg_ps->state)); - + if (msg_ps->state == SNMP_MSG_EXTERNAL_GET_OBJDEF) { struct mib_external_node *en; @@ -553,7 +553,7 @@ snmp_msg_set_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) (en->set_test_a(request_id,&msg_ps->ext_object_def, msg_ps->vb_ptr->value_len,msg_ps->vb_ptr->value) != 0)) { - msg_ps->state = SNMP_MSG_SEARCH_OBJ; + msg_ps->state = SNMP_MSG_SEARCH_OBJ; msg_ps->vb_idx += 1; } else @@ -605,7 +605,7 @@ snmp_msg_set_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) /** @todo use set_value_pc() if toobig */ msg_ps->state = SNMP_MSG_INTERNAL_SET_VALUE; msg_ps->vb_idx += 1; - } + } /* test all values before setting */ while ((msg_ps->state == SNMP_MSG_SEARCH_OBJ) && @@ -644,14 +644,14 @@ snmp_msg_set_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) msg_ps->ext_mib_node = en; msg_ps->ext_name_ptr = np; - en->get_object_def_q(en->addr_inf, request_id, np.ident_len, np.ident); + en->get_object_def_q(en->addr_inf, request_id, np.ident_len, np.ident); } else { /* internal object */ struct obj_def object_def; - msg_ps->state = SNMP_MSG_INTERNAL_GET_OBJDEF; + msg_ps->state = SNMP_MSG_INTERNAL_GET_OBJDEF; mn->get_object_def(np.ident_len, np.ident, &object_def); if (object_def.instance != MIB_OBJECT_NONE) { @@ -671,7 +671,7 @@ snmp_msg_set_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) if ((object_def.asn_type == msg_ps->vb_ptr->value_type) && (mn->set_test(&object_def,msg_ps->vb_ptr->value_len,msg_ps->vb_ptr->value) != 0)) { - msg_ps->state = SNMP_MSG_SEARCH_OBJ; + msg_ps->state = SNMP_MSG_SEARCH_OBJ; msg_ps->vb_idx += 1; } else @@ -692,8 +692,8 @@ snmp_msg_set_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) { /* mn == NULL, noSuchName */ snmp_error_response(msg_ps,SNMP_ES_NOSUCHNAME); - } - } + } + } if ((msg_ps->state == SNMP_MSG_SEARCH_OBJ) && (msg_ps->vb_idx == msg_ps->invb.count)) @@ -701,7 +701,7 @@ snmp_msg_set_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) msg_ps->vb_idx = 0; msg_ps->state = SNMP_MSG_INTERNAL_SET_VALUE; } - + /* set all values "atomically" (be as "atomic" as possible) */ while ((msg_ps->state == SNMP_MSG_INTERNAL_SET_VALUE) && (msg_ps->vb_idx < msg_ps->invb.count)) @@ -734,15 +734,15 @@ snmp_msg_set_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) msg_ps->ext_mib_node = en; msg_ps->ext_name_ptr = np; - en->get_object_def_q(en->addr_inf, request_id, np.ident_len, np.ident); + en->get_object_def_q(en->addr_inf, request_id, np.ident_len, np.ident); } else { /* internal object */ struct obj_def object_def; - + msg_ps->state = SNMP_MSG_INTERNAL_GET_OBJDEF_S; - mn->get_object_def(np.ident_len, np.ident, &object_def); + mn->get_object_def(np.ident_len, np.ident, &object_def); msg_ps->state = SNMP_MSG_INTERNAL_SET_VALUE; mn->set_value(&object_def,msg_ps->vb_ptr->value_len,msg_ps->vb_ptr->value); msg_ps->vb_idx += 1; @@ -752,7 +752,7 @@ snmp_msg_set_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) if ((msg_ps->state == SNMP_MSG_INTERNAL_SET_VALUE) && (msg_ps->vb_idx == msg_ps->invb.count)) { - /* simply echo the input if we can set it + /* simply echo the input if we can set it @todo do we need to return the actual value? e.g. if value is silently modified or behaves sticky? */ msg_ps->outvb = msg_ps->invb; @@ -760,14 +760,14 @@ snmp_msg_set_event(u8_t request_id, struct snmp_msg_pstat *msg_ps) msg_ps->invb.tail = NULL; msg_ps->invb.count = 0; snmp_ok_response(msg_ps); - } + } } /** * Handle one internal or external event. * Called for one async event. (recv external/private answer) - * + * * @param request_id identifies requests from 0 to (SNMP_CONCURRENT_REQUESTS-1) */ void @@ -805,7 +805,7 @@ snmp_recv(void *arg, struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *addr, /* peek in the UDP header (goto IP payload) */ pbuf_header(p, UDP_HLEN); udphdr = p->payload; - + /* check if datagram is really directed at us (including broadcast requests) */ if ((pcb == snmp1_pcb) && (ntohs(udphdr->dest) == 161)) { @@ -860,7 +860,7 @@ snmp_recv(void *arg, struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *addr, if (err_ret == ERR_OK) { LWIP_DEBUGF(SNMP_MSG_DEBUG, ("snmp_recv ok, community %s\n", msg_ps->community)); - + /* Builds a list of variable bindings. Copy the varbinds from the pbuf chain to glue them when these are divided over two or more pbuf's. */ err_ret = snmp_pdu_dec_varbindlist(p, varbind_ofs, &varbind_ofs, msg_ps); @@ -868,7 +868,7 @@ snmp_recv(void *arg, struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *addr, { /* we've decoded the incoming message, release input msg now */ pbuf_free(p); - + msg_ps->error_status = SNMP_ES_NOERROR; msg_ps->error_index = 0; /* find object for each variable binding */ @@ -878,12 +878,12 @@ snmp_recv(void *arg, struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *addr, LWIP_DEBUGF(SNMP_MSG_DEBUG, ("snmp_recv varbind cnt=%"U16_F"\n",(u16_t)msg_ps->invb.count)); - /* handle input event and as much objects as possible in one go */ + /* handle input event and as much objects as possible in one go */ snmp_msg_event(req_idx); } else { - /* varbind-list decode failed, or varbind list empty. + /* varbind-list decode failed, or varbind list empty. drop request silently, do not return error! (errors are only returned for a specific varbind failure) */ pbuf_free(p); @@ -896,7 +896,7 @@ snmp_recv(void *arg, struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *addr, drop request silently, do not return error! */ pbuf_free(p); LWIP_DEBUGF(SNMP_MSG_DEBUG, ("snmp_pdu_header_check() failed\n")); - } + } } else { @@ -911,7 +911,7 @@ snmp_recv(void *arg, struct udp_pcb *pcb, struct pbuf *p, struct ip_addr *addr, } } -/** +/** * Checks and decodes incoming SNMP message header, logs header errors. * * @param p points to pbuf chain of SNMP message (UDP payload) @@ -1011,17 +1011,17 @@ snmp_pdu_header_check(struct pbuf *p, u16_t ofs, u16_t pdu_len, u16_t *ofs_ret, derr = ERR_OK; break; case (SNMP_ASN1_CONTXT | SNMP_ASN1_CONSTR | SNMP_ASN1_PDU_GET_RESP): - /* GetResponse PDU */ + /* GetResponse PDU */ snmp_inc_snmpingetresponses(); derr = ERR_ARG; break; case (SNMP_ASN1_CONTXT | SNMP_ASN1_CONSTR | SNMP_ASN1_PDU_SET_REQ): - /* SetRequest PDU */ + /* SetRequest PDU */ snmp_inc_snmpinsetrequests(); derr = ERR_OK; break; case (SNMP_ASN1_CONTXT | SNMP_ASN1_CONSTR | SNMP_ASN1_PDU_TRAP): - /* Trap PDU */ + /* Trap PDU */ snmp_inc_snmpintraps(); derr = ERR_ARG; break; @@ -1125,7 +1125,7 @@ snmp_pdu_dec_varbindlist(struct pbuf *p, u16_t ofs, u16_t *ofs_ret, struct snmp_ u8_t len_octets; u8_t type; - /* variable binding list */ + /* variable binding list */ snmp_asn1_dec_type(p, ofs, &type); derr = snmp_asn1_dec_length(p, ofs+1, &len_octets, &vb_len); if ((derr != ERR_OK) || @@ -1135,7 +1135,7 @@ snmp_pdu_dec_varbindlist(struct pbuf *p, u16_t ofs, u16_t *ofs_ret, struct snmp_ return ERR_ARG; } ofs += (1 + len_octets); - + /* start with empty list */ m_stat->invb.count = 0; m_stat->invb.head = NULL; @@ -1200,7 +1200,7 @@ snmp_pdu_dec_varbindlist(struct pbuf *p, u16_t ofs, u16_t *ofs_ret, struct snmp_ if (vb != NULL) { s32_t *vptr = vb->value; - + derr = snmp_asn1_dec_s32t(p, ofs + 1 + len_octets, len, vptr); snmp_varbind_tail_add(&m_stat->invb, vb); } @@ -1209,14 +1209,14 @@ snmp_pdu_dec_varbindlist(struct pbuf *p, u16_t ofs, u16_t *ofs_ret, struct snmp_ derr = ERR_ARG; } break; - case (SNMP_ASN1_APPLIC | SNMP_ASN1_PRIMIT | SNMP_ASN1_COUNTER): + case (SNMP_ASN1_APPLIC | SNMP_ASN1_PRIMIT | SNMP_ASN1_COUNTER): case (SNMP_ASN1_APPLIC | SNMP_ASN1_PRIMIT | SNMP_ASN1_GAUGE): case (SNMP_ASN1_APPLIC | SNMP_ASN1_PRIMIT | SNMP_ASN1_TIMETICKS): vb = snmp_varbind_alloc(&oid, type, sizeof(u32_t)); if (vb != NULL) { u32_t *vptr = vb->value; - + derr = snmp_asn1_dec_u32t(p, ofs + 1 + len_octets, len, vptr); snmp_varbind_tail_add(&m_stat->invb, vb); } @@ -1259,7 +1259,7 @@ snmp_pdu_dec_varbindlist(struct pbuf *p, u16_t ofs, u16_t *ofs_ret, struct snmp_ { u8_t i = oid_value.len; s32_t *vptr = vb->value; - + while(i > 0) { i--; @@ -1332,7 +1332,7 @@ snmp_varbind_alloc(struct snmp_obj_id *oid, u8_t type, u8_t len) if (vb != NULL) { u8_t i; - + vb->next = NULL; vb->prev = NULL; i = oid->len; diff --git a/src/core/snmp/msg_out.c b/src/core/snmp/msg_out.c index 95bd7773..1df0d1c1 100644 --- a/src/core/snmp/msg_out.c +++ b/src/core/snmp/msg_out.c @@ -12,7 +12,7 @@ * The buffer requirement can be prohibitively large for big payloads * (>= 484) therefore we use the two encoding passes. */ - + /* * Copyright (c) 2006 Axon Digital Design B.V., The Netherlands. * All rights reserved. @@ -146,11 +146,11 @@ snmp_send_response(struct snmp_msg_pstat *m_stat) u16_t ofs; LWIP_DEBUGF(SNMP_MSG_DEBUG, ("snmp_snd_response() p != NULL\n")); - + /* pass 1, size error, encode packet ino the pbuf(s) */ ofs = snmp_resp_header_enc(m_stat, p); if (m_stat->error_status == SNMP_ES_TOOBIG) - { + { snmp_varbind_list_enc(&emptyvb, p, ofs); } else @@ -250,7 +250,7 @@ snmp_send_trap(s8_t generic_trap, s32_t specific_trap) } else { - /* generic (MIB-II) trap */ + /* generic (MIB-II) trap */ snmp_get_snmpgrpid_ptr(&trap_msg.enterprise); } snmp_get_sysuptime(&trap_msg.ts); @@ -264,7 +264,7 @@ snmp_send_trap(s8_t generic_trap, s32_t specific_trap) if (p != NULL) { u16_t ofs; - + /* pass 1, encode packet ino the pbuf(s) */ ofs = snmp_trap_header_enc(&trap_msg, p); snmp_varbind_list_enc(&trap_msg.outvb, p, ofs); @@ -291,7 +291,7 @@ snmp_send_trap(s8_t generic_trap, s32_t specific_trap) void snmp_coldstart_trap(void) -{ +{ trap_msg.outvb.head = NULL; trap_msg.outvb.tail = NULL; trap_msg.outvb.count = 0; @@ -300,7 +300,7 @@ snmp_coldstart_trap(void) void snmp_authfail_trap(void) -{ +{ u8_t enable; snmp_get_snmpenableauthentraps(&enable); if (enable == 1) @@ -391,7 +391,7 @@ snmp_trap_header_sum(struct snmp_msg_trap *m_trap, u16_t vb_len) thl->aaddrlen = 4; snmp_asn1_enc_length_cnt(thl->aaddrlen, &thl->aaddrlenlen); tot_len += 1 + thl->aaddrlen + thl->aaddrlenlen; - + snmp_asn1_enc_oid_cnt(m_trap->enterprise->len, &m_trap->enterprise->id[0], &thl->eidlen); snmp_asn1_enc_length_cnt(thl->eidlen, &thl->eidlenlen); tot_len += 1 + thl->eidlen + thl->eidlenlen; @@ -441,7 +441,7 @@ snmp_varbind_list_sum(struct snmp_varbind_root *root) sint_ptr = vb->value; snmp_asn1_enc_s32t_cnt(*sint_ptr, &vb->vlen); break; - case (SNMP_ASN1_APPLIC | SNMP_ASN1_PRIMIT | SNMP_ASN1_COUNTER): + case (SNMP_ASN1_APPLIC | SNMP_ASN1_PRIMIT | SNMP_ASN1_COUNTER): case (SNMP_ASN1_APPLIC | SNMP_ASN1_PRIMIT | SNMP_ASN1_GAUGE): case (SNMP_ASN1_APPLIC | SNMP_ASN1_PRIMIT | SNMP_ASN1_TIMETICKS): uint_ptr = vb->value; @@ -476,7 +476,7 @@ snmp_varbind_list_sum(struct snmp_varbind_root *root) vb = vb->prev; } - + /* varbind-list seq */ root->seqlen = tot_len; snmp_asn1_enc_length_cnt(root->seqlen, &root->seqlenlen); @@ -538,7 +538,7 @@ snmp_resp_header_enc(struct snmp_msg_pstat *m_stat, struct pbuf *p) ofs += m_stat->rhl.erridxlenlen; snmp_asn1_enc_s32t(p, ofs, m_stat->rhl.erridxlen, m_stat->error_index); ofs += m_stat->rhl.erridxlen; - + return ofs; } @@ -655,7 +655,7 @@ snmp_varbind_list_enc(struct snmp_varbind_root *root, struct pbuf *p, u16_t ofs) sint_ptr = vb->value; snmp_asn1_enc_s32t(p, ofs, vb->vlen, *sint_ptr); break; - case (SNMP_ASN1_APPLIC | SNMP_ASN1_PRIMIT | SNMP_ASN1_COUNTER): + case (SNMP_ASN1_APPLIC | SNMP_ASN1_PRIMIT | SNMP_ASN1_COUNTER): case (SNMP_ASN1_APPLIC | SNMP_ASN1_PRIMIT | SNMP_ASN1_GAUGE): case (SNMP_ASN1_APPLIC | SNMP_ASN1_PRIMIT | SNMP_ASN1_TIMETICKS): uint_ptr = vb->value;