2#ifndef HTTP_CLIENT_AUTH_H
3#define HTTP_CLIENT_AUTH_H
18#define DECODE64(c) (isascii(c) ? base64val[c] : BAD)
21static const char base64digits[] =
22"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
24static const char base64val[] = {
25BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
26BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
27BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD, 62,
BAD,
BAD,
BAD, 63,
2852, 53, 54, 55, 56, 57, 58, 59, 60, 61,
BAD,
BAD,
BAD,
BAD,
BAD,
BAD,
29BAD, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
3015, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
BAD,
BAD,
BAD,
BAD,
BAD,
31BAD, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
3241, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
BAD,
BAD,
BAD,
BAD,
BAD
46 IN char * pszUserName,
49 IN char * pszPassword,
61 IN char * pszNonceCount,
66 IN char * pszDigestUri,
67 IN int nDigestUriLebgth,
#define HASHLEN
Definition HTTPClientAuth.h:8
int HTTPBase64Decoder(char *out, const char *in)
void HTTPMD5Init(struct MD5Context *context)
void HTTPBase64Encoder(unsigned char *out, const unsigned char *in, int inlen)
unsigned long uint32
Definition HTTPClientAuth.h:15
void HTTPMD5Update(struct MD5Context *context, unsigned char const *buf, unsigned len)
void HTTPMD5Transform(uint32 buf[4], uint32 const in[16])
void HTTPDigestCalcHA1(IN int nAlg, IN char *pszUserName, IN char *pszRealm, IN int nRealmLength, IN char *pszPassword, IN char *pszNonce, IN int nNonceLength, IN char *pszCNonce, OUT HASHHEX SessionKey)
void HTTPDigestCalcResponse(IN HASHHEX HA1, IN char *pszNonce, IN int nNonceLength, IN char *pszNonceCount, IN char *pszCNonce, IN char *pszQop, IN int nQopLength, IN char *pszMethod, IN char *pszDigestUri, IN int nDigestUriLebgth, IN HASHHEX HEntity, OUT HASHHEX Response)
void HTTPDigestGenerateCNonce(char *outbuff)
#define HASHHEXLEN
Definition HTTPClientAuth.h:9
char HASH[HASHLEN]
Definition HTTPClientAuth.h:13
#define IN
Definition HTTPClientAuth.h:10
char HASHHEX[HASHHEXLEN+1]
Definition HTTPClientAuth.h:14
struct MD5Context MD5_CTX
Definition HTTPClientAuth.h:87
#define OUT
Definition HTTPClientAuth.h:11
void HTTPMD5Final(unsigned char digest[16], struct MD5Context *context)
#define BAD
Definition HTTPClientAuth.h:19
Definition HTTPClientAuth.h:74
uint32 buf[4]
Definition HTTPClientAuth.h:75
uint32 bits[2]
Definition HTTPClientAuth.h:76
unsigned char in[64]
Definition HTTPClientAuth.h:77