aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2004-11-12 09:18:14 +0000
committerDaniel Stenberg <daniel@haxx.se>2004-11-12 09:18:14 +0000
commit94043b11508b9a4bf1fbee9ea17ef658c6413d9d (patch)
tree48d11ab65947de4a993afa6d4de38327cc3a6f34 /lib
parent1b02ad5e8a35ccd682429e387ccb63022ca2339a (diff)
Dan Fandrich added the --disable-crypto-auth option to configure to allow
libcurl to build without Digest support. (I figure it should also explicitly disable Negotiate and NTLM.)
Diffstat (limited to 'lib')
-rw-r--r--lib/http.c14
-rw-r--r--lib/http_digest.c2
-rw-r--r--lib/md5.c4
-rw-r--r--lib/url.c2
4 files changed, 17 insertions, 5 deletions
diff --git a/lib/http.c b/lib/http.c
index cdc3e1d8c..20cd1c15f 100644
--- a/lib/http.c
+++ b/lib/http.c
@@ -330,6 +330,7 @@ Curl_http_output_auth(struct connectdata *conn,
}
data->state.authproxy.done = TRUE;
}
+#ifndef CURL_DISABLE_CRYPTO_AUTH
else if(data->state.authproxy.want == CURLAUTH_DIGEST) {
auth=(char *)"Digest";
result = Curl_output_digest(conn,
@@ -339,7 +340,7 @@ Curl_http_output_auth(struct connectdata *conn,
if(result)
return result;
}
-
+#endif
infof(data, "Proxy auth using %s with user '%s'\n",
auth, conn->proxyuser?conn->proxyuser:"");
}
@@ -373,6 +374,7 @@ Curl_http_output_auth(struct connectdata *conn,
else
#endif
{
+#ifndef CURL_DISABLE_CRYPTO_AUTH
if(data->state.authhost.picked == CURLAUTH_DIGEST) {
auth=(char *)"Digest";
result = Curl_output_digest(conn,
@@ -381,8 +383,9 @@ Curl_http_output_auth(struct connectdata *conn,
(unsigned char *)path);
if(result)
return result;
- }
- else if(data->state.authhost.picked == CURLAUTH_BASIC) {
+ } else
+#endif
+ if(data->state.authhost.picked == CURLAUTH_BASIC) {
if(conn->bits.user_passwd &&
!checkheaders(data, "Authorization:")) {
auth=(char *)"Basic";
@@ -489,6 +492,7 @@ CURLcode Curl_http_input_auth(struct connectdata *conn,
}
else
#endif
+#ifndef CURL_DISABLE_CRYPTO_AUTH
if(checkprefix("Digest", start)) {
CURLdigest dig;
*availp |= CURLAUTH_DIGEST;
@@ -504,7 +508,9 @@ CURLcode Curl_http_input_auth(struct connectdata *conn,
data->state.authproblem = TRUE;
}
}
- else if(checkprefix("Basic", start)) {
+ else
+#endif
+ if(checkprefix("Basic", start)) {
*availp |= CURLAUTH_BASIC;
authp->avail |= CURLAUTH_BASIC;
if(authp->picked == CURLAUTH_BASIC) {
diff --git a/lib/http_digest.c b/lib/http_digest.c
index 20f5dc47b..5baccfe58 100644
--- a/lib/http_digest.c
+++ b/lib/http_digest.c
@@ -22,7 +22,7 @@
***************************************************************************/
#include "setup.h"
-#ifndef CURL_DISABLE_HTTP
+#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_CRYPTO_AUTH)
/* -- WIN32 approved -- */
#include <stdio.h>
#include <string.h>
diff --git a/lib/md5.c b/lib/md5.c
index 269726b96..1847c3cd1 100644
--- a/lib/md5.c
+++ b/lib/md5.c
@@ -23,6 +23,8 @@
#include "setup.h"
+#ifndef CURL_DISABLE_CRYPTO_AUTH
+
#ifndef USE_SSLEAY
/* This code segment is only used if OpenSSL is not provided, as if it is
we use the MD5-function provided there instead. No good duplicating
@@ -346,3 +348,5 @@ void Curl_md5it(unsigned char *outbuffer, /* 16 bytes */
MD5_Update(&ctx, input, strlen((char *)input));
MD5_Final(outbuffer, &ctx);
}
+
+#endif
diff --git a/lib/url.c b/lib/url.c
index 5d0e801b5..78224df0e 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -250,8 +250,10 @@ CURLcode Curl_close(struct SessionHandle *data)
}
Curl_share_unlock(data, CURL_LOCK_DATA_COOKIE);
+#ifndef CURL_DISABLE_CRYPTO_AUTH
Curl_digest_cleanup(data);
#endif
+#endif
/* free the connection cache */
free(data->state.connects);