private static extern int QuerySecurityContextToken(ref NtlmAuth.SecHandle phContext, ref IntPtr phToken);
private static extern int DeleteSecurityContext(ref NtlmAuth.SecHandle phContext);
private static extern int FreeCredentialsHandle(ref NtlmAuth.SecHandle phCredential);
private static extern int AcceptSecurityContext(ref NtlmAuth.SecHandle phCredential, IntPtr phContext, ref NtlmAuth.SecBufferDesc pInput, uint fContextReq, uint TargetDataRep, ref NtlmAuth.SecHandle phNewContext, ref NtlmAuth.SecBufferDesc pOutput, ref uint pfContextAttr, ref long ptsTimeStamp);
private static extern int AcquireCredentialsHandle(string pszPrincipal, string pszPackage, uint fCredentialUse, IntPtr pvLogonID, IntPtr pAuthData, IntPtr pGetKeyFn, IntPtr pvGetKeyArgument, ref NtlmAuth.SecHandle phCredential, ref long ptsExpiry);