diff options
author | Richard Sharpe <sharpe@ns.aus.com> | 2003-05-25 00:59:15 +0000 |
---|---|---|
committer | Richard Sharpe <sharpe@ns.aus.com> | 2003-05-25 00:59:15 +0000 |
commit | 0d582042e315947663bb71e09692bc13c72377c5 (patch) | |
tree | da52a9dd19bcfd8b992d06002421616d2c920419 /packet-spnego.c | |
parent | 52ea4be2f1698920cd3000b8af513894366a1623 (diff) | |
download | wireshark-0d582042e315947663bb71e09692bc13c72377c5.tar.gz wireshark-0d582042e315947663bb71e09692bc13c72377c5.tar.bz2 wireshark-0d582042e315947663bb71e09692bc13c72377c5.zip |
Add the reqFlags decode ...
svn path=/trunk/; revision=7738
Diffstat (limited to 'packet-spnego.c')
-rw-r--r-- | packet-spnego.c | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/packet-spnego.c b/packet-spnego.c index b53ed3f4fd..eb7cee98a9 100644 --- a/packet-spnego.c +++ b/packet-spnego.c @@ -5,7 +5,7 @@ * Copyright 2002, Richard Sharpe <rsharpe@ns.aus.com> * Copyright 2003, Richard Sharpe <rsharpe@richardsharpe.com> * - * $Id: packet-spnego.c,v 1.47 2003/05/25 00:36:30 sharpe Exp $ + * $Id: packet-spnego.c,v 1.48 2003/05/25 00:59:15 sharpe Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs <gerald@ethereal.com> @@ -93,6 +93,7 @@ static gint ett_spnego_mechlistmic = -1; static gint ett_spnego_responsetoken = -1; static gint ett_spnego_wraptoken = -1; static gint ett_spnego_krb5 = -1; +static gint ett_spnego_reqflags = -1; static const value_string spnego_negResult_vals[] = { { SPNEGO_negResult_accept_completed, "Accept Completed" }, @@ -661,8 +662,10 @@ dissect_spnego_reqFlags(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, ASN1_SCK *hnd) { gboolean def; - guint len1, cls, con, tag; + guint len1, cls, con, tag, flags; int ret; + proto_item *item; + proto_tree *subtree; ret = asn1_header_decode(hnd, &cls, &con, &tag, &def, &len1); @@ -684,8 +687,24 @@ dissect_spnego_reqFlags(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, offset = hnd->offset; - proto_tree_add_item(tree, hf_spnego_reqflags, tvb, offset, len1, - FALSE); + flags = tvb_get_guint8(tvb, offset); + + item = proto_tree_add_item(tree, hf_spnego_reqflags, tvb, offset, len1, + FALSE); + + subtree = proto_item_add_subtree(item, ett_spnego_reqflags); + + /* + * Now, the bits. XXX: Assume 8 bits. FIXME. + */ + + proto_tree_add_boolean(subtree, hf_gssapi_reqflags_deleg, tvb, offset, len1, flags); + proto_tree_add_boolean(subtree, hf_gssapi_reqflags_mutual, tvb, offset, len1, flags); + proto_tree_add_boolean(subtree, hf_gssapi_reqflags_replay, tvb, offset, len1, flags); + proto_tree_add_boolean(subtree, hf_gssapi_reqflags_sequence, tvb, offset, len1, flags); + proto_tree_add_boolean(subtree, hf_gssapi_reqflags_anon, tvb, offset, len1, flags); + proto_tree_add_boolean(subtree, hf_gssapi_reqflags_conf, tvb, offset, len1, flags); + proto_tree_add_boolean(subtree, hf_gssapi_reqflags_integ, tvb, offset, len1, flags); hnd->offset += len1; |