aboutsummaryrefslogtreecommitdiffstats
path: root/packet-spnego.c
diff options
context:
space:
mode:
authorRichard Sharpe <sharpe@ns.aus.com>2003-05-25 00:59:15 +0000
committerRichard Sharpe <sharpe@ns.aus.com>2003-05-25 00:59:15 +0000
commit0d582042e315947663bb71e09692bc13c72377c5 (patch)
treeda52a9dd19bcfd8b992d06002421616d2c920419 /packet-spnego.c
parent52ea4be2f1698920cd3000b8af513894366a1623 (diff)
Add the reqFlags decode ...
svn path=/trunk/; revision=7738
Diffstat (limited to 'packet-spnego.c')
-rw-r--r--packet-spnego.c27
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;