diff options
author | Adam <you@example.com> | 2020-05-17 05:51:50 +0200 |
---|---|---|
committer | Adam <you@example.com> | 2020-05-17 05:51:50 +0200 |
commit | e611b132f9b8abe35b362e5870b74bce94a1e58e (patch) | |
tree | a5781d2ec0e085eeca33cf350cf878f2efea6fe5 /private/oleutest/channel/idl | |
download | NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.gz NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.bz2 NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.lz NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.xz NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.zst NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.zip |
Diffstat (limited to 'private/oleutest/channel/idl')
-rw-r--r-- | private/oleutest/channel/idl/dog.acf | 9 | ||||
-rw-r--r-- | private/oleutest/channel/idl/dog.idl | 45 | ||||
-rw-r--r-- | private/oleutest/channel/idl/itest.acf | 4 | ||||
-rw-r--r-- | private/oleutest/channel/idl/itest.idl | 192 | ||||
-rw-r--r-- | private/oleutest/channel/idl/makefile | 9 | ||||
-rw-r--r-- | private/oleutest/channel/idl/makefile.inc | 37 | ||||
-rw-r--r-- | private/oleutest/channel/idl/pch.cxx | 18 | ||||
-rw-r--r-- | private/oleutest/channel/idl/prxydll.def | 47 | ||||
-rw-r--r-- | private/oleutest/channel/idl/sources | 66 | ||||
-rw-r--r-- | private/oleutest/channel/idl/test.reg | 24 | ||||
-rw-r--r-- | private/oleutest/channel/idl/test2.reg | 16 |
11 files changed, 467 insertions, 0 deletions
diff --git a/private/oleutest/channel/idl/dog.acf b/private/oleutest/channel/idl/dog.acf new file mode 100644 index 000000000..8c67cfe4c --- /dev/null +++ b/private/oleutest/channel/idl/dog.acf @@ -0,0 +1,9 @@ +interface IDog + +{ + check_client ( [comm_status, fault_status] status ); + get_interface_buffer ( [comm_status, fault_status] status ); + release_interface ( [comm_status, fault_status] status ); + set_status ( [comm_status, fault_status] status ); + test ( [comm_status, fault_status] status ); +} diff --git a/private/oleutest/channel/idl/dog.idl b/private/oleutest/channel/idl/dog.idl new file mode 100644 index 000000000..97d6e3d0c --- /dev/null +++ b/private/oleutest/channel/idl/dog.idl @@ -0,0 +1,45 @@ +//+------------------------------------------------------------------- +// +// Interface: IDog +// +// Purpose: Interface for manipulating performance +// +// History: 8 Nov 94 AlexMit Created +// +// Notes: +// +//-------------------------------------------------------------------- + +import "itest.idl"; + +[ uuid(e0b4ab10-fb6d-11cd-b3ae-00aa003c9fdc), + version(0.1), + pointer_default(unique) ] + +interface IDog +{ + unsigned long acl_call ( [in] handle_t handle ); + unsigned long audit_call ( [in] handle_t handle ); + unsigned long check_client ( [in] handle_t handle, + [out] error_status_t *status ); + void get_interface_buffer ( [in] handle_t handle, + [out] long *size, + [out, size_is(,*size)] char **buffer, + [out] SAptId *id, + [out] error_status_t *status ); + unsigned long impersonate_call ( [in] handle_t handle ); + void nullcall ( [in] handle_t handle ); + void release_interface ( [in] handle_t handle, + [out] error_status_t *status ); + void set_status ( [in] handle_t handle, + [in] long result, + [out] error_status_t *status ); + unsigned long test ( [in] handle_t handle, + [in] ITest *obj, + [in] SAptId id, + [out] error_status_t *status ); + unsigned long transitive ( [in] handle_t handle, + [in, string] wchar_t *binding ); +} + + diff --git a/private/oleutest/channel/idl/itest.acf b/private/oleutest/channel/idl/itest.acf new file mode 100644 index 000000000..d11570c04 --- /dev/null +++ b/private/oleutest/channel/idl/itest.acf @@ -0,0 +1,4 @@ +interface ITest +{ + typedef [allocate(dont_free)] STRING; +} diff --git a/private/oleutest/channel/idl/itest.idl b/private/oleutest/channel/idl/itest.idl new file mode 100644 index 000000000..7f2437650 --- /dev/null +++ b/private/oleutest/channel/idl/itest.idl @@ -0,0 +1,192 @@ +//[ ITest_itf +//+------------------------------------------------------------------- +// +// Interface: ITest (ib) +// +// Purpose: Interface for manipulating performance +// +// History: 5-Oct-93 AlexMit Created +// +// Notes: +// +//-------------------------------------------------------------------- + +[ + object, + uuid(60000200-76d7-11cf-9af1-0020af6e72f4), + pointer_default(unique) +] + +interface ITest : IUnknown +{ + import "unknwn.idl"; + import "objidl.idl"; + + typedef struct + { + DWORD process; + DWORD thread; + DWORD sequence; + } SAptId; + + typedef struct + { + UCHAR Value[6]; + } HACKHACKHACK_SID_IDENTIFIER_AUTHORITY; + + typedef struct + { + UCHAR Revision; + UCHAR SubAuthorityCount; + HACKHACKHACK_SID_IDENTIFIER_AUTHORITY IdentifierAuthority; +#ifdef MIDL_PASS + [size_is(SubAuthorityCount)] ULONG SubAuthority[*]; +#else // MIDL_PASS + ULONG SubAuthority[ANYSIZE_ARRAY]; +#endif // MIDL_PASS + } HACKSID; + + typedef [string] wchar_t *STRING; + + typedef [transmit_as(DWORD)] DWORD transmit_crash; + + HRESULT align ( [in] unsigned char x[17] ); + HRESULT call_canceled ( [in] long recurse, [in] long cancel, + [in] ITest *callback ); + HRESULT call_dead (); + HRESULT call_me_back ( [in] ITest *callback ); + HRESULT call_next (); + HRESULT callback (); + HRESULT cancel (); + HRESULT cancel_now (); + HRESULT cancel_pending_call ( [out] DWORD *thread ); + HRESULT cancel_stress ( [in] ITest *obj ); + HRESULT catch_at_top ( [in] BOOL catch_me_im_falling, + [in] ITest *callback, + [in] STRING binding ); + HRESULT check ( [in] SAptId id ); + HRESULT check_hook ( [in] DWORD cg1, [in] DWORD cn1, + [in] DWORD sg1, [in] DWORD sn1, + [in] DWORD cg2, [in] DWORD cn2, + [in] DWORD sg2, [in] DWORD sn2 ); + HRESULT count (); + HRESULT crash_out ( [out] transmit_crash *data ); + HRESULT delegate ( [in] ITest *obj, [in] SAptId id, + [in] HACKSID *caller ); + HRESULT exit (); + HRESULT forget (); + HRESULT get_advise ( [out] IAdviseSink **advise ); + HRESULT get_data ( [in] DWORD isize, + [in, unique, size_is(isize)] char *idata, + [in] DWORD osize, + [out, size_is(,osize)] char **odata ); + HRESULT get_id ( [out] SAptId *id ); + HRESULT get_next ( [out] ITest **obj, [out] SAptId *id ); + HRESULT get_next_slowly ( [out] ITest **obj, [out] SAptId *id ); + HRESULT get_obj_from_new_apt ( [out] ITest **obj, [out] SAptId *id ); + HRESULT get_obj_from_this_apt ( [out] ITest **obj, [out] SAptId *id ); + HRESULT get_sid ( [out] HACKSID **sid ); + HRESULT interface_in ( [in] ITest *obj ); + HRESULT interrupt ( [in] ITest *obj, [in] SAptId id, BOOL go ); + HRESULT interrupt_marshal ( [in] ITest *obj1, [in] ITest *obj2 ); + HRESULT make_acl ( [in] HACKSID *allow ); + HRESULT null (); + HRESULT out ( [out] ITest **obj ); + HRESULT pointer ( [in] DWORD *ptr ); + HRESULT recurse ( [in] ITest *callback, [in] ULONG depth ); + HRESULT recurse_disconnect ( [in] ITest *callback, [in] ULONG depth ); + HRESULT recurse_excp ( [in] ITest *callback, [in] ULONG depth ); + HRESULT recurse_fatal ( [in] ITest *callback, + [in] ULONG catch_depth, + [in] ULONG throw_depth, + [in] BOOL cancel ); + HRESULT register_hook ( [in] GUID ext, [in] DWORD seq ); + HRESULT recurse_interrupt ( [in] ITest *callback, [in] ULONG depth ); + HRESULT recurse_secure ( [in] ITest *callback, [in] ULONG depth, + [in] ULONG imp_depth, [in] HACKSID *Caller ); + HRESULT register_message_filter( BOOL ); + HRESULT register_rpc ( [in] STRING protseq, [out] STRING *binding ); + HRESULT reinitialize (); + HRESULT reject_next (); + HRESULT remember ( [in] ITest *neighbor, [in] SAptId id ); + HRESULT rest_and_die (); + HRESULT retry_next (); + HRESULT ring ( [in] DWORD length ); + HRESULT secure ( [in] SAptId id, + [in] DWORD AuthnLevel, [in] DWORD ImpLevel, + [in] DWORD AuthnSvc, [in] DWORD AuthzSvc, + [in, unique] STRING PrincName, + [in] HACKSID *Caller, + [out] DWORD *QueryAuthnLevel ); + HRESULT security_performance ( [out] DWORD *get_call, + [out] DWORD *query_client, + [out] DWORD *impersonate, + [out] DWORD *revert ); + HRESULT set_state ( [in] DWORD flags, [in] DWORD priority ); + HRESULT sick ( [in] ULONG throw_val ); + HRESULT sleep ( [in] ULONG time ); + HRESULT test ( [in] ULONG gronk ); + +} + +[ + object, + uuid(60000201-76d7-11cf-9af1-0020af6e72f4), + pointer_default(unique) +] +interface ITestNoneImp : ITest +{ + HRESULT dummy(); +} + +[ + object, + uuid(60000202-76d7-11cf-9af1-0020af6e72f4), + pointer_default(unique) +] +interface ITestConnectImp : ITest +{ + HRESULT dummy(); +} + +[ + object, + uuid(60000203-76d7-11cf-9af1-0020af6e72f4), + pointer_default(unique) +] +interface ITestEncryptImp : ITest +{ + HRESULT dummy(); +} + +[ + object, + uuid(60000204-76d7-11cf-9af1-0020af6e72f4), + pointer_default(unique) +] +interface ITestNoneId : ITest +{ + HRESULT dummy(); +} + +[ + object, + uuid(60000205-76d7-11cf-9af1-0020af6e72f4), + pointer_default(unique) +] +interface ITestConnectId : ITest +{ + HRESULT dummy(); +} + +[ + object, + uuid(60000206-76d7-11cf-9af1-0020af6e72f4), + pointer_default(unique) +] +interface ITestEncryptId : ITest +{ + HRESULT dummy(); +} + +//] diff --git a/private/oleutest/channel/idl/makefile b/private/oleutest/channel/idl/makefile new file mode 100644 index 000000000..510cce95d --- /dev/null +++ b/private/oleutest/channel/idl/makefile @@ -0,0 +1,9 @@ +############################################################################ +# +# Copyright (C) 1992, Microsoft Corporation. +# +# All rights reserved. +# +############################################################################ + +!include $(NTMAKEENV)\makefile.def diff --git a/private/oleutest/channel/idl/makefile.inc b/private/oleutest/channel/idl/makefile.inc new file mode 100644 index 000000000..d74e26319 --- /dev/null +++ b/private/oleutest/channel/idl/makefile.inc @@ -0,0 +1,37 @@ +itest.h: itest.idl + midl itest.idl \ + -Zp8 \ + -I$(INCLUDES:;= -I) \ + -ms_ext \ + -c_ext \ + -Os \ + -out ..\app \ + -header ..\idl\itest.h \ + -iid ..\app\itest_i.c \ + $(C_DEFINES) \ + -DMIDL_PASS + +dog.h: dog.idl + midl dog.idl \ + -Zp8 \ + -I$(INCLUDES:;= -I) \ + -ms_ext \ + -c_ext \ + -Os \ + -out ..\app \ + -header ..\idl\dog.h \ + -iid ..\app\dog_i.c \ + -prefix server x \ + $(C_DEFINES) \ + -DMIDL_PASS + +# +# This target compiles all .idl files into their corresponding _?.c?? and +# .h components +# +allidl: itest.h dog.h + +clean: + erase itest.h >NUL 2>NUL + erase dog.h >NUL 2>NUL + diff --git a/private/oleutest/channel/idl/pch.cxx b/private/oleutest/channel/idl/pch.cxx new file mode 100644 index 000000000..984d8d2bf --- /dev/null +++ b/private/oleutest/channel/idl/pch.cxx @@ -0,0 +1,18 @@ +//+------------------------------------------------------------------------- +// +// Microsoft Windows +// Copyright (C) Microsoft Corporation, 1991 - 1992. +// +// File: PCH.CXX +// +// Contents: Precompiled header +// +// History: 12-Jul-93 ShannonC Created +// +//-------------------------------------------------------------------------- + +#include "stdrpc.hxx" +#pragma hdrstop + + + diff --git a/private/oleutest/channel/idl/prxydll.def b/private/oleutest/channel/idl/prxydll.def new file mode 100644 index 000000000..e09e1ce91 --- /dev/null +++ b/private/oleutest/channel/idl/prxydll.def @@ -0,0 +1,47 @@ +#if 0 + + Microsoft Windows + Copyright (C) Microsoft Corporation, 1992 - 1992. + All rights reserved. + + This .def file is preprocessed by the compiler to create the version for + the current build in the appropriate subdir. Basically, whatever you + would have used in your code to control what is compiled when can be + used in this file for the same purpose. The following defines are in + use at the time this file was written: + + FLAT - Used to indicate a NT/DOS7 build + i386 - Intel i386/i486 build + MIPS - MIPS R3000/R4000 build + ALPHA - DEC Alpha build + DBG - Used to control Debug/Retail. Set to 1 if Debug, + 0 if Retail. + WIN31 - Win16 build + __OS2__ - OS/2 build (used by CT mostly) + + If none of these are used, it is assumed the entire file can be used + for all builds. + +#endif + +#ifdef FLAT + +LIBRARY ITEST + +DESCRIPTION 'Microsoft (R) OLE 2.0 Proxy/Stub DLL 1.00' + +EXPORTS + +#if defined(i386) + + DllGetClassObject=DllGetClassObject@12 @1 + DllCanUnloadNow=DllCanUnloadNow@0 @2 + +#elif defined(_MIPS_) + + DllGetClassObject @1 + DllCanUnloadNow @2 + +#endif // i386 - MIPS + +#endif // FLAT diff --git a/private/oleutest/channel/idl/sources b/private/oleutest/channel/idl/sources new file mode 100644 index 000000000..0112b8e8d --- /dev/null +++ b/private/oleutest/channel/idl/sources @@ -0,0 +1,66 @@ +!IF 0 + +Copyright (c) 1989 Microsoft Corporation + +Module Name: + + sources. + +Abstract: + + This file specifies the target component being built and the list of + sources files needed to build that component. Also specifies optional + compiler switches and libraries that are unique for the component being + built. + + +Author: + + Dean Edwards (DeanE) 11-Jan-1993 + +!ENDIF + +MAJORCOMP = comutest +MINORCOMP = channel + +# +# This is the name of the target built from the source files specified +# below. The name should include neither the path nor the file extension. +# + +TARGETNAME= idl + +# +# This specifies where the target is to be built. A private target of +# type LIBRARY or DYNLINK should go to obj, whereas a public target of +# type LIBRARY or DYNLINK should go to $(BASEDIR)\public\sdk\lib. +# + +TARGETPATH= obj + +# +# This specifies the type of the target, such as PROGRAM, DYNLINK, LIBRARY, +# etc. +# + +TARGETTYPE= LIBRARY + +INCLUDES= $(BASEDIR)\public\sdk\inc + +C_DEFINES= $(C_DEFINES) + +BLDCRT= 1 + +SOURCES= + +UMTYPE= windows +UMAPPL= +UMTEST= +UMLIBS= + +USE_LIBCMT= + +NTTARGETFILE0= allidl + +PRECOMPILED_INCLUDE= + diff --git a/private/oleutest/channel/idl/test.reg b/private/oleutest/channel/idl/test.reg new file mode 100644 index 000000000..40112de96 --- /dev/null +++ b/private/oleutest/channel/idl/test.reg @@ -0,0 +1,24 @@ + +; registry entries for ITest interface. these map the interfaces +; to the proxy/stub code in itest.dll + + +\Registry\MACHINE\SOFTWARE\Classes\Interface\{60000494-AB0F-101A-B4AE-08002B30612C} + = ITest +\Registry\MACHINE\SOFTWARE\Classes\Interface\{60000494-AB0F-101A-B4AE-08002B30612C}\ProxyStubClsid32 + = {60000494-AB0F-101A-B4AE-08002B30612C} + +\Registry\MACHINE\SOFTWARE\Classes\CLSID\{60000494-AB0F-101A-B4AE-08002B30612C} + = CPrxyITest +\Registry\MACHINE\SOFTWARE\Classes\CLSID\{60000494-AB0F-101A-B4AE-08002B30612C}\InprocServer32 + = itest.dll + +\Registry\MACHINE\SOFTWARE\Classes\CLSID\{60000430-AB0F-101A-B4AE-08002B30612C} + = CTestCF +\Registry\MACHINE\SOFTWARE\Classes\CLSID\{60000430-AB0F-101A-B4AE-08002B30612C}\LocalServer32 + = app.exe + + + + +
\ No newline at end of file diff --git a/private/oleutest/channel/idl/test2.reg b/private/oleutest/channel/idl/test2.reg new file mode 100644 index 000000000..1f8a8407a --- /dev/null +++ b/private/oleutest/channel/idl/test2.reg @@ -0,0 +1,16 @@ +REGEDIT + + +HKEY_CLASSES_ROOT\Interface\{60000494-AB0F-101A-B4AE-08002B30612C} = ITest +HKEY_CLASSES_ROOT\Interface\{60000494-AB0F-101A-B4AE-08002B30612C}\ProxyStubClsid32 = {60000494-AB0F-101A-B4AE-08002B30612C} + +HKEY_CLASSES_ROOT\CLSID\{60000494-AB0F-101A-B4AE-08002B30612C} = CPrxyITest +HKEY_CLASSES_ROOT\CLSID\{60000494-AB0F-101A-B4AE-08002B30612C}\InprocServer32 = itest.dll + +HKEY_CLASSES_ROOT\CLSID\{60000430-AB0F-101A-B4AE-08002B30612C} = CTestCF +HKEY_CLASSES_ROOT\CLSID\{60000430-AB0F-101A-B4AE-08002B30612C}\LocalServer32 = app.exe + + + + +
\ No newline at end of file |