LSA_CALL_PACKAGE回调函数 (ntsecpkg.h)
CallPackage 函数用于调用另一个安全包来访问其服务。
语法
LSA_CALL_PACKAGE LsaCallPackage;
NTSTATUS LsaCallPackage(
[in] PUNICODE_STRING AuthenticationPackage,
[in] PVOID ProtocolSubmitBuffer,
[in] ULONG SubmitBufferLength,
[out] PVOID *ProtocolReturnBuffer,
[out] PULONG ReturnBufferLength,
[out] PNTSTATUS ProtocolStatus
)
{...}
参数
[in] AuthenticationPackage
指向包含要调用的包名称 的UNICODE_STRING 的指针。
[in] ProtocolSubmitBuffer
指向输入缓冲区的指针。 此缓冲区的内容特定于包。
[in] SubmitBufferLength
ProtocolSubmitBuffer 参数的大小(以字节为单位)。
[out] ProtocolReturnBuffer
接收输出缓冲区地址的指针。 此缓冲区的内容特定于包。
[out] ReturnBufferLength
指向一个变量的指针,该变量接收 ProtocolReturnBuffer 参数的大小(以字节为单位)。
[out] ProtocolStatus
指向接收被调用包返回的状态代码的变量的指针。
返回值
如果函数成功,则返回值STATUS_SUCCESS。
如果函数失败,则返回值是一个 NTSTATUS 代码,指示它失败的原因。 下表列出了失败的常见原因以及函数返回的错误代码。
返回代码 | 说明 |
---|---|
|
AuthenticationPackage 参数不包含有效安全包的名称。 |
注解
指向 CallPackage 函数的指针在 SpInitialize 函数接收的 LSA_SECPKG_FUNCTION_TABLE 结构中可用。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | ntsecpkg.h |