25 #if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_CRYPTO_AUTH) 63 header += strlen(
"Digest");
64 while(*header &&
ISSPACE(*header))
72 const unsigned char *request,
73 const unsigned char *uripath)
77 unsigned char *
path = NULL;
119 #if defined(USE_WINDOWS_SSPI) 120 have_chlg = digest->input_token ?
TRUE :
FALSE;
144 tmp = strchr((
char *)uripath,
'?');
146 size_t urilen = tmp - (
char *)uripath;
147 path = (
unsigned char *)
aprintf(
"%.*s", urilen, uripath);
151 path = (
unsigned char *)
strdup((
char *) uripath);
157 path, digest, &response, &len);
162 *allocuserpwd =
aprintf(
"%sAuthorization: Digest %s\r\n",
163 proxy ?
"Proxy-" :
"",
struct digestdata proxydigest
CURLcode Curl_auth_create_digest_http_message(struct Curl_easy *data, const char *userp, const char *passwdp, const unsigned char *request, const unsigned char *uripath, struct digestdata *digest, char **outptr, size_t *outlen)
UNITTEST_START int result
void Curl_digest_cleanup(struct Curl_easy *data)
CURLcode Curl_input_digest(struct connectdata *conn, bool proxy, const char *header)
struct proxy_info http_proxy
CURLcode Curl_auth_decode_digest_http_message(const char *chlg, struct digestdata *digest)
void Curl_auth_digest_cleanup(struct digestdata *digest)
#define Curl_safefree(ptr)
CURLcode Curl_output_digest(struct connectdata *conn, bool proxy, const unsigned char *request, const unsigned char *uripath)
#define checkprefix(a, b)
struct connectdata::dynamically_allocated_data allocptr