CallPackagePassthrough function
The CallPackagePassthrough function is used to call another security package to access its services.
Syntax
NTSTATUS CallPackagePassthrough( _In_ PUNICODE_STRING AuthenticationPackage, _In_ PVOID ClientBufferBase, _In_ PVOID ProtocolSubmitBuffer, _In_ ULONG SubmitBufferLength, _Out_ PVOID *ProtocolReturnBuffer, _Out_ PULONG ReturnBufferLength, _Out_ PNTSTATUS ProtocolStatus );
Parameters
- AuthenticationPackage [in]
-
Pointer to a UNICODE_STRING containing the name of the package to call.
- ClientBufferBase [in]
-
The base address of the input buffer, in the client's address space.
- ProtocolSubmitBuffer [in]
-
Pointer to the input buffer.
- SubmitBufferLength [in]
-
Size of the ProtocolSubmitBuffer parameter in bytes.
- ProtocolReturnBuffer [out]
-
Pointer to the output buffer.
- ReturnBufferLength [out]
-
Pointer to a variable that receives the size of the ProtocolReturnBuffer parameter in bytes.
- ProtocolStatus [out]
-
Pointer to a variable that receives the status code returned by the package.
Return value
If the function succeeds, the return value is STATUS_SUCCESS.
If the function fails, the return value is an NTSTATUS code indicating the reason it failed. The following table lists a common reason for failure and the error code that the function returns.
| Return code | Description |
|---|---|
|
The AuthenticationPackage parameter does not contain the name of a valid SSP/AP. |
Remarks
The Local Security Authority (LSA) does not examine or alter any of the function arguments.
A pointer to the CallPackagePassthrough function is available in the LSA_SECPKG_FUNCTION_TABLE structure received by the SpInitialize function.
Requirements
|
Minimum supported client |
Windows XP [desktop apps only] |
|---|---|
|
Minimum supported server |
Windows Server 2003 [desktop apps only] |
|
Header |
|
See also