aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2012-08-13 08:59:22 +0200
committerAlexis La Goutte <alexis.lagoutte@gmail.com>2014-02-25 21:47:10 +0000
commit98e6bb18d3f0a2bdbedb058fca7cdc4289c3fc68 (patch)
treeff04f2b06dbb8cff0a67d873e02424fe0c39f8f5
parentd5c437e8e575006a4dbc3aa9574fd8261f4c87a0 (diff)
asn1/kerberos: remember in what frame a key was learned
Change-Id: I8e64e1d02ee8b4dff3845e1b9ec8f56174e76fbf Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-on: https://code.wireshark.org/review/363 Reviewed-by: Evan Huus <eapache@gmail.com> Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
-rw-r--r--asn1/kerberos/packet-kerberos-template.c3
-rw-r--r--asn1/kerberos/packet-kerberos-template.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/asn1/kerberos/packet-kerberos-template.c b/asn1/kerberos/packet-kerberos-template.c
index 30e333821a..8347a02055 100644
--- a/asn1/kerberos/packet-kerberos-template.c
+++ b/asn1/kerberos/packet-kerberos-template.c
@@ -249,6 +249,7 @@ printf("added key in %u keytype:%d len:%d\n",pinfo->fd->num, keytype, keyleng
new_key=(enc_key_t *)g_malloc(sizeof(enc_key_t));
g_snprintf(new_key->key_origin, KRB_MAX_ORIG_LEN, "%s learnt from frame %u",origin,pinfo->fd->num);
+ new_key->fd_num = pinfo->fd->num;
new_key->next=enc_key_list;
enc_key_list=new_key;
new_key->keytype=keytype;
@@ -304,6 +305,7 @@ printf("read keytab file %s\n", 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){
@@ -439,6 +441,7 @@ read_keytab_file(const char *filename)
do{
new_key=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){
diff --git a/asn1/kerberos/packet-kerberos-template.h b/asn1/kerberos/packet-kerberos-template.h
index 8d9e4e56fa..4fd5f3b363 100644
--- a/asn1/kerberos/packet-kerberos-template.h
+++ b/asn1/kerberos/packet-kerberos-template.h
@@ -73,6 +73,7 @@ typedef struct _enc_key_t {
int keylength;
char *keyvalue;
char key_origin[KRB_MAX_ORIG_LEN+1];
+ int fd_num; /* remember where we learned a key */
} enc_key_t;
extern enc_key_t *enc_key_list;