Huw Davies : msdaps: Implement IBindResource_Bind proxy and stub.

Alexandre Julliard julliard at winehq.org
Tue Aug 25 08:45:43 CDT 2009


Module: wine
Branch: master
Commit: c77ff19e663a2577a01c5bc577ddca7401d2d26e
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=c77ff19e663a2577a01c5bc577ddca7401d2d26e

Author: Huw Davies <huw at codeweavers.com>
Date:   Tue Aug 25 13:36:31 2009 +0100

msdaps: Implement IBindResource_Bind proxy and stub.

---

 dlls/msdaps/usrmarshal.c |   26 ++++++++++++++++++++++----
 1 files changed, 22 insertions(+), 4 deletions(-)

diff --git a/dlls/msdaps/usrmarshal.c b/dlls/msdaps/usrmarshal.c
index cc4803c..b113667 100644
--- a/dlls/msdaps/usrmarshal.c
+++ b/dlls/msdaps/usrmarshal.c
@@ -383,18 +383,36 @@ HRESULT CALLBACK IBindResource_Bind_Proxy(IBindResource* This, IUnknown *pUnkOut
                                           REFGUID rguid, REFIID riid, IAuthenticate *pAuthenticate, DBIMPLICITSESSION *pImplSession,
                                           DBBINDURLSTATUS *pdwBindStatus, IUnknown **ppUnk)
 {
-    FIXME("(%p, %p, %s, %08x, %s, %s, %p, %p, %p, %p): stub\n", This, pUnkOuter, debugstr_w(pwszURL), dwBindURLFlags,
+    HRESULT hr;
+
+    TRACE("(%p, %p, %s, %08x, %s, %s, %p, %p, %p, %p)\n", This, pUnkOuter, debugstr_w(pwszURL), dwBindURLFlags,
           debugstr_guid(rguid), debugstr_guid(riid), pAuthenticate, pImplSession, pdwBindStatus, ppUnk);
-    return E_NOTIMPL;
+
+    hr = IBindResource_RemoteBind_Proxy(This, pUnkOuter, pwszURL, dwBindURLFlags, rguid, riid, pAuthenticate,
+                                        pImplSession ? pImplSession->pUnkOuter : NULL, pImplSession ? pImplSession->piid : NULL,
+                                        pImplSession ? &pImplSession->pSession : NULL, pdwBindStatus, ppUnk);
+    return hr;
 }
 
 HRESULT __RPC_STUB IBindResource_Bind_Stub(IBindResource* This, IUnknown *pUnkOuter, LPCOLESTR pwszURL, DBBINDURLFLAG dwBindURLFlags,
                                            REFGUID rguid, REFIID riid, IAuthenticate *pAuthenticate, IUnknown *pSessionUnkOuter,
                                            IID *piid, IUnknown **ppSession, DBBINDURLSTATUS *pdwBindStatus, IUnknown **ppUnk)
 {
-    FIXME("(%p, %p, %s, %08x, %s, %s, %p, %p, %p, %p, %p, %p): stub\n", This, pUnkOuter, debugstr_w(pwszURL), dwBindURLFlags,
+    HRESULT hr;
+    DBIMPLICITSESSION impl_session;
+
+    TRACE("(%p, %p, %s, %08x, %s, %s, %p, %p, %p, %p, %p, %p)\n", This, pUnkOuter, debugstr_w(pwszURL), dwBindURLFlags,
           debugstr_guid(rguid), debugstr_guid(riid), pAuthenticate, pSessionUnkOuter, piid, ppSession, pdwBindStatus, ppUnk);
-    return E_NOTIMPL;
+
+    impl_session.pUnkOuter = pSessionUnkOuter;
+    impl_session.piid = piid;
+    impl_session.pSession = NULL;
+
+    hr = IBindResource_Bind(This, pUnkOuter, pwszURL, dwBindURLFlags, rguid, riid, pAuthenticate,
+                            ppSession ? &impl_session : NULL, pdwBindStatus, ppUnk);
+
+    if(ppSession) *ppSession = impl_session.pSession;
+    return hr;
 }
 
 HRESULT CALLBACK ICreateRow_CreateRow_Proxy(ICreateRow* This, IUnknown *pUnkOuter, LPCOLESTR pwszURL, DBBINDURLFLAG dwBindURLFlags,




More information about the wine-cvs mailing list