aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorDario Lombardo <lomato@gmail.com>2018-03-09 18:47:51 +0100
committerAnders Broman <a.broman58@gmail.com>2018-03-09 19:37:42 +0000
commit66a1fefac416136b96b7a1683293d6a06f5c00e8 (patch)
tree58134513fab2783d3a379411fa42c0753b2366fa /epan
parent190b2e89c3767b3a5b87afc58d45d58d5d848f27 (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.c14
-rw-r--r--epan/dissectors/packet-kerberos.c20
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[] = {