다음을 통해 공유


LSA_ALLOCATE_CLIENT_BUFFER 콜백 함수(ntsecpkg.h)

클라이언트의 주소 공간에 버퍼를 할당합니다. 클라이언트의 주소 공간에 할당된 버퍼는 인증 패키지에서 클라이언트에 반환된 정보를 보관하는 데 사용됩니다.

구문

LSA_ALLOCATE_CLIENT_BUFFER LsaAllocateClientBuffer;

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

매개 변수

[in] ClientRequest

LSA 클라이언트의 인증 요청에 대한 정보를 포함하는 불투명 LSA_CLIENT_REQUEST 데이터 구조에 대한 포인터입니다. 사용자 지정 인증 패키지는 출력 매개 변수를 반환하는 LsaApCallPackage 또는 LsaApLogonUser와 같은 함수에 대한 클라이언트 호출 중에 받은 값을 전달해야 합니다.

[in] LengthRequired

필요한 버퍼의 길이(바이트)입니다.

[out] ClientBaseAddress

버퍼의 주소를 받는 포인터입니다. 이 주소는 현재 프로세스가 아닌 클라이언트 프로세스 내에서 버퍼의 가상 주소입니다.

반환 값

함수가 성공하면 반환 값이 STATUS_SUCCESS.

함수가 실패하면 반환 값은 NTSTATUS 코드로, 다음 값 또는 LSA 정책 함수 반환 값 중 하나일 수 있습니다.

반환 코드 설명
STATUS_NO_MEMORY
클라이언트 프로세스에 버퍼를 할당할 적절한 메모리 할당량이 없습니다.
 

LsaNtStatusToWinError 함수는 NTSTATUS 코드를 Windows 오류 코드로 변환합니다.

설명

인증 패키지 또는 클라이언트 프로세스는 나중에 버퍼를 해제해야 합니다. 인증 프로세스는 FreeClientBuffer 디스패치 루틴을 사용하여 버퍼를 해제할 수 있습니다. 클라이언트 프로세스는 LsaFreeReturnBuffer 함수를 사용하여 버퍼를 해제할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 ntsecpkg.h

추가 정보

LSA_DISPATCH_TABLE

LSA_SECPKG_FUNCTION_TABLE