Export (0) Print
Expand All
Expand Minimize

AllocateClientBuffer function

Allocates a buffer in the client's address space. Buffers allocated in the client's address space are used to hold information returned to the client from an authentication package.

Syntax


NTSTATUS AllocateClientBuffer(
  _In_   PLSA_CLIENT_REQUEST ClientRequest,
  _In_   ULONG LengthRequired,
  _Out_  PVOID *ClientBaseAddress
);

Parameters

ClientRequest [in]

Pointer to an opaque LSA_CLIENT_REQUEST data structure that contains information about the LSA client's authentication request. A custom authentication package should pass in the value received during the client's call to the function, such as LsaApCallPackage or LsaApLogonUser, that returns the output parameter.

LengthRequired [in]

Length of the buffer needed, in bytes.

ClientBaseAddress [out]

Pointer that receives the address of the buffer. This address is the virtual address of the buffer within the client process, not in the current process.

Return value

If the function succeeds, the return value is STATUS_SUCCESS.

If the function fails, the return value is an NTSTATUS code, which can be the following value or one of the LSA Policy Function Return Values.

Return codeDescription
STATUS_NO_MEMORY

The client process does not have an adequate memory quota to allocate the buffer.

 

The LsaNtStatusToWinError function converts an NTSTATUS code to a Windows error code.

Remarks

The authentication package or the client process must later free the buffer. The authentication process can free the buffer by using the FreeClientBuffer dispatch routine. The client process can free the buffer by using the LsaFreeReturnBuffer function.

Requirements

Minimum supported client

Windows XP [desktop apps only]

Minimum supported server

Windows Server 2003 [desktop apps only]

Header

Ntsecpkg.h

See also

LSA_DISPATCH_TABLE
LSA_SECPKG_FUNCTION_TABLE

 

 

Community Additions

ADD
Show:
© 2014 Microsoft