char *tmp;
char *response;
size_t len;
+ bool have_chlg;
/* Point to the address of the pointer that holds the string to send to the
server, which is for a plain host or for a HTTP proxy */
if(!passwdp)
passwdp="";
- if(!d->nonce) {
+#if defined(USE_WINDOWS_SSPI)
+ have_chlg = d->input_token ? TRUE : FALSE;
+#else
+ have_chlg = d->nonce ? TRUE : FALSE;
+#endif
+
+ if(!have_chlg) {
authp->done = FALSE;
return CURLE_OK;
}
/* Struct used for Digest challenge-response authentication */
struct digestdata {
+#if defined(USE_WINDOWS_SSPI)
+ BYTE *input_token;
+#else
char *nonce;
char *cnonce;
char *realm;
char *qop;
char *algorithm;
int nc; /* nounce count */
+#endif
};
typedef enum {