Signed-off-by: Nikolay Sivov nsivov@codeweavers.com --- dlls/combase/combase.c | 25 ++++++++++++++++++++++ dlls/combase/combase.spec | 2 +- dlls/ole32/compobj.c | 45 --------------------------------------- dlls/ole32/ole32.spec | 2 +- 4 files changed, 27 insertions(+), 47 deletions(-)
diff --git a/dlls/combase/combase.c b/dlls/combase/combase.c index 9bf2252fb85..c67cf2fbce7 100644 --- a/dlls/combase/combase.c +++ b/dlls/combase/combase.c @@ -454,3 +454,28 @@ HRESULT WINAPI CoCreateGuid(GUID *guid) if (status == RPC_S_OK || status == RPC_S_UUID_LOCAL_ONLY) return S_OK; return HRESULT_FROM_WIN32(status); } + +/****************************************************************************** + * CoQueryProxyBlanket (combase.@) + */ +HRESULT WINAPI CoQueryProxyBlanket(IUnknown *proxy, DWORD *authn_service, + DWORD *authz_service, OLECHAR **servername, DWORD *authn_level, + DWORD *imp_level, void **auth_info, DWORD *capabilities) +{ + IClientSecurity *client_security; + HRESULT hr; + + TRACE("%p, %p, %p, %p, %p, %p, %p, %p.\n", proxy, authn_service, authz_service, servername, authn_level, imp_level, + auth_info, capabilities); + + hr = IUnknown_QueryInterface(proxy, &IID_IClientSecurity, (void **)&client_security); + if (SUCCEEDED(hr)) + { + hr = IClientSecurity_QueryBlanket(client_security, proxy, authn_service, authz_service, servername, + authn_level, imp_level, auth_info, capabilities); + IClientSecurity_Release(client_security); + } + + if (FAILED(hr)) ERR("-- failed with %#x.\n", hr); + return hr; +} diff --git a/dlls/combase/combase.spec b/dlls/combase/combase.spec index ddfe5c5ca2e..ed6767263d8 100644 --- a/dlls/combase/combase.spec +++ b/dlls/combase/combase.spec @@ -135,7 +135,7 @@ @ stub CoPushServiceDomain @ stub CoQueryAuthenticationServices @ stdcall CoQueryClientBlanket(ptr ptr ptr ptr ptr ptr ptr) ole32.CoQueryClientBlanket -@ stdcall CoQueryProxyBlanket(ptr ptr ptr ptr ptr ptr ptr ptr) ole32.CoQueryProxyBlanket +@ stdcall CoQueryProxyBlanket(ptr ptr ptr ptr ptr ptr ptr ptr) @ stub CoReactivateObject @ stub CoRegisterActivationFilter @ stdcall CoRegisterClassObject(ptr ptr long long ptr) ole32.CoRegisterClassObject diff --git a/dlls/ole32/compobj.c b/dlls/ole32/compobj.c index f96d69c198c..b96edf99bf1 100644 --- a/dlls/ole32/compobj.c +++ b/dlls/ole32/compobj.c @@ -4191,51 +4191,6 @@ HRESULT WINAPI CoAllowSetForegroundWindow(IUnknown *pUnk, void *pvReserved) FIXME("(%p, %p): stub\n", pUnk, pvReserved); return S_OK; } - -/*********************************************************************** - * CoQueryProxyBlanket [OLE32.@] - * - * Retrieves the security settings being used by a proxy. - * - * PARAMS - * pProxy [I] Pointer to the proxy object. - * pAuthnSvc [O] The type of authentication service. - * pAuthzSvc [O] The type of authorization service. - * ppServerPrincName [O] Optional. The server prinicple name. - * pAuthnLevel [O] The authentication level. - * pImpLevel [O] The impersonation level. - * ppAuthInfo [O] Information specific to the authorization/authentication service. - * pCapabilities [O] Flags affecting the security behaviour. - * - * RETURNS - * Success: S_OK. - * Failure: HRESULT code. - * - * SEE ALSO - * CoCopyProxy, CoSetProxyBlanket. - */ -HRESULT WINAPI CoQueryProxyBlanket(IUnknown *pProxy, DWORD *pAuthnSvc, - DWORD *pAuthzSvc, OLECHAR **ppServerPrincName, DWORD *pAuthnLevel, - DWORD *pImpLevel, void **ppAuthInfo, DWORD *pCapabilities) -{ - IClientSecurity *pCliSec; - HRESULT hr; - - TRACE("%p\n", pProxy); - - hr = IUnknown_QueryInterface(pProxy, &IID_IClientSecurity, (void **)&pCliSec); - if (SUCCEEDED(hr)) - { - hr = IClientSecurity_QueryBlanket(pCliSec, pProxy, pAuthnSvc, - pAuthzSvc, ppServerPrincName, - pAuthnLevel, pImpLevel, ppAuthInfo, - pCapabilities); - IClientSecurity_Release(pCliSec); - } - - if (FAILED(hr)) ERR("-- failed with 0x%08x\n", hr); - return hr; -}
/*********************************************************************** * CoSetProxyBlanket [OLE32.@] diff --git a/dlls/ole32/ole32.spec b/dlls/ole32/ole32.spec index 0713a989eed..c737b2e386e 100644 --- a/dlls/ole32/ole32.spec +++ b/dlls/ole32/ole32.spec @@ -62,7 +62,7 @@ @ stdcall CoMarshalInterface(ptr ptr ptr long ptr long) @ stub CoQueryAuthenticationServices @ stdcall CoQueryClientBlanket(ptr ptr ptr ptr ptr ptr ptr) -@ stdcall CoQueryProxyBlanket(ptr ptr ptr ptr ptr ptr ptr ptr) +@ stdcall CoQueryProxyBlanket(ptr ptr ptr ptr ptr ptr ptr ptr) combase.CoQueryProxyBlanket @ stub CoQueryReleaseObject @ stdcall CoRegisterChannelHook(ptr ptr) @ stdcall CoRegisterClassObject(ptr ptr long long ptr)