//[ 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(); } //]