Signed-off-by: Alistair Leslie-Hughes <leslie_alistair(a)hotmail.com>
---
dlls/msdaps/usrmarshal.c | 28 +++++++++++++++++++++++++++
include/Makefile.in | 1 +
include/oledb.idl | 1 +
include/trnjoi.idl | 42 ++++++++++++++++++++++++++++++++++++++++
4 files changed, 72 insertions(+)
create mode 100644 include/trnjoi.idl
diff --git a/dlls/msdaps/usrmarshal.c b/dlls/msdaps/usrmarshal.c
index 8910070fbac..dc0f2261096 100644
--- a/dlls/msdaps/usrmarshal.c
+++ b/dlls/msdaps/usrmarshal.c
@@ -1741,3 +1741,31 @@ HRESULT __RPC_STUB ICommandWithParameters_MapParameterNames_Stub(ICommandWithPar
FIXME("(%p)->(%ld %p %p %p): stub\n", This, count, names, ordinals, error);
return E_NOTIMPL;
}
+
+HRESULT __RPC_STUB ITransactionJoin_GetOptionsObject_Stub(ITransactionJoin* This,
+ ITransactionOptions **options, IErrorInfo **error)
+{
+ FIXME("(%p)->(%p, %p): stub\n", This, options, error);
+ return E_NOTIMPL;
+}
+
+HRESULT CALLBACK ITransactionJoin_GetOptionsObject_Proxy(ITransactionJoin *This,
+ ITransactionOptions **options)
+{
+ FIXME("(%p)->(%p): stub\n", This, options);
+ return E_NOTIMPL;
+}
+
+HRESULT __RPC_STUB ITransactionJoin_JoinTransaction_Stub(ITransactionJoin* This, IUnknown *unk,
+ ISOLEVEL level, ULONG flags, ITransactionOptions *options, IErrorInfo **error)
+{
+ FIXME("(%p)->(%p, %d, 0x%08x, %p, %p): stub\n", This, unk, level, flags, options, error);
+ return E_NOTIMPL;
+}
+
+HRESULT CALLBACK ITransactionJoin_JoinTransaction_Proxy(ITransactionJoin* This, IUnknown *unk,
+ ISOLEVEL level, ULONG flags, ITransactionOptions *options)
+{
+ FIXME("(%p)->(%p, %d, 0x%08x, %p): stub\n", This, unk, level, flags, options);
+ return E_NOTIMPL;
+}
diff --git a/include/Makefile.in b/include/Makefile.in
index a16cba52642..8c4eb732e57 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -720,6 +720,7 @@ SOURCES = \
tpcshrd.h \
traffic.h \
transact.idl \
+ trnjoi.idl \
twain.h \
txcoord.idl \
txdtc.idl \
diff --git a/include/oledb.idl b/include/oledb.idl
index b889d72bc38..abd4d55069c 100644
--- a/include/oledb.idl
+++ b/include/oledb.idl
@@ -80,6 +80,7 @@ typedef LONG_PTR DB_LRESERVE;
#include "rstupd.idl"
#include "mulres.idl"
#include "transact.idl"
+#include "trnjoi.idl"
#include "cmdwpr.idl"
cpp_quote("#include <accctrl.h>")
diff --git a/include/trnjoi.idl b/include/trnjoi.idl
new file mode 100644
index 00000000000..fcc22ce5ea3
--- /dev/null
+++ b/include/trnjoi.idl
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2021 Alistair Leslie-Hughes
+ *
+ * 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
+ */
+
+#if 0
+#pragma makedep install
+#endif
+
+[
+ object,
+ uuid(0c733a5e-2a1c-11ce-ade5-00aa0044773d),
+ pointer_default(unique)
+]
+interface ITransactionJoin : IUnknown
+{
+ [local]
+ HRESULT GetOptionsObject(ITransactionOptions **options);
+
+ [call_as(GetOptionsObject)]
+ HRESULT RemoteGetOptionsObject([out] ITransactionOptions **options, [out] IErrorInfo **error);
+
+ [local]
+ HRESULT JoinTransaction(IUnknown *unk, [in] ISOLEVEL level, [in] ULONG flags, ITransactionOptions *options);
+
+ [call_as(JoinTransaction)]
+ HRESULT RemoteJoinTransaction([in, unique] IUnknown *unk, [in] ISOLEVEL level, [in] ULONG flags,
+ [in] ITransactionOptions *options, [out] IErrorInfo **error);
+}
--
2.33.0