summaryrefslogtreecommitdiff
path: root/source3/librpc
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2014-06-23 12:17:04 +0200
committerMichael Adam <obnox@samba.org>2016-01-26 15:58:11 +0100
commitbae1b9401c8821c9222d67355d96038937a6193b (patch)
tree592d321e6ed23a7b54167a17c6ac8ac28daa8b30 /source3/librpc
parent5e91bf0337073a509c67d8819dea6d00dd6e7fb0 (diff)
downloadsamba-bae1b9401c8821c9222d67355d96038937a6193b.tar.gz
idl:smbXsrv: add smbXsrv_client_global structures
This is for marshalling smbXsrv_client. Pair-Programmed-With: Michael Adam <obnox@samba.org> Signed-off-by: Stefan Metzmacher <metze@samba.org> Signed-off-by: Michael Adam <obnox@samba.org>
Diffstat (limited to 'source3/librpc')
-rw-r--r--source3/librpc/idl/smbXsrv.idl44
1 files changed, 44 insertions, 0 deletions
diff --git a/source3/librpc/idl/smbXsrv.idl b/source3/librpc/idl/smbXsrv.idl
index 5fc36031adf..69aa8fe2e86 100644
--- a/source3/librpc/idl/smbXsrv.idl
+++ b/source3/librpc/idl/smbXsrv.idl
@@ -79,10 +79,39 @@ interface smbXsrv
/* client */
+ typedef struct {
+ [ignore] db_record *db_rec;
+ server_id server_id;
+ [charset(UTF8),string] char local_address[];
+ [charset(UTF8),string] char remote_address[];
+ [charset(UTF8),string] char remote_name[];
+ NTTIME initial_connect_time;
+ GUID client_guid;
+ boolean8 stored;
+ } smbXsrv_client_global0;
+
+ typedef union {
+ [case(0)] smbXsrv_client_global0 *info0;
+ [default] hyper *dummy;
+ } smbXsrv_client_globalU;
+
typedef [public] struct {
+ smbXsrv_version_values version;
+ uint32 seqnum;
+ [switch_is(version)] smbXsrv_client_globalU info;
+ } smbXsrv_client_globalB;
+
+ void smbXsrv_client_global_decode(
+ [in] smbXsrv_client_globalB blob
+ );
+
+ typedef [public] struct {
+ [ignore] smbXsrv_client_table *table;
[ignore] struct tevent_context *ev_ctx;
[ignore] struct messaging_context *msg_ctx;
+ [ref] smbXsrv_client_global0 *global;
+
/*
* There's just one 'sconn' per client.
* It holds the FSA layer details, which are global
@@ -115,6 +144,21 @@ interface smbXsrv
boolean8 server_multi_channel_enabled;
} smbXsrv_client;
+ typedef union {
+ [case(0)] smbXsrv_client *info0;
+ [default] hyper *dummy;
+ } smbXsrv_clientU;
+
+ typedef [public] struct {
+ smbXsrv_version_values version;
+ [value(0)] uint32 reserved;
+ [switch_is(version)] smbXsrv_clientU info;
+ } smbXsrv_clientB;
+
+ void smbXsrv_client_decode(
+ [in] smbXsrv_clientB blob
+ );
+
/* sessions */
typedef [public,bitmap8bit] bitmap {