mirror of https://github.com/lianthony/NT4.0
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
192 lines
6.5 KiB
192 lines
6.5 KiB
//[ 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();
|
|
}
|
|
|
|
//]
|