aboutsummaryrefslogtreecommitdiff
path: root/lib/curl_schannel.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/curl_schannel.h')
-rw-r--r--lib/curl_schannel.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/curl_schannel.h b/lib/curl_schannel.h
index 3de932b9d..fa6fc90c2 100644
--- a/lib/curl_schannel.h
+++ b/lib/curl_schannel.h
@@ -26,10 +26,22 @@
#ifdef USE_WINDOWS_SSPI
#ifdef USE_SCHANNEL
+#include <schnlsp.h>
+
#ifndef UNISP_NAME_A
#define UNISP_NAME_A "Microsoft Unified Security Protocol Provider"
#endif
+typedef struct curl_schannel_cred {
+ CredHandle cred_handle;
+ TimeStamp time_stamp;
+} curl_schannel_cred;
+
+typedef struct curl_schannel_ctxt {
+ CtxtHandle ctxt_handle;
+ TimeStamp time_stamp;
+} curl_schannel_ctxt;
+
CURLcode Curl_schannel_connect(struct connectdata *conn, int sockindex);
CURLcode Curl_schannel_connect_nonblocking(struct connectdata *conn,
@@ -39,6 +51,7 @@ CURLcode Curl_schannel_connect_nonblocking(struct connectdata *conn,
bool Curl_schannel_data_pending(const struct connectdata *conn, int sockindex);
void Curl_schannel_close(struct connectdata *conn, int sockindex);
int Curl_schannel_shutdown(struct connectdata *conn, int sockindex);
+void Curl_schannel_session_free(void *ptr);
int Curl_schannel_init();
void Curl_schannel_cleanup();
@@ -49,7 +62,7 @@ size_t Curl_schannel_version(char *buffer, size_t size);
#define curlssl_cleanup Curl_schannel_cleanup
#define curlssl_connect Curl_schannel_connect
#define curlssl_connect_nonblocking Curl_schannel_connect_nonblocking
-#define curlssl_session_free(x) (x=x, CURLE_NOT_BUILT_IN)
+#define curlssl_session_free Curl_schannel_session_free
#define curlssl_close_all(x) (x=x, CURLE_NOT_BUILT_IN)
#define curlssl_close Curl_schannel_close
#define curlssl_shutdown Curl_schannel_shutdown