diff options
Diffstat (limited to 'epan/dissectors/asn1/snmp')
-rw-r--r-- | epan/dissectors/asn1/snmp/packet-snmp-template.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/epan/dissectors/asn1/snmp/packet-snmp-template.c b/epan/dissectors/asn1/snmp/packet-snmp-template.c index f1ffb5c9ff..7b92c3e006 100644 --- a/epan/dissectors/asn1/snmp/packet-snmp-template.c +++ b/epan/dissectors/asn1/snmp/packet-snmp-template.c @@ -1476,12 +1476,16 @@ localize_ue( snmp_ue_assoc_t* o, const guint8* engine, guint engine_len ) snmp_ue_assoc_t* n = (snmp_ue_assoc_t*)g_memdup(o,sizeof(snmp_ue_assoc_t)); n->user.userName.data = (guint8*)g_memdup(o->user.userName.data,o->user.userName.len); + n->user.authModel = o->user.authModel; n->user.authPassword.data = (guint8*)g_memdup(o->user.authPassword.data,o->user.authPassword.len); + n->user.authPassword.len = o->user.authPassword.len; n->user.privPassword.data = (guint8*)g_memdup(o->user.privPassword.data,o->user.privPassword.len); + n->user.privPassword.len = o->user.privPassword.len; n->user.authKey.data = (guint8*)g_memdup(o->user.authKey.data,o->user.authKey.len); n->user.privKey.data = (guint8*)g_memdup(o->user.privKey.data,o->user.privKey.len); n->engine.data = (guint8*)g_memdup(engine,engine_len); n->engine.len = engine_len; + n->priv_proto = o->priv_proto; set_ue_keys(n); @@ -1504,8 +1508,8 @@ get_user_assoc(tvbuff_t* engine_tvb, tvbuff_t* user_tvb) static snmp_ue_assoc_t* a; guint given_username_len; guint8* given_username; - guint given_engine_len; - guint8* given_engine; + guint given_engine_len = 0; + guint8* given_engine = NULL; if ( ! (localized_ues || unlocalized_ues ) ) return NULL; |