aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors
diff options
context:
space:
mode:
authorRobert Grange <robionekenobi@bluewin.ch>2018-08-15 17:08:34 +0200
committerAnders Broman <a.broman58@gmail.com>2018-08-16 09:25:52 +0000
commit203c3f511f79b4b8e1a0401ebd1b7d05dc621823 (patch)
treef41f5b4bd2c9f6b99158363c293b778c88ec7d83 /epan/dissectors
parent0b297ce308c36ef1a0d10fcc976fe5d0436b25c1 (diff)
packet-mq: Fix LPOO Strucxt + Add MQV91 Def
Add MQ V9.1 Def Fix LPOO Struct Display Change-Id: I14ff534b7117e65dcc4b096aa478c0c16a863f67 Reviewed-on: https://code.wireshark.org/review/29153 Petri-Dish: Anders Broman <a.broman58@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/dissectors')
-rw-r--r--epan/dissectors/packet-mq-base.c3
-rw-r--r--epan/dissectors/packet-mq.c20
-rw-r--r--epan/dissectors/packet-mq.h14
3 files changed, 24 insertions, 13 deletions
diff --git a/epan/dissectors/packet-mq-base.c b/epan/dissectors/packet-mq-base.c
index cb9af32a90..0318920b9a 100644
--- a/epan/dissectors/packet-mq-base.c
+++ b/epan/dissectors/packet-mq-base.c
@@ -1023,6 +1023,7 @@ DEF_VALSB(MQLDAP_AUTHORMD)
/* 0*/ DEF_VALS1(MQLDAP_AUTHORMD_OS),
/* 1*/ DEF_VALS1(MQLDAP_AUTHORMD_SEARCHGRP),
/* 2*/ DEF_VALS1(MQLDAP_AUTHORMD_SEARCHUSR),
+/* 3*/ DEF_VALS1(MQLDAP_AUTHORMD_SRCHGRPSN),
DEF_VALSE;
DEF_VALSB(MQLDAP_NESTGRP)
@@ -2603,6 +2604,7 @@ DEF_VALSB(MQRC)
/* 3379*/ DEF_VALS1(MQRCCF_LOG_EXTENT_NOT_FOUND),
/* 3380*/ DEF_VALS1(MQRCCF_LOG_NOT_REDUCED),
/* 3381*/ DEF_VALS1(MQRCCF_LOG_EXTENT_ERROR),
+/* 3382*/ DEF_VALS1(MQRCCF_ACCESS_BLOCKED),
/* 4001*/ DEF_VALS1(MQRCCF_OBJECT_ALREADY_EXISTS),
/* 4002*/ DEF_VALS1(MQRCCF_OBJECT_WRONG_TYPE),
/* 4003*/ DEF_VALS1(MQRCCF_LIKE_OBJECT_WRONG_TYPE),
@@ -2724,6 +2726,7 @@ DEF_VALSB(MQRC)
/* 6128*/ DEF_VALS1(MQRC_WRONG_VERSION),
/* 6129*/ DEF_VALS1(MQRC_REFERENCE_ERROR),
/* 6130*/ DEF_VALS1(MQRC_XR_NOT_AVAILABLE),
+/*29440*/ DEF_VALS1(MQRC_SUB_JOIN_NOT_ALTERABLE),
DEF_VALSE;
DEF_VALS_EXTBX(MQRC);
diff --git a/epan/dissectors/packet-mq.c b/epan/dissectors/packet-mq.c
index c3106072e8..4aa45105e4 100644
--- a/epan/dissectors/packet-mq.c
+++ b/epan/dissectors/packet-mq.c
@@ -614,14 +614,13 @@ static const int *pf_flds_mtchopt[] =
static int hf_mq_lpoo_StructID = -1;
static int hf_mq_lpoo_version = -1;
-static int hf_mq_lpoo_options = -1;
+static int hf_mq_lpoo_lpivers = -1;
static int hf_mq_lpoo_lpiopts = -1;
static int hf_mq_lpoo_defpersist = -1;
static int hf_mq_lpoo_defputresptype = -1;
static int hf_mq_lpoo_defreadahead = -1;
static int hf_mq_lpoo_propertyctl = -1;
static int hf_mq_lpoo_qprotect = -1;
-static int hf_mq_lpoo_unknown6 = -1;
static int hf_mq_lpoo_xtradata = -1;
static int hf_mq_lpoo_lpiopts_SAVE_IDENTITY_CTXT = -1;
@@ -993,7 +992,6 @@ static gint ett_mq_rfh_ValueName = -1;
static gint ett_mq_msgreq_RqstFlags = -1;
static gint ett_mq_lpoo = -1;
-static gint ett_mq_lpoo_options = -1;
static gint ett_mq_lpoo_lpiopts = -1;
static gint ett_mq_head = -1; /* Factorisation of common Header structure items (DH, MDE, CIH, IIH, RFH, RMH, WIH, TM, TMC2 */
@@ -2958,7 +2956,7 @@ static void dissect_mq_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
guint iXtraData = 0;
gint iSize = 32;
iVersion = tvb_get_guint32(tvb, offset + 4, p_mq_parm->mq_int_enc);
- if (iVersion >= 3)
+ if (iVersion >= 1)
{
iSize += 56;
iXtraData = tvb_get_guint32(tvb, offset + 84, p_mq_parm->mq_int_enc);
@@ -2970,18 +2968,18 @@ static void dissect_mq_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
proto_tree_add_item(mq_tree, hf_mq_lpoo_StructID, tvb, offset, 4, p_mq_parm->mq_str_enc);
proto_tree_add_item(mq_tree, hf_mq_lpoo_version, tvb, offset + 4, 4, p_mq_parm->mq_int_enc);
-
- dissect_mq_MQOO(tvb, mq_tree, offset + 8, ett_mq_lpoo_options, hf_mq_lpoo_options, p_mq_parm);
-
+ proto_tree_add_item(mq_tree, hf_mq_lpoo_lpivers, tvb, offset + 8, 4, p_mq_parm->mq_int_enc);
dissect_mq_LPOO_LPIOPTS(tvb, mq_tree, offset + 12, ett_mq_lpoo_lpiopts, p_mq_parm);
+
proto_tree_add_item(mq_tree, hf_mq_lpoo_defpersist, tvb, offset + 16, 4, p_mq_parm->mq_int_enc);
proto_tree_add_item(mq_tree, hf_mq_lpoo_defputresptype, tvb, offset + 20, 4, p_mq_parm->mq_int_enc);
proto_tree_add_item(mq_tree, hf_mq_lpoo_defreadahead, tvb, offset + 24, 4, p_mq_parm->mq_int_enc);
proto_tree_add_item(mq_tree, hf_mq_lpoo_propertyctl, tvb, offset + 28, 4, p_mq_parm->mq_int_enc);
- if (iVersion >= 3)
+
+ if (iVersion >= 1)
{
proto_tree_add_item(mq_tree, hf_mq_lpoo_qprotect, tvb, offset + 32, 48, p_mq_parm->mq_int_enc);
- proto_tree_add_item(mq_tree, hf_mq_lpoo_unknown6, tvb, offset + 80, 4, p_mq_parm->mq_int_enc);
+ dissect_mq_MQOO(tvb, mq_tree, offset + 80, ett_mq_open_option, hf_mq_open_options, p_mq_parm);
proto_tree_add_item(mq_tree, hf_mq_lpoo_xtradata, tvb, offset + 84, 4, p_mq_parm->mq_int_enc);
}
offset += iSize;
@@ -4216,7 +4214,7 @@ void proto_register_mq(void)
{ &hf_mq_lpoo_StructID , {"StructID......", "mq.lpoo.structid", FT_STRINGZ, BASE_NONE, NULL, 0x0, NULL, HFILL }},
{ &hf_mq_lpoo_version , {"Version.......", "mq.lpoo.version", FT_UINT32, BASE_DEC, NULL, 0x0, "LPOO version", HFILL }},
- { &hf_mq_lpoo_options , {"Options.......", "mq.lpoo.options", FT_UINT32, BASE_HEX, NULL, 0x0, "LPOO options", HFILL }},
+ { &hf_mq_lpoo_lpivers , {"LpiVersion....", "mq.lpoo.lpivers", FT_UINT32, BASE_HEX, NULL, 0x0, "LPOO Lpi Version", HFILL }},
{ &hf_mq_lpoo_lpiopts , {"LpiOpts.......", "mq.lpoo.lpioopts", FT_UINT32, BASE_HEX, NULL, 0x0, "LPOO Lpi Options", HFILL }},
{ &hf_mq_lpoo_lpiopts_SAVE_USER_CTXT , {"SAVE_USER_CTXT", "mq.lpoo.opts.SAVE_USER_CTXT", FT_BOOLEAN, 32, TFS(&tfs_set_notset), MQ_LPOO_SAVE_USER_CTXT, "LPOO options SAVE_USER_CTXT", HFILL }},
@@ -4228,7 +4226,6 @@ void proto_register_mq(void)
{ &hf_mq_lpoo_defreadahead , {"DefReadAHead..", "mq.lpoo.defreadahead", FT_INT32, BASE_DEC, VALS(GET_VALSV(MQREADA)), 0x0, "LPOO Default Read AHead", HFILL }},
{ &hf_mq_lpoo_propertyctl , {"PropertyCtl...", "mq.lpoo.propertyctl", FT_INT32, BASE_DEC, NULL, 0x0, "LPOO Property Control", HFILL}},
{ &hf_mq_lpoo_qprotect , {"qprotect......", "mq.lpoo.qprotect", FT_STRINGZ, BASE_NONE, NULL, 0x0, "LPOO queue protection", HFILL }},
- { &hf_mq_lpoo_unknown6 , {"Unknown6......", "mq.lpoo.unknown6", FT_UINT32, BASE_HEX, NULL, 0x0, "LPOO unknown6", HFILL }},
{ &hf_mq_lpoo_xtradata , {"ExtraData.....", "mq.lpoo.extradata", FT_INT32, BASE_DEC, NULL, 0x0, "LPOO Extra Data", HFILL }},
{ &hf_mq_pmo_StructID , {"StructID...", "mq.pmo.structid", FT_STRINGZ, BASE_NONE, NULL, 0x0, NULL, HFILL }},
@@ -4478,7 +4475,6 @@ void proto_register_mq(void)
&ett_mq_fcno,
&ett_mq_fopa,
&ett_mq_lpoo,
- &ett_mq_lpoo_options,
&ett_mq_lpoo_lpiopts,
&ett_mq_head,
&ett_mq_head_flags,
diff --git a/epan/dissectors/packet-mq.h b/epan/dissectors/packet-mq.h
index 69b4bfc45c..ab7c593ddc 100644
--- a/epan/dissectors/packet-mq.h
+++ b/epan/dissectors/packet-mq.h
@@ -1057,6 +1057,10 @@ typedef struct _mq_parm_t
#define MQ_MQACTT_WINDOWS_DEFAULT '\x09'
#define MQ_MQACTT_NT_SECURITY_ID '\x0B'
#define MQ_MQACTT_USER '\x19'
+#define MQ_MQACTT_AZUREAD_SECURITY_ID '\x0C'
+#define MQ_MQACTT_MS_ACC_AUTH_SECURITY_ID '\x0D'
+#define MQ_MQACTT_USER '\x19'
+
/* Put Application Types */
#define MQ_MQAT_UNKNOWN (-1)
@@ -1986,6 +1990,7 @@ typedef struct _mq_parm_t
#define MQ_MQRC_WRONG_VERSION 6128
#define MQ_MQRC_REFERENCE_ERROR 6129
#define MQ_MQRC_XR_NOT_AVAILABLE 6130
+#define MQ_MQRC_SUB_JOIN_NOT_ALTERABLE 29440
/****************************************************************/
/* Values Related to Queue Attributes */
@@ -2201,7 +2206,11 @@ typedef struct _mq_parm_t
#define MQ_MQCMDL_LEVEL_900 900
#define MQ_MQCMDL_LEVEL_901 901
#define MQ_MQCMDL_LEVEL_902 902
-#define MQ_MQCMDL_CURRENT_LEVEL 902
+#define MQ_MQCMDL_LEVEL_903 903
+#define MQ_MQCMDL_LEVEL_904 904
+#define MQ_MQCMDL_LEVEL_905 905
+#define MQ_MQCMDL_LEVEL_910 910
+#define MQ_MQCMDL_CURRENT_LEVEL 910
/* Key reuse count */
#define MQ_MQKEY_REUSE_DISABLED 0
@@ -2704,6 +2713,7 @@ typedef struct _mq_parm_t
#define MQ_MQIA_ADOPTNEWMCA_INTERVAL 104
#define MQ_MQIA_ADOPTNEWMCA_TYPE 103
#define MQ_MQIA_ADOPT_CONTEXT 260
+#define MQ_MQIA_ADVANCED_CAPABILITY 273
#define MQ_MQIA_AMQP_CAPABILITY 265
#define MQ_MQIA_APPL_TYPE 1
#define MQ_MQIA_ARCHIVE 60
@@ -3504,6 +3514,7 @@ typedef struct _mq_parm_t
#define MQ_MQRCCF_LOG_EXTENT_NOT_FOUND 3379
#define MQ_MQRCCF_LOG_NOT_REDUCED 3380
#define MQ_MQRCCF_LOG_EXTENT_ERROR 3381
+#define MQ_MQRCCF_ACCESS_BLOCKED 3382
#define MQ_MQRCCF_OBJECT_ALREADY_EXISTS 4001
#define MQ_MQRCCF_OBJECT_WRONG_TYPE 4002
#define MQ_MQRCCF_LIKE_OBJECT_WRONG_TYPE 4003
@@ -5158,6 +5169,7 @@ typedef struct _mq_parm_t
#define MQ_MQLDAP_AUTHORMD_OS 0
#define MQ_MQLDAP_AUTHORMD_SEARCHGRP 1
#define MQ_MQLDAP_AUTHORMD_SEARCHUSR 2
+#define MQ_MQLDAP_AUTHORMD_SRCHGRPSN 3
/* LDAP Nested Group Policy */
#define MQ_MQLDAP_NESTGRP_NO 0