summaryrefslogtreecommitdiff
path: root/source4/librpc
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2004-11-20 18:51:58 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:06:02 -0500
commitd53fd3d8d5c99ae22a4d74065dc45e2f4e36a382 (patch)
tree905f747872a80efb45ce0d7d331429891bc00b2f /source4/librpc
parentf55ee60575576e2213b234f4690d7a300a8e362e (diff)
downloadsamba-d53fd3d8d5c99ae22a4d74065dc45e2f4e36a382.tar.gz
samba-d53fd3d8d5c99ae22a4d74065dc45e2f4e36a382.tar.bz2
samba-d53fd3d8d5c99ae22a4d74065dc45e2f4e36a382.zip
r3891: Add rot (Running Object Table) interface
(This used to be commit 4840eaeed3cfd72026babb382f26929c29702713)
Diffstat (limited to 'source4/librpc')
-rw-r--r--source4/librpc/config.mk13
-rw-r--r--source4/librpc/idl/rot.idl43
2 files changed, 55 insertions, 1 deletions
diff --git a/source4/librpc/config.mk b/source4/librpc/config.mk
index 276a146a94..82df55275e 100644
--- a/source4/librpc/config.mk
+++ b/source4/librpc/config.mk
@@ -72,6 +72,12 @@ INIT_OBJ_FILES = librpc/gen_ndr/ndr_misc.o
NOPROTO = YES
REQUIRED_SUBSYSTEMS = LIBNDR
+[SUBSYSTEM::NDR_ROT]
+INIT_FUNCTION = dcerpc_rot_init
+INIT_OBJ_FILES = librpc/gen_ndr/ndr_rot.o
+NOPROTO = YES
+REQUIRED_SUBSYSTEMS = LIBNDR
+
[SUBSYSTEM::NDR_LSA]
INIT_FUNCTION = dcerpc_lsa_init
INIT_OBJ_FILES = librpc/gen_ndr/ndr_lsa.o
@@ -289,8 +295,13 @@ REQUIRED_SUBSYSTEMS = NDR_AUDIOSRV NDR_ECHO NDR_DCERPC NDR_EXCHANGE \
NDR_EVENTLOG NDR_EPMAPPER NDR_DBGIDL NDR_DSSETUP NDR_MSGSVC NDR_WINS \
NDR_WINREG NDR_MGMT NDR_PROTECTED_STORAGE NDR_DCOM NDR_OXIDRESOLVER \
NDR_REMACT NDR_WZCSVC NDR_BROWSER NDR_W32TIME NDR_SCERPC NDR_NTSVCS \
- NDR_NETLOGON NDR_TRKWKS NDR_KEYSVC NDR_KRB5PAC NDR_XATTR NDR_SCHANNEL
+ NDR_NETLOGON NDR_TRKWKS NDR_KEYSVC NDR_KRB5PAC NDR_XATTR NDR_SCHANNEL \
+ NDR_ROT
+[SUBSYSTEM::RPC_NDR_ROT]
+ADD_OBJ_FILES = librpc/gen_ndr/ndr_rot_c.o
+REQUIRED_SUBSYSTEMS = NDR_ROT LIBRPC
+NOPROTO = YES
[SUBSYSTEM::RPC_NDR_AUDIOSRV]
ADD_OBJ_FILES = librpc/gen_ndr/ndr_audiosrv_c.o
diff --git a/source4/librpc/idl/rot.idl b/source4/librpc/idl/rot.idl
new file mode 100644
index 0000000000..d9a67ecbe1
--- /dev/null
+++ b/source4/librpc/idl/rot.idl
@@ -0,0 +1,43 @@
+#include "idl_types.h"
+
+[
+ uuid("b9e79e60-3d52-11ce-aaa1-00006901293f"),
+ version(0.2),
+ endpoint("ncacn_np:[\\pipe\\epmapper]", "ncacn_ip_tcp:[135]",
+ "ncalrpc:[EPMAPPER]", "ncacn_unix_stream:[/tmp/epmapper]")
+] interface rot
+{
+ WERROR rot_add (
+ [in] uint32 flags,
+ [in] MInterfacePointer *unk,
+ [in] MInterfacePointer *moniker,
+ [out] uint32 rotid
+ );
+
+ WERROR rot_remove (
+ [in] uint32 rotid
+ );
+
+ WERROR rot_is_listed (
+ [in] MInterfacePointer *moniker
+ );
+
+ WERROR rot_get_interface_pointer (
+ [in] MInterfacePointer *moniker,
+ [out] MInterfacePointer *ip
+ );
+
+ WERROR rot_set_modification_time (
+ [in] uint32 rotid,
+ [in] NTTIME *t
+ );
+
+ WERROR rot_get_modification_time (
+ [in] MInterfacePointer *moniker,
+ [out] NTTIME t
+ );
+
+ WERROR rot_enum (
+ [out] MInterfacePointer *EnumMoniker
+ );
+}