diff options
author | wmeier <wmeier@f5534014-38df-0310-8fa8-9805f1628bb7> | 2010-01-01 17:11:38 +0000 |
---|---|---|
committer | wmeier <wmeier@f5534014-38df-0310-8fa8-9805f1628bb7> | 2010-01-01 17:11:38 +0000 |
commit | 915d3a2caa3c79aae9d0a5154de8152758123641 (patch) | |
tree | cedfa7e818a8267db3a4101f3310e4eb8c2c5160 /epan/dissectors/packet-kerberos.c | |
parent | e48e9d45a82af3d76f62154f59a671847bfb4d86 (diff) |
Fix Bug #4363: wireshark decodes kerberos AS-REQ PADATA incorrectly.
See https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4363
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@31400 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'epan/dissectors/packet-kerberos.c')
-rw-r--r-- | epan/dissectors/packet-kerberos.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/epan/dissectors/packet-kerberos.c b/epan/dissectors/packet-kerberos.c index 21d9e203e2..11611a2068 100644 --- a/epan/dissectors/packet-kerberos.c +++ b/epan/dissectors/packet-kerberos.c @@ -1088,12 +1088,13 @@ g_warning("woohoo decrypted keytype:%d in frame:%u\n", keytype, pinfo->fd->num); #define KRB5_TD_REQ_NONCE 107 #define KRB5_TD_REQ_SEQ 108 /* preauthentication types >127 (i.e. negative ones) are app specific. - hopefully there will be no collissions here or we will have to - come up with something better + Hopefully there will be no collisions here or we will have to + come up with something better. + Note: These values are compared against 32-bit values in the code. */ -#define KRB5_PA_PAC_REQUEST 128 /* MS extension */ -#define KRB5_PA_S4U2SELF 129 /* Impersonation (Microsoft extension) */ -#define KRB5_PA_PROV_SRV_LOCATION 255 /* packetcable stuff */ +#define KRB5_PA_PAC_REQUEST -128 /* = 0xFFFFFF80 = (gint32)((gint8)0x80) MS extension */ +#define KRB5_PA_S4U2SELF -127 /* = 0xFFFFFF81 = (gint32)((gint8)0x81) Impersonation (Microsoft extension) */ +#define KRB5_PA_PROV_SRV_LOCATION -1 /* = 0xFFFFFFFF = (gint32)((gint8)0xFF) packetcable stuff */ /* Principal name-type */ #define KRB5_NT_UNKNOWN 0 @@ -2321,7 +2322,6 @@ static int dissect_krb5_PA_DATA_type(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_) { offset=dissect_ber_integer(FALSE, actx, tree, tvb, offset, hf_krb_PA_DATA_type, &krb_PA_DATA_type); - krb_PA_DATA_type&=0xff; /*this is really just one single byte */ if(tree){ proto_item_append_text(tree, " %s", @@ -5141,7 +5141,7 @@ proto_register_kerberos(void) "Signature", "kerberos.pac.signature.signature", FT_BYTES, BASE_NONE, NULL, 0, "A PAC signature blob", HFILL }}, { &hf_krb_PA_DATA_type, { - "Type", "kerberos.padata.type", FT_UINT32, BASE_DEC, + "Type", "kerberos.padata.type", FT_INT8, BASE_DEC, VALS(krb5_preauthentication_types), 0, "Type of preauthentication data", HFILL }}, { &hf_krb_nonce, { "Nonce", "kerberos.nonce", FT_UINT32, BASE_DEC, |