3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Copyright (C) 2013 Daniel JeliĆski
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * This library is free software; you can redistribute it and/or
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * modify it under the terms of the GNU Lesser General Public
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * License as published by the Free Software Foundation; either
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * version 2.1 of the License, or (at your option) any later version.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * This library is distributed in the hope that it will be useful,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Lesser General Public License for more details.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * You should have received a copy of the GNU Lesser General Public
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * License along with this library; if not, write to the Free Software
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * a choice of LGPL license versions is made available with the language indicating
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * that LGPLv2 or any later version may be used, or where a choice of which version
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * of the LGPL is applied is otherwise unspecified.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncimport "transact.idl";
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncimport "objidl.idl";
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT PrepareRequest([in]BOOL fRetaining,[in]DWORD grfRM,[in]BOOL fWantMoniker,[in]BOOL fSinglePhase);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT CommitRequest([in]DWORD grfRM,[in]XACTUOW *pNewUOW);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT AbortRequest([in]BOID *pboidReason,[in]BOOL fRetaining,[in]XACTUOW *pNewUOW);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncinterface ITransactionLastResourceAsync : IUnknown {
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT PrepareRequest([in]BOOL fRetaining,[in]DWORD grfRM,[in]BOOL fWantMoniker,[in]BOOL fSinglePhase);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT CommitRequest([in]DWORD grfRM,[in]XACTUOW *pNewUOW);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT AbortRequest([in]BOID *pboidReason,[in]BOOL fRetaining,[in]XACTUOW *pNewUOW);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT PrepareRequestDone([in]HRESULT hr,[in]IMoniker *pmk,[in]BOID *pboidReason);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncinterface ITransactionLastEnlistmentAsync : IUnknown {
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT TransactionOutcome([in]XACTSTAT XactStat,[in]BOID *pboidReason);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT Create([in]ULONG cbWhereabouts,[in]byte *rgbWhereabouts,[out]ITransactionExport **ppExport);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncinterface ITransactionImportWhereabouts : IUnknown {
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetWhereaboutsSize([out]ULONG *pcbWhereabouts);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetWhereabouts([in]ULONG cbWhereabouts,[out]byte *rgbWhereabouts,[out]ULONG *pcbUsed);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT Export([in]IUnknown *punkTransaction,[out]ULONG *pcbTransactionCookie);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetTransactionCookie([in]IUnknown *punkTransaction,[in]ULONG cbTransactionCookie,[out]byte *rgbTransactionCookie,[out]ULONG *pcbUsed);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT Import([in]ULONG cbTransactionCookie,[in]byte *rgbTransactionCookie,[in]IID *piid,[out,iid_is(piid)]void **ppvTransaction);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT Push([in]char *i_pszRemoteTmUrl,[out]char **o_ppszRemoteTxUrl);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetTransactionUrl([out]char **o_ppszLocalTxUrl);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT Pull([in]char *i_pszTxUrl,[out]ITransaction **o_ppITransaction);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT PullAsync([in]char *i_pszTxUrl,[in]ITipPullSink *i_pTipPullSink,[out]ITransaction **o_ppITransaction);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetLocalTmUrl([out]char **o_ppszLocalTmUrl);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetAnyNetworkAccess([out]BOOL *pbAnyNetworkAccess);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetAnyNetworkAccess([in]BOOL bAnyNetworkAccess);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetNetworkAdministrationAccess([out]BOOL *pbNetworkAdministrationAccess);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetNetworkAdministrationAccess([in]BOOL bNetworkAdministrationAccess);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetNetworkTransactionAccess([out]BOOL *pbNetworkTransactionAccess);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetNetworkTransactionAccess([in]BOOL bNetworkTransactionAccess);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetNetworkClientAccess([out]BOOL *pbNetworkClientAccess);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetNetworkClientAccess([in]BOOL bNetworkClientAccess);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetNetworkTIPAccess([out]BOOL *pbNetworkTIPAccess);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetNetworkTIPAccess([in]BOOL bNetworkTIPAccess);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncinterface IDtcNetworkAccessConfig2 : IDtcNetworkAccessConfig {
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetNetworkInboundAccess([out]BOOL *pbInbound);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetNetworkOutboundAccess([out]BOOL *pbOutbound);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetNetworkInboundAccess([in]BOOL bInbound);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetNetworkOutboundAccess([in]BOOL bOutbound);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetAuthenticationLevel([out]AUTHENTICATION_LEVEL *pAuthLevel);