On 1/22/20 3:57 PM, Oleg Dubinskiy wrote:
rpcrt4: Add RpcGetAuthorizationContextForClient stub
Signed-off-by: Oleg Dubinskiy oleg.dubinskij2013@yandex.ua
dlls/rpcrt4/rpc_async.c | 45 +++++++++++++++++++++++++++++++++++++++++ dlls/rpcrt4/rpcrt4.spec | 1 + 2 files changed, 46 insertions(+)
diff --git a/dlls/rpcrt4/rpc_async.c b/dlls/rpcrt4/rpc_async.c index 00c2d6bede..4f7cd9f7e2 100644 --- a/dlls/rpcrt4/rpc_async.c +++ b/dlls/rpcrt4/rpc_async.c @@ -166,3 +166,48 @@ RPC_STATUS WINAPI RpcAsyncCancelCall(PRPC_ASYNC_STATE pAsync, BOOL fAbortCall) FIXME("(%p, %s): stub\n", pAsync, fAbortCall ? "TRUE" : "FALSE"); return RPC_S_INVALID_ASYNC_HANDLE; }
+/***********************************************************************
RpcGetAuthorizationContextForClient [RPCRT4.@]
- Called by RpcFreeAuthorizationContext to return the Authz context.
That doesn't sound right, why free function would call it?
- PARAMS
- ClientBinding [I] Binding handle, represents a binding to a client on the server.
- ImpersonateOnReturn [I] Directs this function to be represented the client on return.
- Reserved1 [I] Reserved, equal to null.
- expiration_time [I] Points to the exact date and time when the token expires.
- Reserved2 [I] Reserved, equal to a LUID structure which has a members,
each of them is set to zero.
- Reserved3 [I] Reserved, equal to zero.
- Reserved4 [I] Reserved, equal to null.
- authz_client_context [I] Points to an AUTHZ_CLIENT_CONTEXT_HANDLE structure
that has direct pass to Authz functions.
- RETURNS
- Success: RPC_S_OK.
- Failure: Any error code.
- */
I know we have those headers for many functions, but in my opinion they have no purpose.
+RPC_STATUS +WINAPI +RpcGetAuthorizationContextForClient(RPC_BINDING_HANDLE ClientBinding,
BOOL ImpersonateOnReturn,
void * Reserved1,
PLARGE_INTEGER expiration_time,
LUID Reserved2,
DWORD Reserved3,
PVOID Reserved4,
PVOID *authz_client_context)
+{
- FIXME("(%p, %d, %p, %p, (%d, %u), %u, %p, %p): stub\n",
ClientBinding,
ImpersonateOnReturn,
Reserved1,
expiration_time,
Reserved2.HighPart,
Reserved2.LowPart,
Reserved3,
Reserved4,
authz_client_context);
- return RPC_S_NO_CONTEXT_AVAILABLE;
+} diff --git a/dlls/rpcrt4/rpcrt4.spec b/dlls/rpcrt4/rpcrt4.spec index 5d558bff75..56f96ab29a 100644 --- a/dlls/rpcrt4/rpcrt4.spec +++ b/dlls/rpcrt4/rpcrt4.spec @@ -387,6 +387,7 @@ @ stdcall RpcExceptionFilter(long) @ stub RpcFreeAuthorizationContext # wxp @ stdcall RpcGetAsyncCallStatus(ptr) RpcAsyncGetCallStatus +@ stdcall RpcGetAuthorizationContextForClient(ptr long ptr ptr int64 long ptr ptr) @ stub RpcIfIdVectorFree @ stub RpcIfInqId @ stdcall RpcImpersonateClient(ptr)