diff options
Diffstat (limited to 'source4/librpc')
27 files changed, 102 insertions, 52 deletions
diff --git a/source4/librpc/idl/atsvc.idl b/source4/librpc/idl/atsvc.idl index e221875f9f..e2e5d3e2c8 100644 --- a/source4/librpc/idl/atsvc.idl +++ b/source4/librpc/idl/atsvc.idl @@ -6,7 +6,8 @@ [ uuid(1ff70682-0a51-30e8-076d-740be8cee98b), version(1.0), - pointer_default(unique) + pointer_default(unique), + helpstring("Queue/List/Remove jobs for later execution") ] interface atsvc { typedef struct { diff --git a/source4/librpc/idl/audiosrv.idl b/source4/librpc/idl/audiosrv.idl index b9dfa4e63b..e5891325b8 100644 --- a/source4/librpc/idl/audiosrv.idl +++ b/source4/librpc/idl/audiosrv.idl @@ -1,6 +1,7 @@ [ uuid(0a74ef1c-41a4-4e06-83ae-dc74fb1cdd53), - version(1.0) + version(1.0), + helpstring("Audio Server") ] interface audiosrv { void audiosrv_CreatezoneFactoriesList(); diff --git a/source4/librpc/idl/browser.idl b/source4/librpc/idl/browser.idl index 420932194d..46011aa6a4 100644 --- a/source4/librpc/idl/browser.idl +++ b/source4/librpc/idl/browser.idl @@ -1,6 +1,7 @@ [ uuid(6bffd098-a112-3610-9833-012892020162), - version(0.0) + version(0.0), + helpstring("Browsing") ] interface browser { diff --git a/source4/librpc/idl/dbgidl.idl b/source4/librpc/idl/dbgidl.idl index 95ab8765a8..2fef443db3 100644 --- a/source4/librpc/idl/dbgidl.idl +++ b/source4/librpc/idl/dbgidl.idl @@ -1,6 +1,7 @@ [ uuid(1d55b526-c137-46c5-ab79-638f2a68e869), - version(1.0) + version(1.0), + helpstring("Remote IDL debugger") ] interface dbgidl { void dummy_dbgidl(); diff --git a/source4/librpc/idl/dcom.idl b/source4/librpc/idl/dcom.idl index 88db432abc..5afeca1e96 100644 --- a/source4/librpc/idl/dcom.idl +++ b/source4/librpc/idl/dcom.idl @@ -11,7 +11,7 @@ [ uuid(18f70770-8e64-11cf-9af1-0020af6e72f4), version(0.0) -] interface dcom_Uknown +] interface dcom_Unknown { void dcomu_UseProtSeq(); void dcomu_GetCustomProtseqInfo(); @@ -88,6 +88,16 @@ interface ObjectRpcBaseTypes uint16 MinorVersion; // Minor version number } COMVERSION; + typedef [public] struct + { + uint32 reserved1; + uint32 reserved2; + } COSERVERINFO; + + typedef [public] struct + { + uint32 FIXME; + } MULTI_QI; // enumeration of additional information present in the call packet. // Should be an enum but DCE IDL does not support sparse enumerators. @@ -258,12 +268,15 @@ interface ObjectRpcBaseTypes [ object, - uuid(00000000-0000-0000-C000-000000000046) + uuid(00000000-0000-0000-C000-000000000046), + helpstring("Base interface for most COM interfaces") ] interface IUnknown { /*****************/ /* Function 0x00 */ + /* Returns the interface with the specified IID + if implemented by this object */ HRESULT QueryInterface([in] IID *riid /*FIXME, [out] void **data*/); @@ -294,7 +307,7 @@ interface IUnknown ////////////////////////////////////////////////////////////////// -// The remote version of Iunknown. This interface exists on every +// The remote version of IUnknown. This interface exists on every // OXID (whether an OXID represents either a thread or a process is // implementation specific). It is used by clients to query for new // interfaces, get additional references (for marshaling), and release @@ -304,7 +317,8 @@ interface IUnknown [ uuid(00000131-0000-0000-C000-000000000046), object, - version(0.0) + version(0.0), + helpstring("Remote version of IUnknown") ] interface IRemUnknown : IUnknown { @@ -349,9 +363,9 @@ interface IRemUnknown : IUnknown // for objects that supply additional data beyond the STDOBJREF in their // marshaled interface packets. [ -object, -uuid(00000143-0000-0000-C000-000000000046), -version(0.0) + object, + uuid(00000143-0000-0000-C000-000000000046), + version(0.0) ] interface IRemUnknown2 : IRemUnknown @@ -365,7 +379,9 @@ interface IRemUnknown2 : IRemUnknown ); } -[ uuid(99fcfec4-5260-101b-bbcb-00aa0021347a), +[ + uuid(99fcfec4-5260-101b-bbcb-00aa0021347a), + helpstring("Object Exporter ID Resolver"), pointer_default(unique) ] interface IOXIDResolver @@ -378,7 +394,6 @@ interface IOXIDResolver } ppdsaOxidBindingsArray; [idempotent] WERROR ResolveOxid ( - [in,ref] policy_handle *hRpc, [in] OXID *pOxid, [in] uint16 cRequestedProtseqs, [in, size_is(cRequestedProtseqs)] uint16 arRequestedProtseqs[], @@ -393,7 +408,6 @@ interface IOXIDResolver // Returns S_TRUE if the SetId is known by the object exporter, // S_FALSE if not. [idempotent] WERROR SimplePing ( - [in,ref] policy_handle *hRpc, [in] SETID *pSetId // Must not be zero ); @@ -401,7 +415,6 @@ interface IOXIDResolver // whole set can subsequently be pinged using SimplePing, // thus reducing network traffic. [idempotent] WERROR ComplexPing ( - [in,ref] policy_handle *hRpc, [in, out] SETID *pSetId, // In of 0 on first call for new set. [in] uint16 SequenceNum, [in] uint16 cAddToSet, @@ -417,15 +430,13 @@ interface IOXIDResolver // bindings have more then one TCP/IP binding) This call // can be used to validate the binding // from the client. - [idempotent] WERROR ServerAlive ( - [in,ref] policy_handle *hRpc - ); + [idempotent] WERROR ServerAlive (); + // Method to get the protocol sequences, string bindings, // RemoteUnknown IPID and COM version for an object server // given its OXID. Supported by DCOM // version 5.2 and above. [idempotent] WERROR ResolveOxid2 ( - [in,ref] policy_handle *hRpc, [in] OXID *pOxid, [in] uint16 cRequestedProtseqs, [in, size_is(cRequestedProtseqs)] @@ -445,8 +456,9 @@ interface IOXIDResolver } [ -uuid(4d9f4ab8-7d1c-11cf-861e-0020af6e7c57), + uuid(4d9f4ab8-7d1c-11cf-861e-0020af6e7c57), version(0.0), + object, pointer_default(unique) ] interface IRemoteActivation @@ -459,24 +471,29 @@ interface IRemoteActivation DUALSTRINGARRAY *dualstringarray; } REF_DUALSTRINGARRAY; + typedef struct { + /* Looks very much like a protocol tower to me, but it appears + to be aligned differently then it is in epmapper -jelmer + */ + uint8 FIXME[12]; + } floor_tmp; + const uint32 MODE_GET_CLASS_OBJECT = 0xffffffff; HRESULT RemoteActivation ( - [in] ORPCTHIS ORPCthis, - [out] ORPCTHAT ORPCthat, [in] GUID Clsid, [in, unique] unistr *pwszObjectName, [in, unique] MInterfacePointer *pObjectStorage, [in] uint32 ClientImpLevel, [in] uint32 Mode, [in] uint32 Interfaces, - [in,unique,size_is(Interfaces)] IID *pIIDs, - [in] uint16 cRequestedProtseqs, - [in, size_is(cRequestedProtseqs)] uint16 RequestedProtseqs[], + [in, unique,size_is(Interfaces)] IID *pIIDs, + [in] uint16 num_protseqs, + [in, size_is(num_protseqs)] floor_tmp protseq[], [out] OXID pOxid, [out] DUALSTRINGARRAY *pdsaOxidBindings, [out] IPID ipidRemUnknown, - [out] uint32 *pAuthnHint, - [out] COMVERSION *pServerVersion, + [out] uint32 pAuthnHint, + [out] COMVERSION pServerVersion, [out] HRESULT *phr, [out,size_is(Interfaces)] ppInterfaceDataArray *ppInterfaceData, [out,size_is(Interfaces)] HRESULT *pResults diff --git a/source4/librpc/idl/dfs.idl b/source4/librpc/idl/dfs.idl index 6f564c4d4a..a0dbb003eb 100644 --- a/source4/librpc/idl/dfs.idl +++ b/source4/librpc/idl/dfs.idl @@ -6,7 +6,8 @@ [ uuid(4fc742e0-4a10-11cf-8273-00aa004ae673), version(3.0), - pointer_default(unique) + pointer_default(unique), + helpstring("Settings for Microsoft Distributed File System") ] interface netdfs { /******************/ diff --git a/source4/librpc/idl/dsbackup.idl b/source4/librpc/idl/dsbackup.idl index d3f38c7b5e..3523749215 100644 --- a/source4/librpc/idl/dsbackup.idl +++ b/source4/librpc/idl/dsbackup.idl @@ -1,6 +1,7 @@ [ uuid(ecec0d70-a603-11d0-96b1-00a0c91ece30), - version(1.0) + version(1.0), + helpstring("Backup support for Active Directory") ] interface ad_backup { void HrRBackupPrepare(); @@ -16,7 +17,8 @@ [ uuid(16e0cf3a-a604-11d0-96b1-00a0c91ece30), - version(1.0) + version(1.0), + helpstring("Restoring Active Directory backups") ] interface ad_restore { void HrRIsNTDSOnline(); diff --git a/source4/librpc/idl/dssetup.idl b/source4/librpc/idl/dssetup.idl index d6887af926..01e645e627 100644 --- a/source4/librpc/idl/dssetup.idl +++ b/source4/librpc/idl/dssetup.idl @@ -1,6 +1,7 @@ [ uuid(3919286a-b10c-11d0-9ba8-00c04fd92ef5), - version(0.0) + version(0.0), + helpstring("Active Directory Setup") ] interface dssetup { void DsRolerGetPrimaryDomainInformation(); diff --git a/source4/librpc/idl/echo.idl b/source4/librpc/idl/echo.idl index e62208ac98..85b86c310e 100644 --- a/source4/librpc/idl/echo.idl +++ b/source4/librpc/idl/echo.idl @@ -4,7 +4,8 @@ [ uuid(60a15ec5-4de8-11d7-a637-005056a20182), endpoints(rpcecho, TCP-0), - version(1.0) + version(1.0), + helpstring("Simple echo pipe") ] interface rpcecho { diff --git a/source4/librpc/idl/efs.idl b/source4/librpc/idl/efs.idl index ad2aafceea..d9f30d7be7 100644 --- a/source4/librpc/idl/efs.idl +++ b/source4/librpc/idl/efs.idl @@ -1,6 +1,7 @@ [ uuid(c681d488-d850-11d0-8c52-00c04fd90f7e), - version(1.0) + version(1.0), + helpstring("Encrypted File System") ] interface efs { void EFS_Dummy(); diff --git a/source4/librpc/idl/eventlog.idl b/source4/librpc/idl/eventlog.idl index eb7bcc0899..3e0bd6abed 100644 --- a/source4/librpc/idl/eventlog.idl +++ b/source4/librpc/idl/eventlog.idl @@ -5,7 +5,8 @@ */ [ uuid(82273fdc-e32a-18c3-3f78-827929dc23ea), version(0.0), - pointer_default(unique) + pointer_default(unique), + helpstring("Event Logger") ] interface eventlog { typedef struct { diff --git a/source4/librpc/idl/keysvc.idl b/source4/librpc/idl/keysvc.idl index 43ea485cc5..0ac35c21a3 100644 --- a/source4/librpc/idl/keysvc.idl +++ b/source4/librpc/idl/keysvc.idl @@ -6,7 +6,8 @@ /* Also seen as: 0d72a7d4-6148-11d1-b4aa-00c04fb66ea0 */ [ uuid(8d0ffe72-d252-11d0-bf8f-00c04fd9126b), - version(1.0) + version(1.0), + helpstring("Cryptographic Key Services") ] interface keysvc { diff --git a/source4/librpc/idl/lsa.idl b/source4/librpc/idl/lsa.idl index 22f2234e78..06c142cd96 100644 --- a/source4/librpc/idl/lsa.idl +++ b/source4/librpc/idl/lsa.idl @@ -7,7 +7,8 @@ [ uuid(12345778-1234-abcd-ef00-0123456789ab), version(0.0), endpoints(lsarpc,lsass,TCP-0), - pointer_default(unique) + pointer_default(unique), + helpstring("Local Server Authentication(?)") ] interface lsarpc { /******************/ diff --git a/source4/librpc/idl/mgmt.idl b/source4/librpc/idl/mgmt.idl index 0756e36010..d5f2fc2181 100644 --- a/source4/librpc/idl/mgmt.idl +++ b/source4/librpc/idl/mgmt.idl @@ -4,10 +4,10 @@ dcerpc remote management interface */ - [ uuid(afa8bd80-7d8a-11c9-bef4-08002b102989), - version(1) + version(1.0), + helpstring("DCE/RPC Remote Management") ] interface mgmt { diff --git a/source4/librpc/idl/msgsvc.idl b/source4/librpc/idl/msgsvc.idl index 93ab199642..7890fccbac 100644 --- a/source4/librpc/idl/msgsvc.idl +++ b/source4/librpc/idl/msgsvc.idl @@ -1,6 +1,9 @@ +/* Works over UDP */ + [ uuid(17fdd703-1827-4e34-79d4-24a55c53bb37), - version(1.0) + version(1.0), + helpstring("Messaging Service") ] interface msgsvc { void NetrMessageNameAdd(); diff --git a/source4/librpc/idl/ntsvcs.idl b/source4/librpc/idl/ntsvcs.idl index fe68b5aafc..9b39bf399c 100644 --- a/source4/librpc/idl/ntsvcs.idl +++ b/source4/librpc/idl/ntsvcs.idl @@ -4,7 +4,8 @@ [ uuid(8d9f4e40-a03d-11ce-8f69-08003e30051b), - version(1.0) + version(1.0), + helpstring("Plug and Play services") ] interface ntsvcs { diff --git a/source4/librpc/idl/policyagent.idl b/source4/librpc/idl/policyagent.idl index 75765243af..0278ab6d4e 100644 --- a/source4/librpc/idl/policyagent.idl +++ b/source4/librpc/idl/policyagent.idl @@ -2,7 +2,8 @@ /* IPSec policy agent (Win2k) */ [ uuid(d335b8f6-cb31-11d0-b0f9-006097ba4e54), - version(1.5) + version(1.5), + helpstring("IPSec Policy Agent") ] interface policyagent { /*****************/ diff --git a/source4/librpc/idl/scerpc.idl b/source4/librpc/idl/scerpc.idl index 049de3b19b..c147d8387b 100644 --- a/source4/librpc/idl/scerpc.idl +++ b/source4/librpc/idl/scerpc.idl @@ -4,7 +4,8 @@ [ uuid(93149ca2-973b-11d1-8c39-00c04fb984f9), - version(0.0) + version(0.0), + helpstring("Security Configuration Editor") ] interface scerpc { diff --git a/source4/librpc/idl/spoolss.idl b/source4/librpc/idl/spoolss.idl index a0a3c8aca8..74bfd2ea9f 100644 --- a/source4/librpc/idl/spoolss.idl +++ b/source4/librpc/idl/spoolss.idl @@ -7,7 +7,8 @@ [ uuid(12345678-1234-abcd-ef00-0123456789ab), version(1.0), endpoints(spoolss), - pointer_default(unique) + pointer_default(unique), + helpstring("Spooler SubSystem") ] interface spoolss { typedef struct { diff --git a/source4/librpc/idl/srvsvc.idl b/source4/librpc/idl/srvsvc.idl index bbb75dddf7..32c7b47a16 100644 --- a/source4/librpc/idl/srvsvc.idl +++ b/source4/librpc/idl/srvsvc.idl @@ -6,7 +6,8 @@ [ uuid(4b324fc8-1670-01d3-1278-5a47bf6ee188), version(3.0), - pointer_default(unique) + pointer_default(unique), + helpstring("Server Service") ] interface srvsvc { /**************************/ diff --git a/source4/librpc/idl/svcctl.idl b/source4/librpc/idl/svcctl.idl index da910b772c..ec24290927 100644 --- a/source4/librpc/idl/svcctl.idl +++ b/source4/librpc/idl/svcctl.idl @@ -6,7 +6,8 @@ [ uuid(367abb81-9844-35f1-ad32-98f038001003), version(2.0), - pointer_default(unique) + pointer_default(unique), + helpstring("Service Control") ] interface svcctl { typedef struct { diff --git a/source4/librpc/idl/trkwks.idl b/source4/librpc/idl/trkwks.idl index c91e1ea788..ce916b47d2 100644 --- a/source4/librpc/idl/trkwks.idl +++ b/source4/librpc/idl/trkwks.idl @@ -4,7 +4,8 @@ [ uuid(300f3532-38cc-11d0-a3f0-0020af6b0add), - version(1.2) + version(1.2), + helpstring("Distributed Key Tracking Service") ] interface trkwks { diff --git a/source4/librpc/idl/w32time.idl b/source4/librpc/idl/w32time.idl index 7ffd71e1f9..568f97ef1d 100644 --- a/source4/librpc/idl/w32time.idl +++ b/source4/librpc/idl/w32time.idl @@ -5,7 +5,8 @@ [ uuid(8fb6d884-2388-11d0-8c35-00c04fda2795), endpoints(srvsvc,atsvc,browser,keysvc,wkssvc), - version(4.1) + version(4.1), + helpstring("Win32 Time Server") ] interface w32time { diff --git a/source4/librpc/idl/winreg.idl b/source4/librpc/idl/winreg.idl index ef2874b15b..812aa4e11f 100644 --- a/source4/librpc/idl/winreg.idl +++ b/source4/librpc/idl/winreg.idl @@ -7,7 +7,8 @@ [ uuid(338cd001-2244-31f1-aaaa-900038001003), version(1.0), endpoints(winreg,TCP-0), - pointer_default(unique) + pointer_default(unique), + helpstring("Remote Registry Service") ] interface winreg { typedef struct { @@ -215,8 +216,13 @@ WERROR winreg_QueryValue( [in,ref] policy_handle *handle, [in] winreg_String valuename, - [out,ref] uint32 *type, + [in] uint32 *reserved, + [in] uint32 *offered, + [in] uint32 *unknown1, + [in] uint32 *unknown2, + [out] uint32 *type, [out] uint8 *data, + [in,out] uint32 *offered2, [in,out] uint32 *val_length ); diff --git a/source4/librpc/idl/wins.idl b/source4/librpc/idl/wins.idl index 8f2bff69ae..72e1a57511 100644 --- a/source4/librpc/idl/wins.idl +++ b/source4/librpc/idl/wins.idl @@ -1,6 +1,7 @@ [ uuid(45f52c28-7f9f-101a-b52b-08002b2efabe), - version(1.0) + version(1.0), + helpstring("Server-to-Server WINS") ] interface WinsPipe { void WinsRecordAction(); diff --git a/source4/librpc/idl/wkssvc.idl b/source4/librpc/idl/wkssvc.idl index cf067583d5..e967dcecb2 100644 --- a/source4/librpc/idl/wkssvc.idl +++ b/source4/librpc/idl/wkssvc.idl @@ -6,7 +6,8 @@ [ uuid(6bffd098-a112-3610-9833-46c3f87e345a), version(1.0), - pointer_default(unique) + pointer_default(unique), + helpstring("Workstation Service") ] interface wkssvc { diff --git a/source4/librpc/idl/wzcsvc.idl b/source4/librpc/idl/wzcsvc.idl index 5124450e79..cf06425aaf 100644 --- a/source4/librpc/idl/wzcsvc.idl +++ b/source4/librpc/idl/wzcsvc.idl @@ -4,7 +4,8 @@ [ uuid(378e52b0-c0a9-11cf-822d-00aa0051e40f), - version(1.0) + version(1.0), + helpstring("Wireless Configuration Service") ] interface wzcsvc { |