1
0
mirror of https://github.com/moparisthebest/curl synced 2024-12-22 08:08:50 -05:00

Take in account that CURLAUTH_* bitmasks are now 'unsigned long'

Data type of internal vars holding CURLAUTH_* bitmasks changed from 'long' to
'unsigned long' for proper handling and operating.
This commit is contained in:
Yang Tse 2012-04-18 23:04:35 +02:00
parent 09690be8de
commit 9421b06397
5 changed files with 15 additions and 15 deletions

View File

@ -284,7 +284,7 @@ static bool pickoneauth(struct auth *pick)
{ {
bool picked; bool picked;
/* only deal with authentication we want */ /* only deal with authentication we want */
long avail = pick->avail & pick->want; unsigned long avail = pick->avail & pick->want;
picked = TRUE; picked = TRUE;
/* The order of these checks is highly relevant, as this will be the order /* The order of these checks is highly relevant, as this will be the order
@ -697,7 +697,7 @@ CURLcode Curl_http_input_auth(struct connectdata *conn,
*/ */
struct SessionHandle *data = conn->data; struct SessionHandle *data = conn->data;
long *availp; unsigned long *availp;
const char *start; const char *start;
struct auth *authp; struct auth *authp;

View File

@ -1397,7 +1397,7 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
* Set HTTP Authentication type BITMASK. * Set HTTP Authentication type BITMASK.
*/ */
{ {
long auth = va_arg(param, long); unsigned long auth = va_arg(param, unsigned long);
/* the DIGEST_IE bit is only used to set a special marker, for all the /* the DIGEST_IE bit is only used to set a special marker, for all the
rest we need to handle it as normal DIGEST */ rest we need to handle it as normal DIGEST */
@ -1461,7 +1461,7 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
* Set HTTP Authentication type BITMASK. * Set HTTP Authentication type BITMASK.
*/ */
{ {
long auth = va_arg(param, long); unsigned long auth = va_arg(param, unsigned long);
/* the DIGEST_IE bit is only used to set a special marker, for all the /* the DIGEST_IE bit is only used to set a special marker, for all the
rest we need to handle it as normal DIGEST */ rest we need to handle it as normal DIGEST */

View File

@ -986,8 +986,8 @@ struct PureInfo {
thus made the document NOT get fetched */ thus made the document NOT get fetched */
long header_size; /* size of read header(s) in bytes */ long header_size; /* size of read header(s) in bytes */
long request_size; /* the amount of bytes sent in the request(s) */ long request_size; /* the amount of bytes sent in the request(s) */
long proxyauthavail; /* what proxy auth types were announced */ unsigned long proxyauthavail; /* what proxy auth types were announced */
long httpauthavail; /* what host auth types were announced */ unsigned long httpauthavail; /* what host auth types were announced */
long numconnects; /* how many new connection did libcurl created */ long numconnects; /* how many new connection did libcurl created */
char *contenttype; /* the content type of the object */ char *contenttype; /* the content type of the object */
char *wouldredirect; /* URL this would've been redirected to if asked to */ char *wouldredirect; /* URL this would've been redirected to if asked to */
@ -1089,11 +1089,11 @@ typedef enum {
#define MAX_CURL_PASSWORD_LENGTH_TXT "255" #define MAX_CURL_PASSWORD_LENGTH_TXT "255"
struct auth { struct auth {
long want; /* Bitmask set to the authentication methods wanted by the app unsigned long want; /* Bitmask set to the authentication methods wanted by
(with CURLOPT_HTTPAUTH or CURLOPT_PROXYAUTH). */ app (with CURLOPT_HTTPAUTH or CURLOPT_PROXYAUTH). */
long picked; unsigned long picked;
long avail; /* bitmask for what the server reports to support for this unsigned long avail; /* Bitmask for what the server reports to support for
resource */ this resource */
bool done; /* TRUE when the auth phase is done and ready to do the *actual* bool done; /* TRUE when the auth phase is done and ready to do the *actual*
request */ request */
bool multi; /* TRUE if this is not yet authenticated but within the auth bool multi; /* TRUE if this is not yet authenticated but within the auth
@ -1361,8 +1361,8 @@ struct UserDefined {
void *writeheader; /* write the header to this if non-NULL */ void *writeheader; /* write the header to this if non-NULL */
void *rtp_out; /* write RTP to this if non-NULL */ void *rtp_out; /* write RTP to this if non-NULL */
long use_port; /* which port to use (when not using default) */ long use_port; /* which port to use (when not using default) */
long httpauth; /* what kind of HTTP authentication to use (bitmask) */ unsigned long httpauth; /* kind of HTTP authentication to use (bitmask) */
long proxyauth; /* what kind of proxy authentication to use (bitmask) */ unsigned long proxyauth; /* kind of proxy authentication to use (bitmask) */
long followlocation; /* as in HTTP Location: */ long followlocation; /* as in HTTP Location: */
long maxredirs; /* maximum no. of http(s) redirects to follow, set to -1 long maxredirs; /* maximum no. of http(s) redirects to follow, set to -1
for infinity */ for infinity */

View File

@ -37,7 +37,7 @@ struct Configurable {
bool cookiesession; /* new session? */ bool cookiesession; /* new session? */
bool encoding; /* Accept-Encoding please */ bool encoding; /* Accept-Encoding please */
bool tr_encoding; /* Transfer-Encoding please */ bool tr_encoding; /* Transfer-Encoding please */
long authtype; /* auth bitmask */ unsigned long authtype; /* auth bitmask */
bool use_resume; bool use_resume;
bool resume_from_current; bool resume_from_current;
bool disable_epsv; bool disable_epsv;

View File

@ -680,7 +680,7 @@ int operate(struct Configurable *config, int argc, argv_item_t argv[])
int authbits = 0; int authbits = 0;
int bitcheck = 0; int bitcheck = 0;
while(bitcheck < 32) { while(bitcheck < 32) {
if(config->authtype & (1 << bitcheck++)) { if(config->authtype & (1UL << bitcheck++)) {
authbits++; authbits++;
if(authbits > 1) { if(authbits > 1) {
/* more than one, we're done! */ /* more than one, we're done! */