summaryrefslogtreecommitdiffstats
path: root/epan/dissectors/pidl/iwbemlevel1login
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-10 20:34:10 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-10 20:34:10 +0000
commite4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc (patch)
tree68cb5ef9081156392f1dd62a00c6ccc1451b93df /epan/dissectors/pidl/iwbemlevel1login
parentInitial commit. (diff)
downloadwireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.tar.xz
wireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.zip
Adding upstream version 4.2.2.upstream/4.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'epan/dissectors/pidl/iwbemlevel1login')
-rw-r--r--epan/dissectors/pidl/iwbemlevel1login/iwbemlevel1login.cnf170
-rw-r--r--epan/dissectors/pidl/iwbemlevel1login/iwbemlevel1login.idl84
2 files changed, 254 insertions, 0 deletions
diff --git a/epan/dissectors/pidl/iwbemlevel1login/iwbemlevel1login.cnf b/epan/dissectors/pidl/iwbemlevel1login/iwbemlevel1login.cnf
new file mode 100644
index 0000000..1fd19e0
--- /dev/null
+++ b/epan/dissectors/pidl/iwbemlevel1login/iwbemlevel1login.cnf
@@ -0,0 +1,170 @@
+# Conformance file for iwbemlevel1login
+
+MANUAL IWbemLevel1Login_dissect_element_EstablishPosition_orpcthis
+MANUAL IWbemLevel1Login_dissect_element_EstablishPosition_orpcthat_
+MANUAL IWbemLevel1Login_dissect_element_RequestChallenge_orpcthis
+MANUAL IWbemLevel1Login_dissect_element_RequestChallenge_orpcthat_
+MANUAL IWbemLevel1Login_dissect_element_WBEMLogin_orpcthis
+MANUAL IWbemLevel1Login_dissect_element_WBEMLogin_orpcthat_
+MANUAL IWbemLevel1Login_dissect_element_NTLMLogin_orpcthis
+MANUAL IWbemLevel1Login_dissect_element_NTLMLogin_orpcthat_
+MANUAL IWbemLevel1Login_dissect_element_IWbemServices_services
+
+NOEMIT IWbemLevel1Login_dissect_element_IWbemServices_services_
+
+ETT_FIELD ett_IWbemLevel1Login_EstablishPosition_orpcthis
+ETT_FIELD ett_IWbemLevel1Login_EstablishPosition_orpcthat
+ETT_FIELD ett_IWbemLevel1Login_RequestChallenge_orpcthis
+ETT_FIELD ett_IWbemLevel1Login_RequestChallenge_orpcthat
+ETT_FIELD ett_IWbemLevel1Login_WBEMLogin_orpcthis
+ETT_FIELD ett_IWbemLevel1Login_WBEMLogin_orpcthat
+ETT_FIELD ett_IWbemLevel1Login_NTLMLogin_orpcthis
+ETT_FIELD ett_IWbemLevel1Login_NTLMLogin_orpcthat
+
+CODE START
+
+ #include "packet-dcom.h"
+
+/* EstablishPosition */
+static int
+IWbemLevel1Login_dissect_element_EstablishPosition_orpcthis(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ proto_item *sub_item;
+ proto_tree *sub_tree;
+
+ sub_item = proto_tree_add_item(tree, hf_IWbemLevel1Login_EstablishPosition_orpcthis, tvb, offset, 0, ENC_NA);
+ sub_tree = proto_item_add_subtree(sub_item, ett_IWbemLevel1Login_EstablishPosition_orpcthis);
+
+ offset = dissect_dcom_this(tvb, offset, pinfo, sub_tree, di, drep);
+
+ return offset;
+}
+
+static int
+IWbemLevel1Login_dissect_element_EstablishPosition_orpcthat_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ proto_item *sub_item;
+ proto_tree *sub_tree;
+
+ sub_item = proto_tree_add_item(tree, hf_IWbemLevel1Login_EstablishPosition_orpcthat, tvb, offset, 0, ENC_NA);
+ sub_tree = proto_item_add_subtree(sub_item, ett_IWbemLevel1Login_EstablishPosition_orpcthat);
+
+ offset = dissect_dcom_that(tvb, offset, pinfo, sub_tree, di, drep);
+
+ return offset;
+}
+
+/* RequestChallenge */
+static int
+IWbemLevel1Login_dissect_element_RequestChallenge_orpcthis(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ proto_item *sub_item;
+ proto_tree *sub_tree;
+
+ sub_item = proto_tree_add_item(tree, hf_IWbemLevel1Login_RequestChallenge_orpcthis, tvb, offset, 0, ENC_NA);
+ sub_tree = proto_item_add_subtree(sub_item, ett_IWbemLevel1Login_RequestChallenge_orpcthis);
+
+ offset = dissect_dcom_this(tvb, offset, pinfo, sub_tree, di, drep);
+
+ return offset;
+}
+
+static int
+IWbemLevel1Login_dissect_element_RequestChallenge_orpcthat_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ proto_item *sub_item;
+ proto_tree *sub_tree;
+
+ sub_item = proto_tree_add_item(tree, hf_IWbemLevel1Login_RequestChallenge_orpcthat, tvb, offset, 0, ENC_NA);
+ sub_tree = proto_item_add_subtree(sub_item, ett_IWbemLevel1Login_RequestChallenge_orpcthat);
+
+ offset = dissect_dcom_that(tvb, offset, pinfo, sub_tree, di, drep);
+
+ return offset;
+}
+
+/* WBEMLogin */
+static int
+IWbemLevel1Login_dissect_element_WBEMLogin_orpcthis(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ proto_item *sub_item;
+ proto_tree *sub_tree;
+
+ sub_item = proto_tree_add_item(tree, hf_IWbemLevel1Login_WBEMLogin_orpcthis, tvb, offset, 0, ENC_NA);
+ sub_tree = proto_item_add_subtree(sub_item, ett_IWbemLevel1Login_WBEMLogin_orpcthis);
+
+ offset = dissect_dcom_this(tvb, offset, pinfo, sub_tree, di, drep);
+
+ return offset;
+}
+
+static int
+IWbemLevel1Login_dissect_element_WBEMLogin_orpcthat_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ proto_item *sub_item;
+ proto_tree *sub_tree;
+
+ sub_item = proto_tree_add_item(tree, hf_IWbemLevel1Login_WBEMLogin_orpcthat, tvb, offset, 0, ENC_NA);
+ sub_tree = proto_item_add_subtree(sub_item, ett_IWbemLevel1Login_WBEMLogin_orpcthat);
+
+ offset = dissect_dcom_that(tvb, offset, pinfo, sub_tree, di, drep);
+
+ return offset;
+}
+
+/* NTLMLogin */
+static int
+IWbemLevel1Login_dissect_element_NTLMLogin_orpcthis(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ proto_item *sub_item;
+ proto_tree *sub_tree;
+
+ sub_item = proto_tree_add_item(tree, hf_IWbemLevel1Login_NTLMLogin_orpcthis, tvb, offset, 0, ENC_NA);
+ sub_tree = proto_item_add_subtree(sub_item, ett_IWbemLevel1Login_NTLMLogin_orpcthis);
+
+ offset = dissect_dcom_this(tvb, offset, pinfo, sub_tree, di, drep);
+
+ return offset;
+}
+
+static int
+IWbemLevel1Login_dissect_element_NTLMLogin_orpcthat_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ proto_item *sub_item;
+ proto_tree *sub_tree;
+
+ sub_item = proto_tree_add_item(tree, hf_IWbemLevel1Login_NTLMLogin_orpcthat, tvb, offset, 0, ENC_NA);
+ sub_tree = proto_item_add_subtree(sub_item, ett_IWbemLevel1Login_NTLMLogin_orpcthat);
+
+ offset = dissect_dcom_that(tvb, offset, pinfo, sub_tree, di, drep);
+
+ return offset;
+}
+
+static int
+IWbemLevel1Login_dissect_element_IWbemServices_services_(tvbuff_t *tvb, int offset, int length _U_, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep _U_)
+;
+
+static int
+IWbemLevel1Login_dissect_element_IWbemServices_services(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray_block(tvb, offset, pinfo, tree, di, drep, &IWbemLevel1Login_dissect_element_IWbemServices_services_);
+
+ return offset;
+}
+
+static int
+IWbemLevel1Login_dissect_element_IWbemServices_services_(tvbuff_t *tvb, int offset, int length _U_, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep _U_)
+{
+ proto_item *sub_item;
+ proto_tree *sub_tree;
+
+ sub_item = proto_tree_add_item(tree, hf_IWbemLevel1Login_WBEMLogin_ppNamespace, tvb, offset, 0, ENC_NA);
+ sub_tree = proto_item_add_subtree(sub_item, ett_IWbemLevel1Login_IWbemServices);
+
+ offset = dissect_dcom_OBJREF(tvb, offset, pinfo, sub_tree, di, drep, hf_IWbemLevel1Login_WBEMLogin_ppNamespace, NULL);
+
+ return offset;
+}
+
+CODE END \ No newline at end of file
diff --git a/epan/dissectors/pidl/iwbemlevel1login/iwbemlevel1login.idl b/epan/dissectors/pidl/iwbemlevel1login/iwbemlevel1login.idl
new file mode 100644
index 0000000..7b0b00c
--- /dev/null
+++ b/epan/dissectors/pidl/iwbemlevel1login/iwbemlevel1login.idl
@@ -0,0 +1,84 @@
+#include "idl_types.h"
+
+/*
+ IWbemLevel1Login interface definitions
+*/
+[ uuid("f309ad18-d86a-11d0-a075-00c04fb68820"),
+ restricted,
+ pointer_default(unique)
+]
+interface IWbemLevel1Login
+{
+ /*****************/
+ /* Function 0x00 */
+ [todo] WERROR iwbemlevel1login_opnum0(
+ );
+
+ /*****************/
+ /* Function 0x01 */
+ [todo] WERROR iwbemlevel1login_opnum1(
+ );
+
+ /*****************/
+ /* Function 0x02 */
+ [todo] WERROR iwbemlevel1login_opnum2(
+ );
+
+ typedef [public] struct
+ {
+ } ORPCTHIS;
+
+ typedef [public] struct
+ {
+ } ORPCTHAT;
+
+ /*****************/
+ /* Function 0x03 */
+ WERROR EstablishPosition(
+ [in] ORPCTHIS orpcthis,
+ [in, unique, string, charset(UTF16)] uint16* reserved1,
+ [in] uint32 reserved2,
+ [out] ORPCTHAT* orpcthat,
+ [out] uint32* LocaleVersion
+ );
+
+ /*****************/
+ /* Function 0x04 */
+ WERROR RequestChallenge(
+ [in] ORPCTHIS orpcthis,
+ [in, unique, string, charset(UTF16)] uint16* reserved1,
+ [in, unique, string, charset(UTF16)] uint16* reserved2,
+ [out] ORPCTHAT* orpcthat,
+ [out, size_is(16), length_is(16)] uint8* reserved3
+ );
+
+ /*****************/
+ /* Function 0x05 */
+ WERROR WBEMLogin(
+ [in] ORPCTHIS orpcthis,
+ [in, unique, string, charset(UTF16)] uint16* reserved1,
+ [in, size_is(16), length_is(16), unique] uint8* reserved2,
+ [in] long reserved3,
+ [in] uint8* reserved4,
+ [out] ORPCTHAT* orpcthat,
+ [out, ref] IWbemServices **ppNamespace
+ );
+
+ typedef [flag(NDR_NOALIGN)] struct
+ {
+ uint32 count;
+ [size_is(count)] uint8 services[];
+ } IWbemServices;
+
+ /*****************/
+ /* Function 0x06 */
+ WERROR NTLMLogin(
+ [in] ORPCTHIS orpcthis,
+ [in, unique, string, charset(UTF16)] uint16* wszNetworkResource,
+ [in, unique, string, charset(UTF16)] uint16* wszPreferredLocale,
+ [in] long lFlags,
+ [in, unique] uint8* pCtx,
+ [out] ORPCTHAT* orpcthat,
+ [out, ref] IWbemServices **ppNamespace
+ );
+}; \ No newline at end of file