diff options
author | Dario Lombardo <lomato@gmail.com> | 2018-03-09 18:47:51 +0100 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2018-03-09 19:37:42 +0000 |
commit | 66a1fefac416136b96b7a1683293d6a06f5c00e8 (patch) | |
tree | 58134513fab2783d3a379411fa42c0753b2366fa /epan | |
parent | 190b2e89c3767b3a5b87afc58d45d58d5d848f27 (diff) |
kerberos: remove leak (found by clang).
Change-Id: I70242960466b276cf9ffb62fda62dcb40c17c1fe
Reviewed-on: https://code.wireshark.org/review/26396
Petri-Dish: Dario Lombardo <lomato@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan')
-rw-r--r-- | epan/dissectors/asn1/kerberos/packet-kerberos-template.c | 14 | ||||
-rw-r--r-- | epan/dissectors/packet-kerberos.c | 20 |
2 files changed, 19 insertions, 15 deletions
diff --git a/epan/dissectors/asn1/kerberos/packet-kerberos-template.c b/epan/dissectors/asn1/kerberos/packet-kerberos-template.c index 6f8ec59e16..e3ac1dc7eb 100644 --- a/epan/dissectors/asn1/kerberos/packet-kerberos-template.c +++ b/epan/dissectors/asn1/kerberos/packet-kerberos-template.c @@ -322,14 +322,15 @@ read_keytab_file(const char *filename) } do{ - new_key=(enc_key_t *)g_malloc(sizeof(enc_key_t)); - new_key->fd_num = -1; - new_key->next=enc_key_list; ret = krb5_kt_next_entry(krb5_ctx, keytab, &key, &cursor); if(ret==0){ int i; char *pos; + new_key = g_new(enc_key_t, 1); + new_key->fd_num = -1; + new_key->next = enc_key_list; + /* generate origin string, describing where this key came from */ pos=new_key->key_origin; pos+=MIN(KRB_MAX_ORIG_LEN, @@ -459,14 +460,15 @@ read_keytab_file(const char *filename) } do{ - new_key = (enc_key_t *)g_malloc(sizeof(enc_key_t)); - new_key->fd_num = -1; - new_key->next=enc_key_list; ret = krb5_kt_next_entry(krb5_ctx, keytab, &key, &cursor); if(ret==0){ unsigned int i; char *pos; + new_key = g_new0(enc_key_t, 1); + new_key->fd_num = -1; + new_key->next = enc_key_list; + /* generate origin string, describing where this key came from */ pos=new_key->key_origin; pos+=MIN(KRB_MAX_ORIG_LEN, diff --git a/epan/dissectors/packet-kerberos.c b/epan/dissectors/packet-kerberos.c index 61c96897a5..0bb822a9c9 100644 --- a/epan/dissectors/packet-kerberos.c +++ b/epan/dissectors/packet-kerberos.c @@ -616,14 +616,15 @@ read_keytab_file(const char *filename) } do{ - new_key=(enc_key_t *)g_malloc(sizeof(enc_key_t)); - new_key->fd_num = -1; - new_key->next=enc_key_list; ret = krb5_kt_next_entry(krb5_ctx, keytab, &key, &cursor); if(ret==0){ int i; char *pos; + new_key = g_new(enc_key_t, 1); + new_key->fd_num = -1; + new_key->next = enc_key_list; + /* generate origin string, describing where this key came from */ pos=new_key->key_origin; pos+=MIN(KRB_MAX_ORIG_LEN, @@ -753,14 +754,15 @@ read_keytab_file(const char *filename) } do{ - new_key = (enc_key_t *)g_malloc(sizeof(enc_key_t)); - new_key->fd_num = -1; - new_key->next=enc_key_list; ret = krb5_kt_next_entry(krb5_ctx, keytab, &key, &cursor); if(ret==0){ unsigned int i; char *pos; + new_key = g_new0(enc_key_t, 1); + new_key->fd_num = -1; + new_key->next = enc_key_list; + /* generate origin string, describing where this key came from */ pos=new_key->key_origin; pos+=MIN(KRB_MAX_ORIG_LEN, @@ -4457,7 +4459,7 @@ dissect_kerberos_EncryptedChallenge(gboolean implicit_tag _U_, tvbuff_t *tvb _U_ /*--- End of included file: packet-kerberos-fn.c ---*/ -#line 1865 "./asn1/kerberos/packet-kerberos-template.c" +#line 1867 "./asn1/kerberos/packet-kerberos-template.c" /* Make wrappers around exported functions for now */ int @@ -5619,7 +5621,7 @@ void proto_register_kerberos(void) { NULL, HFILL }}, /*--- End of included file: packet-kerberos-hfarr.c ---*/ -#line 2246 "./asn1/kerberos/packet-kerberos-template.c" +#line 2248 "./asn1/kerberos/packet-kerberos-template.c" }; /* List of subtrees */ @@ -5705,7 +5707,7 @@ void proto_register_kerberos(void) { &ett_kerberos_KrbFastArmoredRep, /*--- End of included file: packet-kerberos-ettarr.c ---*/ -#line 2262 "./asn1/kerberos/packet-kerberos-template.c" +#line 2264 "./asn1/kerberos/packet-kerberos-template.c" }; static ei_register_info ei[] = { |