diff options
author | Stig Bjørlykke <stig@bjorlykke.org> | 2016-02-26 12:03:25 +0100 |
---|---|---|
committer | Stig Bjørlykke <stig@bjorlykke.org> | 2016-02-26 11:11:17 +0000 |
commit | 2e04336cdc0dca5937d5193d850172939a317f29 (patch) | |
tree | ffa682a59c1b45b0a29e8b6c4e86f31b18a96532 /asn1 | |
parent | 298012359b52a9bf1ca22e0d1bedf23ec3e7680f (diff) |
snmp: Decode msgSecurityParameters ASN.1 header
Decode ASN.1 identifier and length to get correct offset to
msgSecurityParameters.
Bug: 12181
Change-Id: Icf83616ac0a63e1d48652738942fe339dd165cab
Reviewed-on: https://code.wireshark.org/review/14158
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Diffstat (limited to 'asn1')
-rw-r--r-- | asn1/snmp/snmp.cnf | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/asn1/snmp/snmp.cnf b/asn1/snmp/snmp.cnf index e413f56bbc..c1ed1575e6 100644 --- a/asn1/snmp/snmp.cnf +++ b/asn1/snmp/snmp.cnf @@ -165,7 +165,9 @@ gint pdu_type=-1; switch(MsgSecurityModel){ case SNMP_SEC_USM: /* 3 */ - offset = dissect_snmp_UsmSecurityParameters(FALSE, tvb, offset+2, actx, tree, -1); + offset = get_ber_identifier(tvb, offset, NULL, NULL, NULL); + offset = get_ber_length(tvb, offset, NULL, NULL); + offset = dissect_snmp_UsmSecurityParameters(FALSE, tvb, offset, actx, tree, -1); usm_p.user_assoc = get_user_assoc(usm_p.engine_tvb, usm_p.user_tvb); break; case SNMP_SEC_ANY: /* 0 */ |