Share via


LSA_ALLOCATE_CLIENT_BUFFER función de devolución de llamada (ntsecpkg.h)

Asigna un búfer en el espacio de direcciones del cliente. Los búferes asignados en el espacio de direcciones del cliente se usan para contener la información devuelta al cliente desde un paquete de autenticación.

Sintaxis

LSA_ALLOCATE_CLIENT_BUFFER LsaAllocateClientBuffer;

NTSTATUS LsaAllocateClientBuffer(
  [in]  PLSA_CLIENT_REQUEST ClientRequest,
  [in]  ULONG LengthRequired,
  [out] PVOID *ClientBaseAddress
)
{...}

Parámetros

[in] ClientRequest

Puntero a una estructura de datos opaca LSA_CLIENT_REQUEST que contiene información sobre la solicitud de autenticación del cliente LSA. Un paquete de autenticación personalizado debe pasar el valor recibido durante la llamada del cliente a la función, como LsaApCallPackage o LsaApLogonUser, que devuelve el parámetro de salida.

[in] LengthRequired

Longitud del búfer necesario, en bytes.

[out] ClientBaseAddress

Puntero que recibe la dirección del búfer. Esta dirección es la dirección virtual del búfer dentro del proceso de cliente, no en el proceso actual.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es STATUS_SUCCESS.

Si se produce un error en la función, el valor devuelto es un código NTSTATUS, que puede ser el siguiente valor o uno de los valores devueltos de la función de directiva LSA.

Código devuelto Descripción
STATUS_NO_MEMORY
El proceso de cliente no tiene una cuota de memoria adecuada para asignar el búfer.
 

La función LsaNtStatusToWinError convierte un código NTSTATUS en un código de error de Windows.

Comentarios

El paquete de autenticación o el proceso de cliente deben liberar más adelante el búfer. El proceso de autenticación puede liberar el búfer mediante la rutina de distribución FreeClientBuffer . El proceso de cliente puede liberar el búfer mediante la función LsaFreeReturnBuffer .

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado ntsecpkg.h

Consulte también

LSA_DISPATCH_TABLE

LSA_SECPKG_FUNCTION_TABLE