| 
| static int  | sspi_ContextBufferAllocTableNew (void) | 
|   | 
| static int  | sspi_ContextBufferAllocTableGrow (void) | 
|   | 
| static void  | sspi_ContextBufferAllocTableFree (void) | 
|   | 
| static void *  | sspi_ContextBufferAlloc (UINT32 allocatorIndex, size_t size) | 
|   | 
| SSPI_CREDENTIALS *  | sspi_CredentialsNew (void) | 
|   | 
| void  | sspi_CredentialsFree (SSPI_CREDENTIALS *credentials) | 
|   | 
| void *  | sspi_SecBufferAlloc (PSecBuffer SecBuffer, ULONG size) | 
|   | 
| void  | sspi_SecBufferFree (PSecBuffer SecBuffer) | 
|   | 
| SecHandle *  | sspi_SecureHandleAlloc (void) | 
|   | 
| void *  | sspi_SecureHandleGetLowerPointer (SecHandle *handle) | 
|   | 
| void  | sspi_SecureHandleInvalidate (SecHandle *handle) | 
|   | 
| void  | sspi_SecureHandleSetLowerPointer (SecHandle *handle, void *pointer) | 
|   | 
| void *  | sspi_SecureHandleGetUpperPointer (SecHandle *handle) | 
|   | 
| void  | sspi_SecureHandleSetUpperPointer (SecHandle *handle, void *pointer) | 
|   | 
| void  | sspi_SecureHandleFree (SecHandle *handle) | 
|   | 
| int  | sspi_SetAuthIdentityW (SEC_WINNT_AUTH_IDENTITY *identity, const WCHAR *user, const WCHAR *domain, const WCHAR *password) | 
|   | 
| static BOOL  | copy (WCHAR **dst, ULONG *dstLen, const WCHAR *what, size_t len) | 
|   | 
| int  | sspi_SetAuthIdentityWithLengthW (SEC_WINNT_AUTH_IDENTITY *identity, const WCHAR *user, size_t userLen, const WCHAR *domain, size_t domainLen, const WCHAR *password, size_t passwordLen) | 
|   | 
| static void  | zfree (WCHAR *str, size_t len) | 
|   | 
| int  | sspi_SetAuthIdentityA (SEC_WINNT_AUTH_IDENTITY *identity, const char *user, const char *domain, const char *password) | 
|   | 
| UINT32  | sspi_GetAuthIdentityVersion (const void *identity) | 
|   | 
| UINT32  | sspi_GetAuthIdentityFlags (const void *identity) | 
|   | 
| BOOL  | sspi_GetAuthIdentityUserDomainW (const void *identity, const WCHAR **pUser, UINT32 *pUserLength, const WCHAR **pDomain, UINT32 *pDomainLength) | 
|   | 
| BOOL  | sspi_GetAuthIdentityUserDomainA (const void *identity, const char **pUser, UINT32 *pUserLength, const char **pDomain, UINT32 *pDomainLength) | 
|   | 
| BOOL  | sspi_GetAuthIdentityPasswordW (const void *identity, const WCHAR **pPassword, UINT32 *pPasswordLength) | 
|   | 
| BOOL  | sspi_GetAuthIdentityPasswordA (const void *identity, const char **pPassword, UINT32 *pPasswordLength) | 
|   | 
| BOOL  | sspi_CopyAuthIdentityFieldsA (const SEC_WINNT_AUTH_IDENTITY_INFO *identity, char **pUser, char **pDomain, char **pPassword) | 
|   | 
| BOOL  | sspi_CopyAuthIdentityFieldsW (const SEC_WINNT_AUTH_IDENTITY_INFO *identity, WCHAR **pUser, WCHAR **pDomain, WCHAR **pPassword) | 
|   | 
| BOOL  | sspi_CopyAuthPackageListA (const SEC_WINNT_AUTH_IDENTITY_INFO *identity, char **pPackageList) | 
|   | 
| int  | sspi_CopyAuthIdentity (SEC_WINNT_AUTH_IDENTITY *identity, const SEC_WINNT_AUTH_IDENTITY_INFO *srcIdentity) | 
|   | 
| PSecBuffer  | sspi_FindSecBuffer (PSecBufferDesc pMessage, ULONG BufferType) | 
|   | 
| static BOOL  | WINPR_init (void) | 
|   | 
| static BOOL CALLBACK  | sspi_init (PINIT_ONCE InitOnce, PVOID Parameter, PVOID *Context) | 
|   | 
| void  | sspi_GlobalInit (void) | 
|   | 
| void  | sspi_GlobalFinish (void) | 
|   | 
| static const SecurityFunctionTableA *  | sspi_GetSecurityFunctionTableAByNameA (const SEC_CHAR *Name) | 
|   | 
| static const SecurityFunctionTableW *  | sspi_GetSecurityFunctionTableWByNameW (const SEC_WCHAR *Name) | 
|   | 
| static const SecurityFunctionTableW *  | sspi_GetSecurityFunctionTableWByNameA (const SEC_CHAR *Name) | 
|   | 
| static void  | FreeContextBuffer_EnumerateSecurityPackages (void *contextBuffer) | 
|   | 
| static void  | FreeContextBuffer_QuerySecurityPackageInfo (void *contextBuffer) | 
|   | 
| static void  | sspi_ContextBufferFree (void *contextBuffer) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_EnumerateSecurityPackagesW (ULONG *pcPackages, PSecPkgInfoW *ppPackageInfo) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_EnumerateSecurityPackagesA (ULONG *pcPackages, PSecPkgInfoA *ppPackageInfo) | 
|   | 
| SecurityFunctionTableW *SEC_ENTRY  | winpr_InitSecurityInterfaceW (void) | 
|   | 
| SecurityFunctionTableA *SEC_ENTRY  | winpr_InitSecurityInterfaceA (void) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_QuerySecurityPackageInfoW (SEC_WCHAR *pszPackageName, PSecPkgInfoW *ppPackageInfo) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_QuerySecurityPackageInfoA (SEC_CHAR *pszPackageName, PSecPkgInfoA *ppPackageInfo) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_AcquireCredentialsHandleW (SEC_WCHAR *pszPrincipal, SEC_WCHAR *pszPackage, ULONG fCredentialUse, void *pvLogonID, void *pAuthData, SEC_GET_KEY_FN pGetKeyFn, void *pvGetKeyArgument, PCredHandle phCredential, PTimeStamp ptsExpiry) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_AcquireCredentialsHandleA (SEC_CHAR *pszPrincipal, SEC_CHAR *pszPackage, ULONG fCredentialUse, void *pvLogonID, void *pAuthData, SEC_GET_KEY_FN pGetKeyFn, void *pvGetKeyArgument, PCredHandle phCredential, PTimeStamp ptsExpiry) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_ExportSecurityContext (PCtxtHandle phContext, ULONG fFlags, PSecBuffer pPackedContext, HANDLE *pToken) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_FreeCredentialsHandle (PCredHandle phCredential) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_ImportSecurityContextW (SEC_WCHAR *pszPackage, PSecBuffer pPackedContext, HANDLE pToken, PCtxtHandle phContext) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_ImportSecurityContextA (SEC_CHAR *pszPackage, PSecBuffer pPackedContext, HANDLE pToken, PCtxtHandle phContext) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_QueryCredentialsAttributesW (PCredHandle phCredential, ULONG ulAttribute, void *pBuffer) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_QueryCredentialsAttributesA (PCredHandle phCredential, ULONG ulAttribute, void *pBuffer) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_SetCredentialsAttributesW (PCredHandle phCredential, ULONG ulAttribute, void *pBuffer, ULONG cbBuffer) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_SetCredentialsAttributesA (PCredHandle phCredential, ULONG ulAttribute, void *pBuffer, ULONG cbBuffer) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_AcceptSecurityContext (PCredHandle phCredential, PCtxtHandle phContext, PSecBufferDesc pInput, ULONG fContextReq, ULONG TargetDataRep, PCtxtHandle phNewContext, PSecBufferDesc pOutput, PULONG pfContextAttr, PTimeStamp ptsTimeStamp) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_ApplyControlToken (PCtxtHandle phContext, PSecBufferDesc pInput) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_CompleteAuthToken (PCtxtHandle phContext, PSecBufferDesc pToken) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_DeleteSecurityContext (PCtxtHandle phContext) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_FreeContextBuffer (void *pvContextBuffer) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_ImpersonateSecurityContext (PCtxtHandle phContext) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_InitializeSecurityContextW (PCredHandle phCredential, PCtxtHandle phContext, SEC_WCHAR *pszTargetName, ULONG fContextReq, ULONG Reserved1, ULONG TargetDataRep, PSecBufferDesc pInput, ULONG Reserved2, PCtxtHandle phNewContext, PSecBufferDesc pOutput, PULONG pfContextAttr, PTimeStamp ptsExpiry) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_InitializeSecurityContextA (PCredHandle phCredential, PCtxtHandle phContext, SEC_CHAR *pszTargetName, ULONG fContextReq, ULONG Reserved1, ULONG TargetDataRep, PSecBufferDesc pInput, ULONG Reserved2, PCtxtHandle phNewContext, PSecBufferDesc pOutput, PULONG pfContextAttr, PTimeStamp ptsExpiry) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_QueryContextAttributesW (PCtxtHandle phContext, ULONG ulAttribute, void *pBuffer) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_QueryContextAttributesA (PCtxtHandle phContext, ULONG ulAttribute, void *pBuffer) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_QuerySecurityContextToken (PCtxtHandle phContext, HANDLE *phToken) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_SetContextAttributesW (PCtxtHandle phContext, ULONG ulAttribute, void *pBuffer, ULONG cbBuffer) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_SetContextAttributesA (PCtxtHandle phContext, ULONG ulAttribute, void *pBuffer, ULONG cbBuffer) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_RevertSecurityContext (PCtxtHandle phContext) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_DecryptMessage (PCtxtHandle phContext, PSecBufferDesc pMessage, ULONG MessageSeqNo, PULONG pfQOP) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_EncryptMessage (PCtxtHandle phContext, ULONG fQOP, PSecBufferDesc pMessage, ULONG MessageSeqNo) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_MakeSignature (PCtxtHandle phContext, ULONG fQOP, PSecBufferDesc pMessage, ULONG MessageSeqNo) | 
|   | 
| static SECURITY_STATUS SEC_ENTRY  | winpr_VerifySignature (PCtxtHandle phContext, PSecBufferDesc pMessage, ULONG MessageSeqNo, PULONG pfQOP) | 
|   |