Skip to content

Commit f05e201

Browse files
j123b567yarrick
authored andcommitted
snmp: remove handling of varbind->prev because it is never used
No code in snmp traverses varbinds backwards so prev is never used. This also fixes false positive dangling pointer detection by GCC.
1 parent 52bb3ee commit f05e201

File tree

1 file changed

+0
-10
lines changed

1 file changed

+0
-10
lines changed

Diff for: src/apps/snmp/snmp_traps.c

-10
Original file line numberDiff line numberDiff line change
@@ -346,8 +346,6 @@ snmp_send_trap_or_notification_or_inform_generic(struct snmp_msg_trap *trap_msg,
346346
u16_t tot_len = 0;
347347
err_t err = ERR_OK;
348348
u32_t timestamp = 0;
349-
struct snmp_varbind *original_varbinds = varbinds;
350-
struct snmp_varbind *original_prev = NULL;
351349
struct snmp_obj_id snmp_trap_oid = { 0 }; /* used for converting SNMPv1 generic/specific trap parameter to SNMPv2 snmpTrapOID */
352350
struct snmp_varbind snmp_v2_special_varbinds[] = {
353351
/* First varbind is used to store sysUpTime */
@@ -379,7 +377,6 @@ snmp_send_trap_or_notification_or_inform_generic(struct snmp_msg_trap *trap_msg,
379377
LWIP_ASSERT_SNMP_LOCKED();
380378

381379
snmp_v2_special_varbinds[0].next = &snmp_v2_special_varbinds[1];
382-
snmp_v2_special_varbinds[1].prev = &snmp_v2_special_varbinds[0];
383380

384381
snmp_v2_special_varbinds[0].value = &timestamp;
385382

@@ -391,10 +388,6 @@ snmp_send_trap_or_notification_or_inform_generic(struct snmp_msg_trap *trap_msg,
391388
if (err == ERR_OK) {
392389
snmp_v2_special_varbinds[1].value_len = snmp_trap_oid.len * sizeof(snmp_trap_oid.id[0]);
393390
snmp_v2_special_varbinds[1].value = snmp_trap_oid.id;
394-
if (varbinds != NULL) {
395-
original_prev = varbinds->prev;
396-
varbinds->prev = &snmp_v2_special_varbinds[1];
397-
}
398391
varbinds = snmp_v2_special_varbinds; /* After inserting two varbinds at the beginning of the list, make sure that pointer is pointing to the first element */
399392
}
400393
}
@@ -417,9 +410,6 @@ snmp_send_trap_or_notification_or_inform_generic(struct snmp_msg_trap *trap_msg,
417410
}
418411
}
419412
}
420-
if ((trap_msg->snmp_version == SNMP_VERSION_2c) && (original_varbinds != NULL)) {
421-
original_varbinds->prev = original_prev;
422-
}
423413
req_id++;
424414
return err;
425415
}

0 commit comments

Comments
 (0)