diff options
Diffstat (limited to 'source4/librpc')
-rw-r--r-- | source4/librpc/idl/atsvc.idl | 5 | ||||
-rw-r--r-- | source4/librpc/idl/dcom.idl | 23 | ||||
-rw-r--r-- | source4/librpc/idl/dfs.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/drsuapi.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/echo.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/efs.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/epmapper.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/eventlog.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/initshutdown.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/irpc.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/lsa.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/netlogon.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/orpc.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/oxidresolver.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/remact.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/rot.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/samr.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/spoolss.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/srvsvc.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/svcctl.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/unixinfo.idl | 3 | ||||
-rw-r--r-- | source4/librpc/idl/winreg.idl | 7 | ||||
-rw-r--r-- | source4/librpc/idl/wkssvc.idl | 3 | ||||
-rw-r--r-- | source4/librpc/ndr/ndr_basic.c | 5 |
24 files changed, 63 insertions, 37 deletions
diff --git a/source4/librpc/idl/atsvc.idl b/source4/librpc/idl/atsvc.idl index d58a719651..3dd5cb6805 100644 --- a/source4/librpc/idl/atsvc.idl +++ b/source4/librpc/idl/atsvc.idl @@ -6,7 +6,8 @@ version(1.0), pointer_default(unique), helpstring("Microsoft AT-Scheduler Service"), - endpoint("ncacn_np:[\\pipe\\atsvc]", "ncalrpc:") + endpoint("ncacn_np:[\\pipe\\atsvc]", "ncalrpc:"), + keepref ] interface atsvc { typedef [bitmap32bit] bitmap { @@ -73,7 +74,7 @@ /* Function: 0x00 */ NTSTATUS atsvc_JobAdd( [in,unique,string,charset(UTF16)] uint16 *servername, - [in] atsvc_JobInfo *job_info, + [in,keepref] atsvc_JobInfo *job_info, [out] uint32 job_id ); diff --git a/source4/librpc/idl/dcom.idl b/source4/librpc/idl/dcom.idl index ce10c98c0a..2a2b9ad8b1 100644 --- a/source4/librpc/idl/dcom.idl +++ b/source4/librpc/idl/dcom.idl @@ -18,7 +18,8 @@ object, uuid("00000000-0000-0000-C000-000000000046"), pointer_default(unique), - helpstring("Base interface for all COM interfaces") + helpstring("Base interface for all COM interfaces"), + keepref ] interface IUnknown { @@ -42,7 +43,8 @@ interface IUnknown [ object, uuid("00000001-0000-0000-C000-000000000046"), - pointer_default(unique) + pointer_default(unique), + keepref ] interface IClassFactory : IUnknown { [local] WERROR CreateInstance([in,unique] MInterfacePointer *pUnknown, @@ -69,7 +71,8 @@ interface IUnknown uuid("00000131-0000-0000-C000-000000000046"), object, pointer_default(unique), - helpstring("Remote version of IUnknown") + helpstring("Remote version of IUnknown"), + keepref ] interface IRemUnknown : IUnknown { @@ -169,7 +172,8 @@ interface IRemUnknown : IUnknown [ object, pointer_default(unique), - uuid("00000143-0000-0000-C000-000000000046") + uuid("00000143-0000-0000-C000-000000000046"), + keepref ] interface IRemUnknown2 : IRemUnknown @@ -186,8 +190,9 @@ interface IRemUnknown2 : IRemUnknown [ object, pointer_default(unique), - uuid("00020400-0000-0000-C000-000000000046") - ] interface IDispatch : IUnknown + uuid("00020400-0000-0000-C000-000000000046"), + keepref +] interface IDispatch : IUnknown { /*****************/ /* Function 0x03 */ @@ -254,7 +259,8 @@ interface IRemUnknown2 : IRemUnknown uuid(DA23F6DB-6F45-466C-9EED-0B65286F2D78), helpstring("ICoffeeMachine Interface"), pointer_default(unique), - object + object, + keepref ] interface ICoffeeMachine : IUnknown { WERROR MakeCoffee([in,string,charset(UTF16)] uint16 *flavor); @@ -272,7 +278,8 @@ interface IRemUnknown2 : IRemUnknown object, pointer_default(unique), uuid("0000000C-0000-0000-C000-000000000046"), - helpstring("Stream") + helpstring("Stream"), + keepref ] interface IStream : IUnknown { diff --git a/source4/librpc/idl/dfs.idl b/source4/librpc/idl/dfs.idl index ef3d2ca604..a39bfe6aa0 100644 --- a/source4/librpc/idl/dfs.idl +++ b/source4/librpc/idl/dfs.idl @@ -5,7 +5,8 @@ [ uuid("4fc742e0-4a10-11cf-8273-00aa004ae673"), version(3.0), pointer_default(unique), - helpstring("Settings for Microsoft Distributed File System") + helpstring("Settings for Microsoft Distributed File System"), + keepref ] interface netdfs { /******************/ diff --git a/source4/librpc/idl/drsuapi.idl b/source4/librpc/idl/drsuapi.idl index 3668ddab7e..f106c4ce3a 100644 --- a/source4/librpc/idl/drsuapi.idl +++ b/source4/librpc/idl/drsuapi.idl @@ -7,7 +7,8 @@ authservice("ldap"), helpstring("Active Directory Replication"), pointer_default(unique), - depends(security,misc) + depends(security,misc), + keepref ] interface drsuapi { diff --git a/source4/librpc/idl/echo.idl b/source4/librpc/idl/echo.idl index 7b80e3e296..cda29685a1 100644 --- a/source4/librpc/idl/echo.idl +++ b/source4/librpc/idl/echo.idl @@ -4,7 +4,8 @@ endpoint("ncacn_np:[\\pipe\\rpcecho]", "ncacn_ip_tcp:", "ncalrpc:"), pointer_default(unique), version(1.0), - helpstring("Simple echo pipe") + helpstring("Simple echo pipe"), + keepref ] interface rpcecho { diff --git a/source4/librpc/idl/efs.idl b/source4/librpc/idl/efs.idl index 75d997a018..83c6cad19f 100644 --- a/source4/librpc/idl/efs.idl +++ b/source4/librpc/idl/efs.idl @@ -7,7 +7,8 @@ uuid("c681d488-d850-11d0-8c52-00c04fd90f7e"), version(1.0), depends(security), - pointer_default(unique) + pointer_default(unique), + keepref ] interface efs { diff --git a/source4/librpc/idl/epmapper.idl b/source4/librpc/idl/epmapper.idl index 223883c366..e913209cf1 100644 --- a/source4/librpc/idl/epmapper.idl +++ b/source4/librpc/idl/epmapper.idl @@ -15,7 +15,8 @@ http://www.opengroup.org/onlinepubs/9629399/chap6.htm#tagcjh_11_02_03_01: bindin "ncalrpc:[EPMAPPER]"), helpstring("EndPoint Mapper"), pointer_default_top(sptr), - pointer_default(sptr) + pointer_default(sptr), + keepref ] interface epmapper { diff --git a/source4/librpc/idl/eventlog.idl b/source4/librpc/idl/eventlog.idl index 38f4a88e28..c8a146b272 100644 --- a/source4/librpc/idl/eventlog.idl +++ b/source4/librpc/idl/eventlog.idl @@ -7,7 +7,8 @@ version(0.0), depends(lsa,security), pointer_default(unique), - helpstring("Event Logger") + helpstring("Event Logger"), + keepref ] interface eventlog { typedef bitmap { diff --git a/source4/librpc/idl/initshutdown.idl b/source4/librpc/idl/initshutdown.idl index 50d49637c2..8555ed0c5c 100644 --- a/source4/librpc/idl/initshutdown.idl +++ b/source4/librpc/idl/initshutdown.idl @@ -9,7 +9,8 @@ version(1.0), endpoint("ncacn_np:[\\pipe\\InitShutdown]"), pointer_default(unique), - helpstring("Init shutdown service") + helpstring("Init shutdown service"), + keepref ] interface initshutdown { typedef struct { diff --git a/source4/librpc/idl/irpc.idl b/source4/librpc/idl/irpc.idl index 5614608bd7..a566a99bfc 100644 --- a/source4/librpc/idl/irpc.idl +++ b/source4/librpc/idl/irpc.idl @@ -6,7 +6,8 @@ [ uuid("e770c620-0b06-4b5e-8d87-a26e20f28340"), version(1.0), pointer_default(unique), - depends(security,nbt) + depends(security,nbt), + keepref ] interface irpc { typedef bitmap { diff --git a/source4/librpc/idl/lsa.idl b/source4/librpc/idl/lsa.idl index 454f73afeb..0953c6d025 100644 --- a/source4/librpc/idl/lsa.idl +++ b/source4/librpc/idl/lsa.idl @@ -9,7 +9,8 @@ endpoint("ncacn_np:[\\pipe\\lsarpc]","ncacn_np:[\\pipe\\lsass]", "ncacn_ip_tcp:", "ncalrpc:"), pointer_default(unique), helpstring("Local Security Authority"), - depends(security) + depends(security), + keepref ] interface lsarpc { declare bitmap security_secinfo; diff --git a/source4/librpc/idl/netlogon.idl b/source4/librpc/idl/netlogon.idl index c4a0f97613..95289b7ea9 100644 --- a/source4/librpc/idl/netlogon.idl +++ b/source4/librpc/idl/netlogon.idl @@ -12,7 +12,8 @@ endpoint("ncacn_np:[\\pipe\\netlogon]","ncacn_ip_tcp:","ncalrpc:"), pointer_default(unique), pointer_default_top(unique), - depends(lsa,samr,security) + depends(lsa,samr,security), + keepref ] interface netlogon diff --git a/source4/librpc/idl/orpc.idl b/source4/librpc/idl/orpc.idl index c1faefd3b1..c59cc9d3cb 100644 --- a/source4/librpc/idl/orpc.idl +++ b/source4/librpc/idl/orpc.idl @@ -6,7 +6,8 @@ */ [ - pointer_default(unique) + pointer_default(unique), + keepref ] interface ObjectRpcBaseTypes { diff --git a/source4/librpc/idl/oxidresolver.idl b/source4/librpc/idl/oxidresolver.idl index d3f3078a0d..835b848a45 100644 --- a/source4/librpc/idl/oxidresolver.idl +++ b/source4/librpc/idl/oxidresolver.idl @@ -16,7 +16,8 @@ endpoint("ncacn_np:[\\pipe\\epmapper]", "ncacn_ip_tcp:[135]", "ncalrpc:"), pointer_default(unique), pointer_default_top(unique), - depends(dcom, orpc) + depends(dcom, orpc), + keepref ] interface IOXIDResolver { diff --git a/source4/librpc/idl/remact.idl b/source4/librpc/idl/remact.idl index a54ca7781d..2f8baf926a 100644 --- a/source4/librpc/idl/remact.idl +++ b/source4/librpc/idl/remact.idl @@ -8,7 +8,8 @@ pointer_default(unique), pointer_default_top(unique), endpoint("ncalrpc:", "ncacn_ip_tcp:[135]", "ncacn_np:[\\pipe\\epmapper]"), - depends(dcom,orpc) + depends(dcom,orpc), + keepref ] interface IRemoteActivation { diff --git a/source4/librpc/idl/rot.idl b/source4/librpc/idl/rot.idl index 5851466c79..27c7836635 100644 --- a/source4/librpc/idl/rot.idl +++ b/source4/librpc/idl/rot.idl @@ -5,7 +5,8 @@ pointer_default_top(unique), depends(orpc), endpoint("ncacn_np:[\\pipe\\epmapper]", "ncacn_ip_tcp:[135]", - "ncalrpc:[EPMAPPER]") + "ncalrpc:[EPMAPPER]"), + keepref ] interface rot { WERROR rot_add ( diff --git a/source4/librpc/idl/samr.idl b/source4/librpc/idl/samr.idl index c9d21dba08..370eb728bd 100644 --- a/source4/librpc/idl/samr.idl +++ b/source4/librpc/idl/samr.idl @@ -13,7 +13,8 @@ endpoint("ncacn_np:[\\pipe\\samr]","ncacn_ip_tcp:", "ncalrpc:"), pointer_default(unique), pointer_default_top(unique), - depends(misc,lsa,security) + depends(misc,lsa,security), + keepref ] interface samr { declare bitmap security_secinfo; diff --git a/source4/librpc/idl/spoolss.idl b/source4/librpc/idl/spoolss.idl index 93ce3c3f36..b09690b278 100644 --- a/source4/librpc/idl/spoolss.idl +++ b/source4/librpc/idl/spoolss.idl @@ -11,7 +11,8 @@ pointer_default_top(unique), helpstring("Spooler SubSystem"), depends(security), - helper("librpc/ndr/ndr_spoolss_buf.h") + helper("librpc/ndr/ndr_spoolss_buf.h"), + keepref ] interface spoolss { typedef struct { diff --git a/source4/librpc/idl/srvsvc.idl b/source4/librpc/idl/srvsvc.idl index 6405736c9f..845969a027 100644 --- a/source4/librpc/idl/srvsvc.idl +++ b/source4/librpc/idl/srvsvc.idl @@ -10,7 +10,8 @@ pointer_default(unique), pointer_default_top(unique), helpstring("Server Service"), - depends(security,svcctl) + depends(security,svcctl), + keepref ] interface srvsvc { declare bitmap svcctl_ServerType; diff --git a/source4/librpc/idl/svcctl.idl b/source4/librpc/idl/svcctl.idl index 27172f85df..f77e4d4276 100644 --- a/source4/librpc/idl/svcctl.idl +++ b/source4/librpc/idl/svcctl.idl @@ -9,7 +9,8 @@ pointer_default(unique), pointer_default_top(unique), endpoint("ncacn_np:[\\pipe\\svcctl]", "ncalrpc:"), - helpstring("Service Control") + helpstring("Service Control"), + keepref ] interface svcctl { typedef struct { diff --git a/source4/librpc/idl/unixinfo.idl b/source4/librpc/idl/unixinfo.idl index 078862f444..2b5b60908f 100644 --- a/source4/librpc/idl/unixinfo.idl +++ b/source4/librpc/idl/unixinfo.idl @@ -7,7 +7,8 @@ endpoint("ncacn_np:[\\pipe\\unixinfo]", "ncacn_ip_tcp:", "ncalrpc:"), pointer_default(unique), helpstring("Unixinfo specific stuff"), - depends(security) + depends(security), + keepref ] interface unixinfo { /******************/ diff --git a/source4/librpc/idl/winreg.idl b/source4/librpc/idl/winreg.idl index 1ecb98d3b0..93c3c12db5 100644 --- a/source4/librpc/idl/winreg.idl +++ b/source4/librpc/idl/winreg.idl @@ -9,7 +9,8 @@ pointer_default(unique), pointer_default_top(unique), helpstring("Remote Registry Service"), - depends(lsa,initshutdown,security) + depends(lsa,initshutdown,security), + keepref ] interface winreg { declare bitmap security_secinfo; @@ -205,8 +206,8 @@ /* Function: 0x10 */ WERROR winreg_QueryInfoKey( [in,ref] policy_handle *handle, - [in] winreg_String class, - [out] winreg_String class, + [in] winreg_String class_in, + [out] winreg_String *class_out, [out] uint32 num_subkeys, [out] uint32 max_subkeylen, [out] uint32 max_subkeysize, diff --git a/source4/librpc/idl/wkssvc.idl b/source4/librpc/idl/wkssvc.idl index d658091c47..a085265a41 100644 --- a/source4/librpc/idl/wkssvc.idl +++ b/source4/librpc/idl/wkssvc.idl @@ -7,7 +7,8 @@ pointer_default(unique), pointer_default_top(unique), helpstring("Workstation Service"), - depends(srvsvc) + depends(srvsvc), + keepref ] interface wkssvc { declare [v1_enum] enum srvsvc_PlatformId; diff --git a/source4/librpc/ndr/ndr_basic.c b/source4/librpc/ndr/ndr_basic.c index 197fd44895..f4ba786865 100644 --- a/source4/librpc/ndr/ndr_basic.c +++ b/source4/librpc/ndr/ndr_basic.c @@ -494,11 +494,8 @@ _PUBLIC_ NTSTATUS ndr_push_sptr_ptr(struct ndr_push *ndr, const void *p) /* push always a 0, if a pointer is NULL it's a fatal error */ -_PUBLIC_ NTSTATUS ndr_push_ref_ptr(struct ndr_push *ndr, const void *p) +_PUBLIC_ NTSTATUS ndr_push_ref_ptr(struct ndr_push *ndr) { - if (p == NULL) { - return NT_STATUS_INVALID_PARAMETER_MIX; - } return ndr_push_uint32(ndr, NDR_SCALARS, 0xAEF1AEF1); } |