summaryrefslogtreecommitdiffstats
path: root/epan/dissectors/pidl/browser
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-09-19 04:14:53 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-09-19 04:14:53 +0000
commita86c5f7cae7ec9a3398300555a0b644689d946a1 (patch)
tree39fe4b107c71174fd1e8a8ceb9a4d2aa14116248 /epan/dissectors/pidl/browser
parentReleasing progress-linux version 4.2.6-1~progress7.99u1. (diff)
downloadwireshark-a86c5f7cae7ec9a3398300555a0b644689d946a1.tar.xz
wireshark-a86c5f7cae7ec9a3398300555a0b644689d946a1.zip
Merging upstream version 4.4.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'epan/dissectors/pidl/browser')
-rw-r--r--epan/dissectors/pidl/browser/browser.cnf8
-rw-r--r--epan/dissectors/pidl/browser/browser.idl194
2 files changed, 202 insertions, 0 deletions
diff --git a/epan/dissectors/pidl/browser/browser.cnf b/epan/dissectors/pidl/browser/browser.cnf
new file mode 100644
index 00000000..e35c861a
--- /dev/null
+++ b/epan/dissectors/pidl/browser/browser.cnf
@@ -0,0 +1,8 @@
+# Conformance file for Browser
+
+# Avoid conflict with SMB Browser
+PROTOCOL browser "RPC Browser" "RPC_BROWSER" "rpc_browser"
+
+IMPORT srvsvc_NetSrvInfo100 offset = srvsvc_dissect_struct_NetSrvInfo100(tvb, offset, pinfo, tree, di, drep, hf_browser_BrowserrSrvInfo100Ctr_entries, 0);
+
+IMPORT srvsvc_NetSrvInfo101 offset = srvsvc_dissect_struct_NetSrvInfo101(tvb, offset, pinfo, tree, di, drep, hf_browser_BrowserrSrvInfo100Ctr_entries, 0);
diff --git a/epan/dissectors/pidl/browser/browser.idl b/epan/dissectors/pidl/browser/browser.idl
new file mode 100644
index 00000000..e2d1a2df
--- /dev/null
+++ b/epan/dissectors/pidl/browser/browser.idl
@@ -0,0 +1,194 @@
+import "srvsvc.idl";
+
+[
+ uuid("6bffd098-a112-3610-9833-012892020162"),
+ version(0.0),
+ helpstring("Browsing"),
+ pointer_default(unique),
+ endpoint("ncacn_np:[\\pipe\\browser]", "ncacn_ip_tcp:", "ncalrpc:")
+] interface browser
+{
+
+ /******************/
+ /* Function 0x00 */
+
+ WERROR BrowserrServerEnum(
+ [in,unique] [string,charset(UTF16)] uint16 *unknown1,
+ [in,unique] [string,charset(UTF16)] uint16 *unknown2,
+ [in,unique] [string,charset(UTF16)] uint16 *unknown3,
+ [in,out,ref] BrowserrSrvInfo *info,
+ [in] long unknown4,
+ [out] long *unknown5,
+ [in] long unknown6,
+ [in,unique] [string,charset(UTF16)] uint16 *unknown7,
+ [in,out] [unique] long *unknown8
+ );
+
+ /******************/
+ /* Function 0x01 */
+
+ WERROR BrowserrDebugCall(
+ [in,unique] [string,charset(UTF16)] uint16 *unknown1,
+ [in] long unknown2,
+ [in] long unknown3
+ );
+
+ /******************/
+ /* Function 0x02 */
+
+ typedef struct {
+ uint32 entries_read;
+ [size_is(entries_read)] srvsvc_NetSrvInfo100 *entries;
+ } BrowserrSrvInfo100Ctr;
+
+ typedef struct {
+ uint32 entries_read;
+ [size_is(entries_read)] srvsvc_NetSrvInfo101 *entries;
+ } BrowserrSrvInfo101Ctr;
+
+ typedef [switch_type(uint32)] union {
+ [case(100)] [unique] BrowserrSrvInfo100Ctr *info100;
+ [case(101)] [unique] BrowserrSrvInfo101Ctr *info101;
+ [default] ;
+ } BrowserrSrvInfoUnion;
+
+ typedef struct {
+ uint32 level;
+ [switch_is(level)] BrowserrSrvInfoUnion info;
+ } BrowserrSrvInfo;
+
+ WERROR BrowserrQueryOtherDomains(
+ [in,unique] [string,charset(UTF16)] uint16 *server_unc,
+ [in,out,ref] BrowserrSrvInfo *info,
+ [out,ref] uint32 *total_entries
+ );
+
+ /******************/
+ /* Function 0x03 */
+
+ WERROR BrowserrResetNetlogonState(
+ [in,unique] [string,charset(UTF16)] uint16 *unknown
+ );
+
+ /******************/
+ /* Function 0x04 */
+
+ WERROR BrowserrDebugTrace(
+ [in,unique] [string,charset(UTF16)] uint16 *unknown1,
+ [in] [string] char *unknown2
+ );
+
+ /******************/
+ /* Function 0x05 */
+
+ typedef struct {
+ hyper unknown;
+ } TYPE_1;
+
+ typedef struct {
+ TYPE_1 unknown1;
+ TYPE_1 unknown2;
+ TYPE_1 unknown3;
+ long unknown4;
+ long unknown5;
+ long unknown6;
+ long unknown7;
+ long unknown8;
+ long unknown9;
+ long unknown10;
+ long unknown11;
+ long unknown12;
+ long unknown13;
+ long unknown14;
+ long unknown15;
+ long unknown16;
+ long unknown17;
+ long unknown18;
+ TYPE_1 unknown19;
+ } TYPE_2;
+
+ WERROR BrowserrQueryStatistics(
+ [in,unique] [string,charset(UTF16)] uint16 *unknown1,
+ [out] [ref] TYPE_2 **unknown2
+ );
+
+ /******************/
+ /* Function 0x06 */
+
+ WERROR BrowserrResetStatistics(
+ [in,unique] [string,charset(UTF16)] uint16 *unknown
+ );
+
+ /******************/
+ /* Function 0x07 */
+
+ WERROR NetrBrowserStatisticsClear(
+ [in,unique] [string,charset(UTF16)] uint16 *unknown
+ );
+
+ typedef struct {
+ TYPE_1 unknown1;
+ TYPE_1 unknown2;
+ TYPE_1 unknown3;
+ long unknown4;
+ long unknown5;
+ long unknown6;
+ TYPE_1 unknown7;
+ long unknown8;
+ long unknown9;
+ long unknown10;
+ long unknown11;
+ long unknown12;
+ long unknown13;
+ long unknown14;
+ long unknown15;
+ long unknown16;
+ } TYPE_3;
+
+ /******************/
+ /* Function 0x08 */
+
+ WERROR NetrBrowserStatisticsGet(
+ [in,unique] [string,charset(UTF16)] uint16 *unknown1,
+ [in] long unknown2,
+ [in,out] [ref] BrowserrSrvInfo *unknown3
+ );
+
+ /******************/
+ /* Function 0x09 */
+
+ WERROR BrowserrSetNetlogonState(
+ [in,unique] [string,charset(UTF16)] uint16 *unknown1,
+ [in,ref] [string,charset(UTF16)] uint16 *unknown2,
+ [in,unique] [string,charset(UTF16)] uint16 *unknown3,
+ [in] long unknown4
+ );
+
+ /******************/
+ /* Function 0x0a */
+
+ typedef struct {
+ long unknown1;
+ [size_is(unknown82)] [unique] uint8 *unknown2;
+ } TYPE_4;
+
+ WERROR BrowserrQueryEmulatedDomains(
+ [in,unique] [string,charset(UTF16)] uint16 *unknown1,
+ [in,out] [ref] TYPE_4 *unknown2
+ );
+
+ /******************/
+ /* Function 0x0b */
+
+ WERROR BrowserrServerEnumEx(
+ [in,unique] [string,charset(UTF16)] uint16 *unknown1,
+ [in,unique] [string,charset(UTF16)] uint16 *unknown2,
+ [in,unique] [string,charset(UTF16)] uint16 *unknown3,
+ [in,out,ref] BrowserrSrvInfo *info,
+ [in] long unknown4,
+ [out] long *unknown5,
+ [in] long unknown6,
+ [in,unique] [string,charset(UTF16)] uint16 *unknown7,
+ [in,unique] [string,charset(UTF16)] uint16 *unknown8
+ );
+}