Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
7cb98146
Commit
7cb98146
authored
May 01, 2013
by
Daniel Jelinski
Committed by
Alexandre Julliard
May 29, 2013
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
include: Add txdtc.idl and txcoord.idl.
parent
e60e09e2
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
700 additions
and
0 deletions
+700
-0
.gitignore
.gitignore
+2
-0
Makefile.in
include/Makefile.in
+2
-0
txcoord.idl
include/txcoord.idl
+181
-0
txdtc.idl
include/txdtc.idl
+515
-0
No files found.
.gitignore
View file @
7cb98146
...
@@ -247,6 +247,8 @@ include/textstor.h
...
@@ -247,6 +247,8 @@ include/textstor.h
include/tlogstg.h
include/tlogstg.h
include/tom.h
include/tom.h
include/transact.h
include/transact.h
include/txcoord.h
include/txdtc.h
include/uiautomationclient.h
include/uiautomationclient.h
include/uiautomationcore.h
include/uiautomationcore.h
include/unknwn.h
include/unknwn.h
...
...
include/Makefile.in
View file @
7cb98146
...
@@ -99,6 +99,8 @@ PUBLIC_IDL_H_SRCS = \
...
@@ -99,6 +99,8 @@ PUBLIC_IDL_H_SRCS = \
tlogstg.idl
\
tlogstg.idl
\
tom.idl
\
tom.idl
\
transact.idl
\
transact.idl
\
txcoord.idl
\
txdtc.idl
\
uiautomationclient.idl
\
uiautomationclient.idl
\
uiautomationcore.idl
\
uiautomationcore.idl
\
unknwn.idl
\
unknwn.idl
\
...
...
include/txcoord.idl
0 → 100644
View file @
7cb98146
/*
*
Copyright
(
C
)
2013
Daniel
Jeli
ń
ski
*
*
This
library
is
free
software
; you can redistribute it and/or
*
modify
it
under
the
terms
of
the
GNU
Lesser
General
Public
*
License
as
published
by
the
Free
Software
Foundation
; either
*
version
2.1
of
the
License
,
or
(
at
your
option
)
any
later
version
.
*
*
This
library
is
distributed
in
the
hope
that
it
will
be
useful
,
*
but
WITHOUT
ANY
WARRANTY
; without even the implied warranty of
*
MERCHANTABILITY
or
FITNESS
FOR
A
PARTICULAR
PURPOSE
.
See
the
GNU
*
Lesser
General
Public
License
for
more
details
.
*
*
You
should
have
received
a
copy
of
the
GNU
Lesser
General
Public
*
License
along
with
this
library
; if not, write to the Free Software
*
Foundation
,
Inc
.
,
51
Franklin
St
,
Fifth
Floor
,
Boston
,
MA
02110
-
1301
,
USA
*/
import
"transact.idl"
;
import
"objidl.idl"
;
interface
ITransactionResourceAsync
;
interface
ITransactionLastResourceAsync
;
interface
ITransactionResource
;
interface
ITransactionEnlistmentAsync
;
interface
ITransactionLastEnlistmentAsync
;
interface
ITransactionExportFactory
;
interface
ITransactionImportWhereabouts
;
interface
ITransactionExport
;
interface
ITransactionImport
;
interface
ITipTransaction
;
interface
ITipHelper
;
interface
ITipPullSink
;
interface
IDtcNetworkAccessConfig
;
interface
IDtcNetworkAccessConfig2
;
[
object
,
uuid
(
69
e971f0
-
23
ce
-
11
cf
-
ad60
-
00
aa00a74ccd
)
]
interface
ITransactionResourceAsync
:
IUnknown
{
HRESULT
PrepareRequest
(
[
in
]
BOOL
fRetaining
,
[
in
]
DWORD
grfRM
,
[
in
]
BOOL
fWantMoniker
,
[
in
]
BOOL
fSinglePhase
)
;
HRESULT
CommitRequest
(
[
in
]
DWORD
grfRM
,
[
in
]
XACTUOW
*
pNewUOW
)
;
HRESULT
AbortRequest
(
[
in
]
BOID
*
pboidReason
,
[
in
]
BOOL
fRetaining
,
[
in
]
XACTUOW
*
pNewUOW
)
;
HRESULT
TMDown
(
void
)
;
}
;
[
object
,
uuid
(
c82bd532
-
5b30
-
11
d3
-
8
a91
-
00
c04f79eb6d
)
]
interface
ITransactionLastResourceAsync
:
IUnknown
{
HRESULT
DelegateCommit
(
[
in
]
DWORD
grfRM
)
;
HRESULT
ForgetRequest
(
[
in
]
XACTUOW
*
pNewUOW
)
;
}
;
[
object
,
uuid
(
ee5ff7b3
-
4572
-
11
d0
-
9452
-
00
a0c905416e
)
]
interface
ITransactionResource
:
IUnknown
{
HRESULT
PrepareRequest
(
[
in
]
BOOL
fRetaining
,
[
in
]
DWORD
grfRM
,
[
in
]
BOOL
fWantMoniker
,
[
in
]
BOOL
fSinglePhase
)
;
HRESULT
CommitRequest
(
[
in
]
DWORD
grfRM
,
[
in
]
XACTUOW
*
pNewUOW
)
;
HRESULT
AbortRequest
(
[
in
]
BOID
*
pboidReason
,
[
in
]
BOOL
fRetaining
,
[
in
]
XACTUOW
*
pNewUOW
)
;
HRESULT
TMDown
(
void
)
;
}
;
[
object
,
uuid
(
0
fb15081
-
af41
-
11
ce
-
bd2b
-
204
c4f4f5020
)
]
interface
ITransactionEnlistmentAsync
:
IUnknown
{
HRESULT
PrepareRequestDone
(
[
in
]
HRESULT
hr
,
[
in
]
IMoniker
*
pmk
,
[
in
]
BOID
*
pboidReason
)
;
HRESULT
CommitRequestDone
(
[
in
]
HRESULT
hr
)
;
HRESULT
AbortRequestDone
(
[
in
]
HRESULT
hr
)
;
}
;
[
object
,
uuid
(
c82bd533
-
5b30
-
11
d3
-
8
a91
-
00
c04f79eb6d
)
]
interface
ITransactionLastEnlistmentAsync
:
IUnknown
{
HRESULT
TransactionOutcome
(
[
in
]
XACTSTAT
XactStat
,
[
in
]
BOID
*
pboidReason
)
;
}
;
[
object
,
uuid
(
e1cf9b53
-
8745
-
11
ce
-
a9ba
-
00
aa006c3706
)
]
interface
ITransactionExportFactory
:
IUnknown
{
HRESULT
GetRemoteClassId
(
[
in
]
CLSID
*
pclsid
)
;
HRESULT
Create
(
[
in
]
ULONG
cbWhereabouts
,
[
in
]
byte
*
rgbWhereabouts
,
[
out
]
ITransactionExport
**
ppExport
)
;
}
;
[
object
,
uuid
(
0141
fda4
-
8
fc0
-
11
ce
-
bd18
-
204
c4f4f5020
)
]
interface
ITransactionImportWhereabouts
:
IUnknown
{
HRESULT
GetWhereaboutsSize
(
[
out
]
ULONG
*
pcbWhereabouts
)
;
HRESULT
GetWhereabouts
(
[
in
]
ULONG
cbWhereabouts
,
[
out
]
byte
*
rgbWhereabouts
,
[
out
]
ULONG
*
pcbUsed
)
;
}
;
[
object
,
uuid
(
0141
fda5
-
8
fc0
-
11
ce
-
bd18
-
204
c4f4f5020
)
]
interface
ITransactionExport
:
IUnknown
{
HRESULT
Export
(
[
in
]
IUnknown
*
punkTransaction
,
[
out
]
ULONG
*
pcbTransactionCookie
)
;
HRESULT
GetTransactionCookie
(
[
in
]
IUnknown
*
punkTransaction
,
[
in
]
ULONG
cbTransactionCookie
,
[
out
]
byte
*
rgbTransactionCookie
,
[
out
]
ULONG
*
pcbUsed
)
;
}
;
[
object
,
uuid
(
e1cf9b5a
-
8745
-
11
ce
-
a9ba
-
00
aa006c3706
)
]
interface
ITransactionImport
:
IUnknown
{
HRESULT
Import
(
[
in
]
ULONG
cbTransactionCookie
,
[
in
]
byte
*
rgbTransactionCookie
,
[
in
]
IID
*
piid
,
[
out
,
iid_is
(
piid
)
]
void
**
ppvTransaction
)
;
}
;
[
object
,
uuid
(
17
cf72d0
-
bac5
-
11
d1
-
b1bf
-
00
c04fc2f3ef
)
]
interface
ITipTransaction
:
IUnknown
{
HRESULT
Push
(
[
in
]
char
*
i_pszRemoteTmUrl
,
[
out
]
char
**
o_ppszRemoteTxUrl
)
;
HRESULT
GetTransactionUrl
(
[
out
]
char
**
o_ppszLocalTxUrl
)
;
}
;
[
object
,
uuid
(
17
cf72d1
-
bac5
-
11
d1
-
b1bf
-
00
c04fc2f3ef
)
]
interface
ITipHelper
:
IUnknown
{
HRESULT
Pull
(
[
in
]
char
*
i_pszTxUrl
,
[
out
]
ITransaction
**
o_ppITransaction
)
;
HRESULT
PullAsync
(
[
in
]
char
*
i_pszTxUrl
,
[
in
]
ITipPullSink
*
i_pTipPullSink
,
[
out
]
ITransaction
**
o_ppITransaction
)
;
HRESULT
GetLocalTmUrl
(
[
out
]
char
**
o_ppszLocalTmUrl
)
;
}
;
[
object
,
uuid
(
17
cf72d2
-
bac5
-
11
d1
-
b1bf
-
00
c04fc2f3ef
)
]
interface
ITipPullSink
:
IUnknown
{
HRESULT
PullComplete
(
[
in
]
HRESULT
i_hrPull
)
;
}
;
[
object
,
uuid
(
9797
c15d
-
a428
-
4291
-
87b6
-
0995031
a678d
)
]
interface
IDtcNetworkAccessConfig
:
IUnknown
{
HRESULT
GetAnyNetworkAccess
(
[
out
]
BOOL
*
pbAnyNetworkAccess
)
;
HRESULT
SetAnyNetworkAccess
(
[
in
]
BOOL
bAnyNetworkAccess
)
;
HRESULT
GetNetworkAdministrationAccess
(
[
out
]
BOOL
*
pbNetworkAdministrationAccess
)
;
HRESULT
SetNetworkAdministrationAccess
(
[
in
]
BOOL
bNetworkAdministrationAccess
)
;
HRESULT
GetNetworkTransactionAccess
(
[
out
]
BOOL
*
pbNetworkTransactionAccess
)
;
HRESULT
SetNetworkTransactionAccess
(
[
in
]
BOOL
bNetworkTransactionAccess
)
;
HRESULT
GetNetworkClientAccess
(
[
out
]
BOOL
*
pbNetworkClientAccess
)
;
HRESULT
SetNetworkClientAccess
(
[
in
]
BOOL
bNetworkClientAccess
)
;
HRESULT
GetNetworkTIPAccess
(
[
out
]
BOOL
*
pbNetworkTIPAccess
)
;
HRESULT
SetNetworkTIPAccess
(
[
in
]
BOOL
bNetworkTIPAccess
)
;
HRESULT
GetXAAccess
(
[
out
]
BOOL
*
pbXAAccess
)
;
HRESULT
SetXAAccess
(
[
in
]
BOOL
bXAAccess
)
;
HRESULT
RestartDtcService
(
void
)
;
}
;
typedef
enum
AUTHENTICATION_LEVEL
{
NO_AUTHENTICATION_REQUIRED
,
INCOMING_AUTHENTICATION_REQUIRED
,
MUTUAL_AUTHENTICATION_REQUIRED
}
AUTHENTICATION_LEVEL
;
[
object
,
uuid
(
a7aa013b
-
eb7d
-
4
f42
-
b41c
-
b2dec09ae034
)
]
interface
IDtcNetworkAccessConfig2
:
IDtcNetworkAccessConfig
{
HRESULT
GetNetworkInboundAccess
(
[
out
]
BOOL
*
pbInbound
)
;
HRESULT
GetNetworkOutboundAccess
(
[
out
]
BOOL
*
pbOutbound
)
;
HRESULT
SetNetworkInboundAccess
(
[
in
]
BOOL
bInbound
)
;
HRESULT
SetNetworkOutboundAccess
(
[
in
]
BOOL
bOutbound
)
;
HRESULT
GetAuthenticationLevel
(
[
out
]
AUTHENTICATION_LEVEL
*
pAuthLevel
)
;
HRESULT
SetAuthenticationLevel
(
[
in
]
AUTHENTICATION_LEVEL
AuthLevel
)
;
}
;
include/txdtc.idl
0 → 100644
View file @
7cb98146
/*
*
Copyright
(
C
)
2013
Daniel
Jeli
ń
ski
*
*
This
library
is
free
software
; you can redistribute it and/or
*
modify
it
under
the
terms
of
the
GNU
Lesser
General
Public
*
License
as
published
by
the
Free
Software
Foundation
; either
*
version
2.1
of
the
License
,
or
(
at
your
option
)
any
later
version
.
*
*
This
library
is
distributed
in
the
hope
that
it
will
be
useful
,
*
but
WITHOUT
ANY
WARRANTY
; without even the implied warranty of
*
MERCHANTABILITY
or
FITNESS
FOR
A
PARTICULAR
PURPOSE
.
See
the
GNU
*
Lesser
General
Public
License
for
more
details
.
*
*
You
should
have
received
a
copy
of
the
GNU
Lesser
General
Public
*
License
along
with
this
library
; if not, write to the Free Software
*
Foundation
,
Inc
.
,
51
Franklin
St
,
Fifth
Floor
,
Boston
,
MA
02110
-
1301
,
USA
*/
import
"txcoord.idl"
;
interface
IXATransLookup
;
interface
IXATransLookup2
;
interface
IResourceManagerSink
;
interface
IResourceManager
;
interface
ILastResourceManager
;
interface
IResourceManager2
;
interface
IXAConfig
;
/*
interface
IRMHelper
;
interface
IXAObtainRMInfo
;*/
interface
IResourceManagerFactory
;
interface
IResourceManagerFactory2
;
interface
IPrepareInfo
;
interface
IPrepareInfo2
;
interface
IGetDispenser
;
interface
ITransactionVoterBallotAsync2
;
interface
ITransactionVoterNotifyAsync2
;
interface
ITransactionVoterFactory2
;
interface
ITransactionPhase0EnlistmentAsync
;
interface
ITransactionPhase0NotifyAsync
;
interface
ITransactionPhase0Factory
;
interface
ITransactionTransmitter
;
interface
ITransactionTransmitterFactory
;
interface
ITransactionReceiver
;
interface
ITransactionReceiverFactory
;
interface
IDtcLuConfigure
;
interface
IDtcLuRecovery
;
interface
IDtcLuRecoveryFactory
;
interface
IDtcLuRecoveryInitiatedByDtcTransWork
;
interface
IDtcLuRecoveryInitiatedByDtcStatusWork
;
interface
IDtcLuRecoveryInitiatedByDtc
;
interface
IDtcLuRecoveryInitiatedByLuWork
;
interface
IDtcLuRecoveryInitiatedByLu
;
interface
IDtcLuRmEnlistment
;
interface
IDtcLuRmEnlistmentSink
;
interface
IDtcLuRmEnlistmentFactory
;
interface
IDtcLuSubordinateDtc
;
interface
IDtcLuSubordinateDtcSink
;
interface
IDtcLuSubordinateDtcFactory
;
cpp_quote
(
"#define XACTTOMSG(dwXact) (dwXact-0x00040000+0x40000000)"
)
typedef
enum
XACT_DTC_CONSTANTS
{
XACT_E_CONNECTION_REQUEST_DENIED
=
0
x8004d100
,
XACT_E_TOOMANY_ENLISTMENTS
=
0
x8004d101
,
XACT_E_DUPLICATE_GUID
=
0
x8004d102
,
XACT_E_NOTSINGLEPHASE
=
0
x8004d103
,
XACT_E_RECOVERYALREADYDONE
=
0
x8004d104
,
XACT_E_PROTOCOL
=
0
x8004d105
,
XACT_E_RM_FAILURE
=
0
x8004d106
,
XACT_E_RECOVERY_FAILED
=
0
x8004d107
,
XACT_E_LU_NOT_FOUND
=
0
x8004d108
,
XACT_E_DUPLICATE_LU
=
0
x8004d109
,
XACT_E_LU_NOT_CONNECTED
=
0
x8004d10a
,
XACT_E_DUPLICATE_TRANSID
=
0
x8004d10b
,
XACT_E_LU_BUSY
=
0
x8004d10c
,
XACT_E_LU_NO_RECOVERY_PROCESS
=
0
x8004d10d
,
XACT_E_LU_DOWN
=
0
x8004d10e
,
XACT_E_LU_RECOVERING
=
0
x8004d10f
,
XACT_E_LU_RECOVERY_MISMATCH
=
0
x8004d110
,
XACT_E_RM_UNAVAILABLE
=
0
x8004d111
,
XACT_E_LRMRECOVERYALREADYDONE
=
0
x8004d112
,
XACT_E_NOLASTRESOURCEINTERFACE
=
0
x8004d113
,
XACT_S_NONOTIFY
=
0
x4d100
,
XACT_OK_NONOTIFY
=
0
x4d101
,
dwUSER_MS_SQLSERVER
=
0
xffff
}
XACT_DTC_CONSTANTS
;
cpp_quote
(
"#ifndef _XID_T_DEFINED"
)
cpp_quote
(
"#define _XID_T_DEFINED"
)
typedef
struct
xid_t
{
LONG32
formatID
;
LONG32
gtrid_length
;
LONG32
bqual_length
;
char
data
[
128
]
;
}
XID
;
cpp_quote
(
"#endif"
)
/*
idl
doesn
't like this type
cpp_quote("#ifndef _XA_SWITCH_T_DEFINED")
cpp_quote("#define _XA_SWITCH_T_DEFINED")
typedef struct xa_switch_t {
char name[32 ];
LONG32 flags;
LONG32 version;
int (__cdecl *xa_open_entry)(char *__MIDL_0004,int __MIDL_0005,LONG32 __MIDL_0006);
int (__cdecl *xa_close_entry)(char *__MIDL_0008,int __MIDL_0009,LONG32 __MIDL_0010);
int (__cdecl *xa_start_entry)(XID *__MIDL_0012,int __MIDL_0013,LONG32 __MIDL_0014);
int (__cdecl *xa_end_entry)(XID *__MIDL_0016,int __MIDL_0017,LONG32 __MIDL_0018);
int (__cdecl *xa_rollback_entry)(XID *__MIDL_0020,int __MIDL_0021,LONG32 __MIDL_0022);
int (__cdecl *xa_prepare_entry)(XID *__MIDL_0024,int __MIDL_0025,LONG32 __MIDL_0026);
int (__cdecl *xa_commit_entry)(XID *__MIDL_0028,int __MIDL_0029,LONG32 __MIDL_0030);
int (__cdecl *xa_recover_entry)(XID *__MIDL_0032,LONG32 __MIDL_0033,int __MIDL_0034,LONG32 __MIDL_0035);
int (__cdecl *xa_forget_entry)(XID *__MIDL_0037,int __MIDL_0038,LONG32 __MIDL_0039);
int (__cdecl *xa_complete_entry)(int *__MIDL_0041,int *__MIDL_0042,int __MIDL_0043,LONG32 __MIDL_0044);
} xa_switch_t;
cpp_quote("#endif")
*/
[
object,
uuid(f3b1f131-eeda-11ce-aed4-00aa0051e2c4)
]
interface IXATransLookup : IUnknown {
HRESULT Lookup([out]ITransaction **ppTransaction);
};
[
object,
uuid(bf193c85-0d1a-4290-b88f-d2cb8873d1e7)
]
interface IXATransLookup2 : IUnknown {
HRESULT Lookup([in]XID *pXID,[out]ITransaction **ppTransaction);
};
[
object,
uuid(0d563181-defb-11ce-aed1-00aa0051e2c4)
]
interface IResourceManagerSink : IUnknown {
HRESULT TMDown(void);
};
[
object,
uuid(13741d21-87eb-11ce-8081-0080c758527e)
]
interface IResourceManager : IUnknown {
HRESULT Enlist([in]ITransaction *pTransaction,[in]ITransactionResourceAsync *pRes,[out]XACTUOW *pUOW,[out]LONG *pisoLevel,[out]ITransactionEnlistmentAsync **ppEnlist);
HRESULT Reenlist([in]byte *pPrepInfo,[in]ULONG cbPrepInfo,[in]DWORD lTimeout,[out]XACTSTAT *pXactStat);
HRESULT ReenlistmentComplete(void);
HRESULT GetDistributedTransactionManager([in]REFIID iid,[out,iid_is(iid)]void **ppvObject);
};
[
object,
uuid(4d964ad4-5b33-11d3-8a91-00c04f79eb6d)
]
interface ILastResourceManager : IUnknown {
HRESULT TransactionCommitted([in]byte *pPrepInfo,[in]ULONG cbPrepInfo);
HRESULT RecoveryDone(void);
};
[
object,
uuid(d136c69a-f749-11d1-8f47-00c04f8ee57d)
]
interface IResourceManager2 : IResourceManager {
HRESULT Enlist2([in]ITransaction *pTransaction,[in]ITransactionResourceAsync *pResAsync,[out]XACTUOW *pUOW,[out]LONG *pisoLevel,[out]XID *pXid,[out]ITransactionEnlistmentAsync **ppEnlist);
HRESULT Reenlist2([in]XID *pXid,[in]DWORD dwTimeout,[out]XACTSTAT *pXactStat);
};
[
object,
uuid(c8a6e3a1-9a8c-11cf-a308-00a0c905416e)
]
interface IXAConfig : IUnknown {
HRESULT Initialize([in]GUID clsidHelperDll);
HRESULT Terminate(void);
};
/* commented out because idl doesn'
t
accept
xa_switch_t
type
[
object
,
uuid
(
E793F6D1
-
F53D
-
11
cf
-
A60D
-
00
A0C905416E
)
]
interface
IRMHelper
:
IUnknown
{
HRESULT
RMCount
(
[
in
]
DWORD
dwcTotalNumberOfRMs
)
;
HRESULT
RMInfo
(
[
in
]
xa_switch_t
*
pXa_Switch
,
[
in
]
BOOL
fCDeclCallingConv
,
[
in
]
char
*
pszOpenString
,
[
in
]
char
*
pszCloseString
,
[
in
]
GUID
guidRMRecovery
)
;
}
;
[
object
,
uuid
(
E793F6D2
-
F53D
-
11
cf
-
A60D
-
00
A0C905416E
)
]
interface
IXAObtainRMInfo
:
IUnknown
{
HRESULT
ObtainRMInfo
(
[
in
]
IRMHelper
*
pIRMHelper
)
;
}
;*/
[
object
,
uuid
(
13741
d20
-
87
eb
-
11
ce
-
8081
-
0080
c758527e
)
]
interface
IResourceManagerFactory
:
IUnknown
{
HRESULT
Create
(
[
in
]
GUID
*
pguidRM
,
[
in
]
CHAR
*
pszRMName
,
[
in
]
IResourceManagerSink
*
pIResMgrSink
,
[
out
]
IResourceManager
**
ppResMgr
)
;
}
;
[
object
,
uuid
(
6b369
c21
-
fbd2
-
11
d1
-
8
f47
-
00
c04f8ee57d
)
]
interface
IResourceManagerFactory2
:
IResourceManagerFactory
{
HRESULT
CreateEx
(
[
in
]
GUID
*
pguidRM
,
[
in
]
CHAR
*
pszRMName
,
[
in
]
IResourceManagerSink
*
pIResMgrSink
,
[
in
]
REFIID
riidRequested
,
[
out
,
iid_is
(
riidRequested
)
]
void
**
ppvResMgr
)
;
}
;
[
object
,
uuid
(
80
c7bfd0
-
87
ee
-
11
ce
-
8081
-
0080
c758527e
)
]
interface
IPrepareInfo
:
IUnknown
{
HRESULT
GetPrepareInfoSize
(
[
out
]
ULONG
*
pcbPrepInfo
)
;
HRESULT
GetPrepareInfo
(
[
out
]
byte
*
pPrepInfo
)
;
}
;
[
object
,
uuid
(
5
fab2547
-
9779
-
11
d1
-
b886
-
00
c04fb9618a
)
]
interface
IPrepareInfo2
:
IUnknown
{
HRESULT
GetPrepareInfoSize
(
[
out
]
ULONG
*
pcbPrepInfo
)
;
HRESULT
GetPrepareInfo
(
[
in
]
ULONG
cbPrepareInfo
,
[
out
]
byte
*
pPrepInfo
)
;
}
;
[
object
,
uuid
(
c23cc370
-
87
ef
-
11
ce
-
8081
-
0080
c758527e
)
]
interface
IGetDispenser
:
IUnknown
{
HRESULT
GetDispenser
(
[
in
]
REFIID
iid
,
[
out
,
iid_is
(
iid
)
]
void
**
ppvObject
)
;
}
;
[
object
,
uuid
(
5433376
c
-414d-11
d3
-
b206
-
00
c04fc2f3ef
)
]
interface
ITransactionVoterBallotAsync2
:
IUnknown
{
HRESULT
VoteRequestDone
(
[
in
]
HRESULT
hr
,
[
in
]
BOID
*
pboidReason
)
;
}
;
[
object
,
uuid
(
5433376b
-414d-11
d3
-
b206
-
00
c04fc2f3ef
)
]
interface
ITransactionVoterNotifyAsync2
:
ITransactionOutcomeEvents
{
HRESULT
VoteRequest
(
void
)
;
}
;
[
object
,
uuid
(
5433376
a
-414d-11
d3
-
b206
-
00
c04fc2f3ef
)
]
interface
ITransactionVoterFactory2
:
IUnknown
{
HRESULT
Create
(
[
in
]
ITransaction
*
pTransaction
,
[
in
]
ITransactionVoterNotifyAsync2
*
pVoterNotify
,
[
out
]
ITransactionVoterBallotAsync2
**
ppVoterBallot
)
;
}
;
[
object
,
uuid
(
82
dc88e1
-
a954
-
11
d1
-
8
f88
-
00600895
e7d5
)
]
interface
ITransactionPhase0EnlistmentAsync
:
IUnknown
{
HRESULT
Enable
(
void
)
;
HRESULT
WaitForEnlistment
(
void
)
;
HRESULT
Phase0Done
(
void
)
;
HRESULT
Unenlist
(
void
)
;
HRESULT
GetTransaction
(
[
out
]
ITransaction
**
ppITransaction
)
;
}
;
[
object
,
uuid
(
ef081809
-
0
c76
-
11
d2
-
87
a6
-
00
c04f990f34
)
]
interface
ITransactionPhase0NotifyAsync
:
IUnknown
{
HRESULT
Phase0Request
(
[
in
]
BOOL
fAbortingHint
)
;
HRESULT
EnlistCompleted
(
[
in
]
HRESULT
status
)
;
}
;
[
object
,
uuid
(
82
dc88e0
-
a954
-
11
d1
-
8
f88
-
00600895
e7d5
)
]
interface
ITransactionPhase0Factory
:
IUnknown
{
HRESULT
Create
(
[
in
]
ITransactionPhase0NotifyAsync
*
pPhase0Notify
,
[
out
]
ITransactionPhase0EnlistmentAsync
**
ppPhase0Enlistment
)
;
}
;
[
object
,
uuid
(
59313
e01
-
b36c
-
11
cf
-
a539
-
00
aa006887c3
)
]
interface
ITransactionTransmitter
:
IUnknown
{
HRESULT
Set
(
[
in
]
ITransaction
*
pTransaction
)
;
HRESULT
GetPropagationTokenSize
(
[
out
]
ULONG
*
pcbToken
)
;
HRESULT
MarshalPropagationToken
(
[
in
]
ULONG
cbToken
,
[
out
]
byte
*
rgbToken
,
[
out
]
ULONG
*
pcbUsed
)
;
HRESULT
UnmarshalReturnToken
(
[
in
]
ULONG
cbReturnToken
,
[
in
]
byte
*
rgbReturnToken
)
;
HRESULT
Reset
(
void
)
;
}
;
[
object
,
uuid
(
59313
e00
-
b36c
-
11
cf
-
a539
-
00
aa006887c3
)
]
interface
ITransactionTransmitterFactory
:
IUnknown
{
HRESULT
Create
(
[
out
]
ITransactionTransmitter
**
ppTransmitter
)
;
}
;
[
object
,
uuid
(
59313
e03
-
b36c
-
11
cf
-
a539
-
00
aa006887c3
)
]
interface
ITransactionReceiver
:
IUnknown
{
HRESULT
UnmarshalPropagationToken
(
[
in
]
ULONG
cbToken
,
[
in
]
byte
*
rgbToken
,
[
out
]
ITransaction
**
ppTransaction
)
;
HRESULT
GetReturnTokenSize
(
[
out
]
ULONG
*
pcbReturnToken
)
;
HRESULT
MarshalReturnToken
(
[
in
]
ULONG
cbReturnToken
,
[
out
]
byte
*
rgbReturnToken
,
[
out
]
ULONG
*
pcbUsed
)
;
HRESULT
Reset
(
void
)
;
}
;
[
object
,
uuid
(
59313
e02
-
b36c
-
11
cf
-
a539
-
00
aa006887c3
)
]
interface
ITransactionReceiverFactory
:
IUnknown
{
HRESULT
Create
(
[
out
]
ITransactionReceiver
**
ppReceiver
)
;
}
;
typedef
struct
_ProxyConfigParams
{
WORD
wcThreadsMax
;
}
PROXY_CONFIG_PARAMS
;
[
object
,
uuid
(
4131
e760
-
1
aea
-
11
d0
-
944b
-
00
a0c905416e
)
]
interface
IDtcLuConfigure
:
IUnknown
{
HRESULT
Add
(
[
in
]
byte
*
pucLuPair
,
[
in
]
DWORD
cbLuPair
)
;
HRESULT
Delete
(
[
in
]
byte
*
pucLuPair
,
[
in
]
DWORD
cbLuPair
)
;
}
;
[
object
,
uuid
(
ac2b8ad2
-
d6f0
-
11
d0
-
b386
-
00
a0c9083365
)
]
interface
IDtcLuRecovery
:
IUnknown
{
}
;
[
object
,
uuid
(
4131
e762
-
1
aea
-
11
d0
-
944b
-
00
a0c905416e
)
]
interface
IDtcLuRecoveryFactory
:
IUnknown
{
HRESULT
Create
(
[
in
]
byte
*
pucLuPair
,
[
in
]
DWORD
cbLuPair
,
[
out
]
IDtcLuRecovery
**
ppRecovery
)
;
}
;
typedef
enum
_DtcLu_LocalRecovery_Work
{
DTCINITIATEDRECOVERYWORK_CHECKLUSTATUS
=
1
,
DTCINITIATEDRECOVERYWORK_TRANS
,
DTCINITIATEDRECOVERYWORK_TMDOWN
}
DTCINITIATEDRECOVERYWORK
;
typedef
enum
_DtcLu_Xln
{
DTCLUXLN_COLD
=
1
,
DTCLUXLN_WARM
}
DTCLUXLN
;
typedef
enum
_DtcLu_Xln_Confirmation
{
DTCLUXLNCONFIRMATION_CONFIRM
=
1
,
DTCLUXLNCONFIRMATION_LOGNAMEMISMATCH
,
DTCLUXLNCONFIRMATION_COLDWARMMISMATCH
,
DTCLUXLNCONFIRMATION_OBSOLETE
}
DTCLUXLNCONFIRMATION
;
typedef
enum
_DtcLu_Xln_Response
{
DTCLUXLNRESPONSE_OK_SENDOURXLNBACK
=
1
,
DTCLUXLNRESPONSE_OK_SENDCONFIRMATION
,
DTCLUXLNRESPONSE_LOGNAMEMISMATCH
,
DTCLUXLNRESPONSE_COLDWARMMISMATCH
}
DTCLUXLNRESPONSE
;
typedef
enum
_DtcLu_Xln_Error
{
DTCLUXLNERROR_PROTOCOL
=
1
,
DTCLUXLNERROR_LOGNAMEMISMATCH
,
DTCLUXLNERROR_COLDWARMMISMATCH
}
DTCLUXLNERROR
;
typedef
enum
_DtcLu_CompareState
{
DTCLUCOMPARESTATE_COMMITTED
=
1
,
DTCLUCOMPARESTATE_HEURISTICCOMMITTED
,
DTCLUCOMPARESTATE_HEURISTICMIXED
,
DTCLUCOMPARESTATE_HEURISTICRESET
,
DTCLUCOMPARESTATE_INDOUBT
,
DTCLUCOMPARESTATE_RESET
}
DTCLUCOMPARESTATE
;
typedef
enum
_DtcLu_CompareStates_Confirmation
{
DTCLUCOMPARESTATESCONFIRMATION_CONFIRM
=
1
,
DTCLUCOMPARESTATESCONFIRMATION_PROTOCOL
}
DTCLUCOMPARESTATESCONFIRMATION
;
typedef
enum
_DtcLu_CompareStates_Error
{
DTCLUCOMPARESTATESERROR_PROTOCOL
=
1
}
DTCLUCOMPARESTATESERROR
;
typedef
enum
_DtcLu_CompareStates_Response
{
DTCLUCOMPARESTATESRESPONSE_OK
=
1
,
DTCLUCOMPARESTATESRESPONSE_PROTOCOL
}
DTCLUCOMPARESTATESRESPONSE
;
[
object
,
uuid
(
4131
e765
-
1
aea
-
11
d0
-
944b
-
00
a0c905416e
)
]
interface
IDtcLuRecoveryInitiatedByDtcTransWork
:
IUnknown
{
HRESULT
GetLogNameSizes
(
[
out
]
DWORD
*
pcbOurLogName
,
[
out
]
DWORD
*
pcbRemoteLogName
)
;
HRESULT
GetOurXln
(
[
out
]
DTCLUXLN
*
pXln
,
[
in
,
out
]
unsigned
char
*
pOurLogName
,
[
in
,
out
]
unsigned
char
*
pRemoteLogName
,
[
out
]
DWORD
*
pdwProtocol
)
;
HRESULT
HandleConfirmationFromOurXln
(
[
in
]
DTCLUXLNCONFIRMATION
Confirmation
)
;
HRESULT
HandleTheirXlnResponse
(
[
in
]
DTCLUXLN
Xln
,
[
in
]
unsigned
char
*
pRemoteLogName
,
[
in
]
DWORD
cbRemoteLogName
,
[
in
]
DWORD
dwProtocol
,
[
out
]
DTCLUXLNCONFIRMATION
*
pConfirmation
)
;
HRESULT
HandleErrorFromOurXln
(
[
in
]
DTCLUXLNERROR
Error
)
;
HRESULT
CheckForCompareStates
(
[
out
]
BOOL
*
fCompareStates
)
;
HRESULT
GetOurTransIdSize
(
[
in
,
out
]
DWORD
*
pcbOurTransId
)
;
HRESULT
GetOurCompareStates
(
[
in
,
out
]
unsigned
char
*
pOurTransId
,
[
out
]
DTCLUCOMPARESTATE
*
pCompareState
)
;
HRESULT
HandleTheirCompareStatesResponse
(
[
in
]
DTCLUCOMPARESTATE
CompareState
,
[
out
]
DTCLUCOMPARESTATESCONFIRMATION
*
pConfirmation
)
;
HRESULT
HandleErrorFromOurCompareStates
(
[
in
]
DTCLUCOMPARESTATESERROR
Error
)
;
HRESULT
ConversationLost
(
void
)
;
HRESULT
GetRecoverySeqNum
(
[
out
]
LONG
*
plRecoverySeqNum
)
;
HRESULT
ObsoleteRecoverySeqNum
(
[
in
]
LONG
lNewRecoverySeqNum
)
;
}
;
[
object
,
uuid
(
4131
e766
-
1
aea
-
11
d0
-
944b
-
00
a0c905416e
)
]
interface
IDtcLuRecoveryInitiatedByDtcStatusWork
:
IUnknown
{
HRESULT
HandleCheckLuStatus
(
[
in
]
LONG
lRecoverySeqNum
)
;
}
;
[
object
,
uuid
(
4131
e764
-
1
aea
-
11
d0
-
944b
-
00
a0c905416e
)
]
[
local
]
interface
IDtcLuRecoveryInitiatedByDtc
:
IUnknown
{
HRESULT
GetWork
(
[
in
,
out
]
DTCINITIATEDRECOVERYWORK
*
pWork
,
[
in
,
out
]
void
**
ppv
)
;
}
;
[
object
,
uuid
(
ac2b8ad1
-
d6f0
-
11
d0
-
b386
-
00
a0c9083365
)
]
interface
IDtcLuRecoveryInitiatedByLuWork
:
IUnknown
{
HRESULT
HandleTheirXln
(
[
in
]
LONG
lRecoverySeqNum
,
[
in
]
DTCLUXLN
Xln
,
[
in
]
unsigned
char
*
pRemoteLogName
,
[
in
]
DWORD
cbRemoteLogName
,
[
in
]
unsigned
char
*
pOurLogName
,
[
in
]
DWORD
cbOurLogName
,
[
in
]
DWORD
dwProtocol
,
[
out
]
DTCLUXLNRESPONSE
*
pResponse
)
;
HRESULT
GetOurLogNameSize
(
[
in
,
out
]
DWORD
*
pcbOurLogName
)
;
HRESULT
GetOurXln
(
[
out
]
DTCLUXLN
*
pXln
,
[
in
,
out
]
unsigned
char
*
pOurLogName
,
[
out
]
DWORD
*
pdwProtocol
)
;
HRESULT
HandleConfirmationOfOurXln
(
[
in
]
DTCLUXLNCONFIRMATION
Confirmation
)
;
HRESULT
HandleTheirCompareStates
(
[
in
,
out
]
unsigned
char
*
pRemoteTransId
,
[
in
]
DWORD
cbRemoteTransId
,
[
in
]
DTCLUCOMPARESTATE
CompareState
,
[
out
]
DTCLUCOMPARESTATESRESPONSE
*
pResponse
,
[
out
]
DTCLUCOMPARESTATE
*
pCompareState
)
;
HRESULT
HandleConfirmationOfOurCompareStates
(
[
in
]
DTCLUCOMPARESTATESCONFIRMATION
Confirmation
)
;
HRESULT
HandleErrorFromOurCompareStates
(
[
in
]
DTCLUCOMPARESTATESERROR
Error
)
;
HRESULT
ConversationLost
(
void
)
;
}
;
[
object
,
uuid
(
4131
e768
-
1
aea
-
11
d0
-
944b
-
00
a0c905416e
)
]
interface
IDtcLuRecoveryInitiatedByLu
:
IUnknown
{
HRESULT
GetObjectToHandleWorkFromLu
(
[
out
]
IDtcLuRecoveryInitiatedByLuWork
**
ppWork
)
;
}
;
[
object
,
uuid
(
4131
e769
-
1
aea
-
11
d0
-
944b
-
00
a0c905416e
)
]
interface
IDtcLuRmEnlistment
:
IUnknown
{
HRESULT
Unplug
(
[
in
]
BOOL
fConversationLost
)
;
HRESULT
BackedOut
(
void
)
;
HRESULT
BackOut
(
void
)
;
HRESULT
Committed
(
void
)
;
HRESULT
Forget
(
void
)
;
HRESULT
RequestCommit
(
void
)
;
}
;
[
object
,
uuid
(
4131
e770
-
1
aea
-
11
d0
-
944b
-
00
a0c905416e
)
]
interface
IDtcLuRmEnlistmentSink
:
IUnknown
{
HRESULT
AckUnplug
(
void
)
;
HRESULT
TmDown
(
void
)
;
HRESULT
SessionLost
(
void
)
;
HRESULT
BackedOut
(
void
)
;
HRESULT
BackOut
(
void
)
;
HRESULT
Committed
(
void
)
;
HRESULT
Forget
(
void
)
;
HRESULT
Prepare
(
void
)
;
HRESULT
RequestCommit
(
void
)
;
}
;
[
object
,
uuid
(
4131
e771
-
1
aea
-
11
d0
-
944b
-
00
a0c905416e
)
]
interface
IDtcLuRmEnlistmentFactory
:
IUnknown
{
HRESULT
Create
(
[
in
]
unsigned
char
*
pucLuPair
,
[
in
]
DWORD
cbLuPair
,
[
in
]
ITransaction
*
pITransaction
,
[
in
]
unsigned
char
*
pTransId
,
[
in
]
DWORD
cbTransId
,
[
in
]
IDtcLuRmEnlistmentSink
*
pRmEnlistmentSink
,
[
in
,
out
]
IDtcLuRmEnlistment
**
ppRmEnlistment
)
;
}
;
[
object
,
uuid
(
4131
e773
-
1
aea
-
11
d0
-
944b
-
00
a0c905416e
)
]
interface
IDtcLuSubordinateDtc
:
IUnknown
{
HRESULT
Unplug
(
[
in
]
BOOL
fConversationLost
)
;
HRESULT
BackedOut
(
void
)
;
HRESULT
BackOut
(
void
)
;
HRESULT
Committed
(
void
)
;
HRESULT
Forget
(
void
)
;
HRESULT
Prepare
(
void
)
;
HRESULT
RequestCommit
(
void
)
;
}
;
[
object
,
uuid
(
4131
e774
-
1
aea
-
11
d0
-
944b
-
00
a0c905416e
)
]
interface
IDtcLuSubordinateDtcSink
:
IUnknown
{
HRESULT
AckUnplug
(
void
)
;
HRESULT
TmDown
(
void
)
;
HRESULT
SessionLost
(
void
)
;
HRESULT
BackedOut
(
void
)
;
HRESULT
BackOut
(
void
)
;
HRESULT
Committed
(
void
)
;
HRESULT
Forget
(
void
)
;
HRESULT
RequestCommit
(
void
)
;
}
;
[
object
,
uuid
(
4131
e775
-
1
aea
-
11
d0
-
944b
-
00
a0c905416e
)
]
interface
IDtcLuSubordinateDtcFactory
:
IUnknown
{
HRESULT
Create
(
[
in
]
unsigned
char
*
pucLuPair
,
[
in
]
DWORD
cbLuPair
,
[
in
]
IUnknown
*
punkTransactionOuter
,
[
in
]
ISOLEVEL
isoLevel
,
[
in
]
ULONG
isoFlags
,
[
in
]
ITransactionOptions
*
pOptions
,
[
out
]
ITransaction
**
ppTransaction
,
[
in
]
unsigned
char
*
pTransId
,
[
in
]
DWORD
cbTransId
,
[
in
]
IDtcLuSubordinateDtcSink
*
pSubordinateDtcSink
,
[
in
,
out
]
IDtcLuSubordinateDtc
**
ppSubordinateDtc
)
;
}
;
/*
these
GUIDs
were
found
in
mingw
header
,
but
without
corresponding
interface
definitions
DEFINE_GUID
(
IID_IXAResourceManager
,
0
x4131e751
,
0
x1aea
,
0
x11d0
,
0
x94
,
0
x4b
,
0
x00
,
0
xa0
,
0
xc9
,
0
x05
,
0
x41
,
0
x6e
)
;
DEFINE_GUID
(
IID_IXAResourceManagerFactory
,
0
x4131e750
,
0
x1aea
,
0
x11d0
,
0
x94
,
0
x4b
,
0
x00
,
0
xa0
,
0
xc9
,
0
x05
,
0
x41
,
0
x6e
)
;
DEFINE_GUID
(
IID_IXATransaction
,
0
x4131e752
,
0
x1aea
,
0
x11d0
,
0
x94
,
0
x4b
,
0
x00
,
0
xa0
,
0
xc9
,
0
x05
,
0
x41
,
0
x6e
)
;
*/
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment