Trimmed whitespace at line ends.

This commit is contained in:
christiaans 2006-11-17 11:05:26 +00:00
parent d4b6471d39
commit 5e44122552
5 changed files with 121 additions and 121 deletions

View File

@ -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;

View File

@ -33,7 +33,7 @@
*
* Author: Christiaan Simons <christiaan.simons@axon.tv>
*/
#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;

View File

@ -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;

View File

@ -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;

View File

@ -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;