Función RpcRevertToSelfEx (rpcdce.h)

La función RpcRevertToSelfEx permite a un servidor suplantar a un cliente y, a continuación, revertir en una operación multiproceso donde la llamada a suplantar a un cliente puede provenir de un subproceso distinto del subproceso enviado originalmente desde rpc.

Sintaxis

RPC_STATUS RpcRevertToSelfEx(
  RPC_BINDING_HANDLE BindingHandle
);

Parámetros

BindingHandle

Identificador de enlace en el servidor que representa un enlace al cliente que el servidor suplanta. Un valor de cero especifica el identificador de cliente del subproceso actual; en este caso, la funcionalidad de RpcRevertToSelfEx es idéntica a la de la función RpcRevertToSelf .

Valor devuelto

Valor Significado
RPC_S_OK
La llamada se realizó correctamente.
RPC_S_NO_CALL_ACTIVE
El servidor no tiene un cliente para suplantar.
RPC_S_INVALID_BINDING
El identificador de enlace no es válido.
RPC_S_WRONG_KIND_OF_BINDING
Este es el tipo incorrecto de enlace para esta operación.
RPC_S_CANNOT_SUPPORT
La llamada no se admite para este sistema operativo, este transporte o este subsistema de seguridad.
 
Nota Para obtener una lista de códigos de error válidos, consulte Rpc Return Values.
 

Comentarios

Después de llamar a RpcImpersonateClient y completar las tareas que requieren suplantación de cliente, el servidor llama a RpcRevertToSelfEx para finalizar la suplantación y restablecer su propia identidad de seguridad. Por ejemplo, considere un subproceso principal, denominado thread1, que se envía desde un cliente remoto y reactiva un subproceso de trabajo, denominado thread2. Si thread2 requiere que el servidor suplanta al cliente, el servidor llama a RpcImpersonateClient(THREAD1_CALL_HANDLE), realiza la tarea necesaria, llama a RpcRevertToSelfEx(THREAD1_CALL_HANDLE) para finalizar la suplantación y, a continuación, reactiva el subproceso1.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado rpcdce.h (incluir Rpc.h)
Library Rpcrt4.lib
Archivo DLL Rpcrt4.dll

Consulte también

Suplantación de cliente

RpcImpersonateClient

RpcRevertToSelf