mirror of
https://github.com/moparisthebest/curl
synced 2024-12-21 23:58:49 -05:00
lib: fix compiler warnings after de4de4e3c7
Visual C++ now complains about implicitly casting time_t (64-bit) to long (32-bit). Fix this by changing some variables from long to time_t, or explicitly casting to long where the public interface would be affected. Closes #1131
This commit is contained in:
parent
0b8d682f81
commit
21aa32d30d
@ -169,7 +169,7 @@ struct thread_sync_data {
|
||||
struct thread_data {
|
||||
curl_thread_t thread_hnd;
|
||||
unsigned int poll_interval;
|
||||
long interval_end;
|
||||
time_t interval_end;
|
||||
struct thread_sync_data tsd;
|
||||
};
|
||||
|
||||
@ -525,7 +525,7 @@ CURLcode Curl_resolver_is_resolved(struct connectdata *conn,
|
||||
}
|
||||
else {
|
||||
/* poll for name lookup done with exponential backoff up to 250ms */
|
||||
long elapsed = Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle);
|
||||
time_t elapsed = Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle);
|
||||
if(elapsed < 0)
|
||||
elapsed = 0;
|
||||
|
||||
|
@ -179,12 +179,12 @@ singleipconnect(struct connectdata *conn,
|
||||
*
|
||||
* @unittest: 1303
|
||||
*/
|
||||
long Curl_timeleft(struct Curl_easy *data,
|
||||
struct timeval *nowp,
|
||||
bool duringconnect)
|
||||
time_t Curl_timeleft(struct Curl_easy *data,
|
||||
struct timeval *nowp,
|
||||
bool duringconnect)
|
||||
{
|
||||
int timeout_set = 0;
|
||||
long timeout_ms = duringconnect?DEFAULT_CONNECT_TIMEOUT:0;
|
||||
time_t timeout_ms = duringconnect?DEFAULT_CONNECT_TIMEOUT:0;
|
||||
struct timeval now;
|
||||
|
||||
/* if a timeout is set, use the most restrictive one */
|
||||
@ -722,7 +722,7 @@ CURLcode Curl_is_connected(struct connectdata *conn,
|
||||
{
|
||||
struct Curl_easy *data = conn->data;
|
||||
CURLcode result = CURLE_OK;
|
||||
long allow;
|
||||
time_t allow;
|
||||
int error = 0;
|
||||
struct timeval now;
|
||||
int rc;
|
||||
@ -1153,7 +1153,7 @@ CURLcode Curl_connecthost(struct connectdata *conn, /* context */
|
||||
struct timeval before = Curl_tvnow();
|
||||
CURLcode result = CURLE_COULDNT_CONNECT;
|
||||
|
||||
long timeout_ms = Curl_timeleft(data, &before, TRUE);
|
||||
time_t timeout_ms = Curl_timeleft(data, &before, TRUE);
|
||||
|
||||
if(timeout_ms < 0) {
|
||||
/* a precaution, no need to continue if time already is up */
|
||||
|
@ -35,9 +35,9 @@ CURLcode Curl_connecthost(struct connectdata *conn,
|
||||
|
||||
/* generic function that returns how much time there's left to run, according
|
||||
to the timeouts set */
|
||||
long Curl_timeleft(struct Curl_easy *data,
|
||||
struct timeval *nowp,
|
||||
bool duringconnect);
|
||||
time_t Curl_timeleft(struct Curl_easy *data,
|
||||
struct timeval *nowp,
|
||||
bool duringconnect);
|
||||
|
||||
#define DEFAULT_CONNECT_TIMEOUT 300000 /* milliseconds == five minutes */
|
||||
#define HAPPY_EYEBALLS_TIMEOUT 200 /* milliseconds to wait between
|
||||
|
16
lib/ftp.c
16
lib/ftp.c
@ -384,10 +384,10 @@ static CURLcode AcceptServerConnect(struct connectdata *conn)
|
||||
* Curl_pgrsTime(..., TIMER_STARTACCEPT);
|
||||
*
|
||||
*/
|
||||
static long ftp_timeleft_accept(struct Curl_easy *data)
|
||||
static time_t ftp_timeleft_accept(struct Curl_easy *data)
|
||||
{
|
||||
long timeout_ms = DEFAULT_ACCEPT_TIMEOUT;
|
||||
long other;
|
||||
time_t timeout_ms = DEFAULT_ACCEPT_TIMEOUT;
|
||||
time_t other;
|
||||
struct timeval now;
|
||||
|
||||
if(data->set.accepttimeout > 0)
|
||||
@ -430,7 +430,7 @@ static CURLcode ReceivedServerConnect(struct connectdata *conn, bool *received)
|
||||
struct ftp_conn *ftpc = &conn->proto.ftpc;
|
||||
struct pingpong *pp = &ftpc->pp;
|
||||
int result;
|
||||
long timeout_ms;
|
||||
time_t timeout_ms;
|
||||
ssize_t nread;
|
||||
int ftpcode;
|
||||
|
||||
@ -547,7 +547,7 @@ static CURLcode InitiateTransfer(struct connectdata *conn)
|
||||
static CURLcode AllowServerConnect(struct connectdata *conn, bool *connected)
|
||||
{
|
||||
struct Curl_easy *data = conn->data;
|
||||
long timeout_ms;
|
||||
time_t timeout_ms;
|
||||
CURLcode result = CURLE_OK;
|
||||
|
||||
*connected = FALSE;
|
||||
@ -687,8 +687,8 @@ CURLcode Curl_GetFTPResponse(ssize_t *nreadp, /* return number of bytes read */
|
||||
* line in a response or continue reading. */
|
||||
|
||||
curl_socket_t sockfd = conn->sock[FIRSTSOCKET];
|
||||
long timeout; /* timeout in milliseconds */
|
||||
long interval_ms;
|
||||
time_t timeout; /* timeout in milliseconds */
|
||||
time_t interval_ms;
|
||||
struct Curl_easy *data = conn->data;
|
||||
CURLcode result = CURLE_OK;
|
||||
struct ftp_conn *ftpc = &conn->proto.ftpc;
|
||||
@ -3250,7 +3250,7 @@ static CURLcode ftp_done(struct connectdata *conn, CURLcode status,
|
||||
ssize_t nread;
|
||||
int ftpcode;
|
||||
CURLcode result = CURLE_OK;
|
||||
char *path;
|
||||
char *path = NULL;
|
||||
const char *path_to_use = data->state.path;
|
||||
|
||||
if(!ftp)
|
||||
|
@ -568,7 +568,7 @@ int Curl_resolv_timeout(struct connectdata *conn,
|
||||
const char *hostname,
|
||||
int port,
|
||||
struct Curl_dns_entry **entry,
|
||||
long timeoutms)
|
||||
time_t timeoutms)
|
||||
{
|
||||
#ifdef USE_ALARM_TIMEOUT
|
||||
#ifdef HAVE_SIGACTION
|
||||
|
@ -87,7 +87,7 @@ int Curl_resolv(struct connectdata *conn, const char *hostname,
|
||||
int port, struct Curl_dns_entry **dnsentry);
|
||||
int Curl_resolv_timeout(struct connectdata *conn, const char *hostname,
|
||||
int port, struct Curl_dns_entry **dnsentry,
|
||||
long timeoutms);
|
||||
time_t timeoutms);
|
||||
|
||||
#ifdef CURLRES_IPV6
|
||||
/*
|
||||
|
@ -113,7 +113,7 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
|
||||
curl_off_t cl=0;
|
||||
bool closeConnection = FALSE;
|
||||
bool chunked_encoding = FALSE;
|
||||
long check;
|
||||
time_t check;
|
||||
|
||||
#define SELECT_OK 0
|
||||
#define SELECT_ERROR 1
|
||||
|
20
lib/multi.c
20
lib/multi.c
@ -1300,7 +1300,7 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
|
||||
CURLMcode rc;
|
||||
CURLcode result = CURLE_OK;
|
||||
struct SingleRequest *k;
|
||||
long timeout_ms;
|
||||
time_t timeout_ms;
|
||||
int control;
|
||||
|
||||
if(!GOOD_EASY_HANDLE(data))
|
||||
@ -2486,7 +2486,7 @@ static CURLMcode add_next_timeout(struct timeval now,
|
||||
timeout in *tv */
|
||||
for(e = list->head; e;) {
|
||||
struct curl_llist_element *n = e->next;
|
||||
long diff = curlx_tvdiff(*(struct timeval *)e->ptr, now);
|
||||
time_t diff = curlx_tvdiff(*(struct timeval *)e->ptr, now);
|
||||
if(diff <= 0)
|
||||
/* remove outdated entry */
|
||||
Curl_llist_remove(list, e, NULL);
|
||||
@ -2764,7 +2764,7 @@ static CURLMcode multi_timeout(struct Curl_multi *multi,
|
||||
|
||||
if(Curl_splaycomparekeys(multi->timetree->key, now) > 0) {
|
||||
/* some time left before expiration */
|
||||
*timeout_ms = curlx_tvdiff(multi->timetree->key, now);
|
||||
*timeout_ms = (long)curlx_tvdiff(multi->timetree->key, now);
|
||||
if(!*timeout_ms)
|
||||
/*
|
||||
* Since we only provide millisecond resolution on the returned value
|
||||
@ -2871,7 +2871,7 @@ multi_addtimeout(struct curl_llist *timeoutlist,
|
||||
/* find the correct spot in the list */
|
||||
for(e = timeoutlist->head; e; e = e->next) {
|
||||
struct timeval *checktime = e->ptr;
|
||||
long diff = curlx_tvdiff(*checktime, *timedup);
|
||||
time_t diff = curlx_tvdiff(*checktime, *timedup);
|
||||
if(diff > 0)
|
||||
break;
|
||||
prev = e;
|
||||
@ -2898,7 +2898,7 @@ multi_addtimeout(struct curl_llist *timeoutlist,
|
||||
* The timeout will be added to a queue of timeouts if it defines a moment in
|
||||
* time that is later than the current head of queue.
|
||||
*/
|
||||
void Curl_expire(struct Curl_easy *data, long milli)
|
||||
void Curl_expire(struct Curl_easy *data, time_t milli)
|
||||
{
|
||||
struct Curl_multi *multi = data->multi;
|
||||
struct timeval *nowp = &data->state.expiretime;
|
||||
@ -2911,7 +2911,7 @@ void Curl_expire(struct Curl_easy *data, long milli)
|
||||
return;
|
||||
|
||||
set = Curl_tvnow();
|
||||
set.tv_sec += milli/1000;
|
||||
set.tv_sec += (long)(milli/1000);
|
||||
set.tv_usec += (milli%1000)*1000;
|
||||
|
||||
if(set.tv_usec >= 1000000) {
|
||||
@ -2923,7 +2923,7 @@ void Curl_expire(struct Curl_easy *data, long milli)
|
||||
/* This means that the struct is added as a node in the splay tree.
|
||||
Compare if the new time is earlier, and only remove-old/add-new if it
|
||||
is. */
|
||||
long diff = curlx_tvdiff(set, *nowp);
|
||||
time_t diff = curlx_tvdiff(set, *nowp);
|
||||
if(diff > 0) {
|
||||
/* the new expire time was later so just add it to the queue
|
||||
and get out */
|
||||
@ -2961,14 +2961,14 @@ void Curl_expire(struct Curl_easy *data, long milli)
|
||||
* time-out period to expire.
|
||||
*
|
||||
*/
|
||||
void Curl_expire_latest(struct Curl_easy *data, long milli)
|
||||
void Curl_expire_latest(struct Curl_easy *data, time_t milli)
|
||||
{
|
||||
struct timeval *expire = &data->state.expiretime;
|
||||
|
||||
struct timeval set;
|
||||
|
||||
set = Curl_tvnow();
|
||||
set.tv_sec += milli / 1000;
|
||||
set.tv_sec += (long)(milli / 1000);
|
||||
set.tv_usec += (milli % 1000) * 1000;
|
||||
|
||||
if(set.tv_usec >= 1000000) {
|
||||
@ -2980,7 +2980,7 @@ void Curl_expire_latest(struct Curl_easy *data, long milli)
|
||||
/* This means that the struct is added as a node in the splay tree.
|
||||
Compare if the new time is earlier, and only remove-old/add-new if it
|
||||
is. */
|
||||
long diff = curlx_tvdiff(set, *expire);
|
||||
time_t diff = curlx_tvdiff(set, *expire);
|
||||
if(diff > 0)
|
||||
/* the new expire time was later than the top time, so just skip this */
|
||||
return;
|
||||
|
@ -25,9 +25,9 @@
|
||||
/*
|
||||
* Prototypes for library-wide functions provided by multi.c
|
||||
*/
|
||||
void Curl_expire(struct Curl_easy *data, long milli);
|
||||
void Curl_expire(struct Curl_easy *data, time_t milli);
|
||||
void Curl_expire_clear(struct Curl_easy *data);
|
||||
void Curl_expire_latest(struct Curl_easy *data, long milli);
|
||||
void Curl_expire_latest(struct Curl_easy *data, time_t milli);
|
||||
bool Curl_pipeline_wanted(const struct Curl_multi* multi, int bits);
|
||||
void Curl_multi_handlePipeBreak(struct Curl_easy *data);
|
||||
|
||||
|
@ -44,12 +44,12 @@
|
||||
|
||||
/* Returns timeout in ms. 0 or negative number means the timeout has already
|
||||
triggered */
|
||||
long Curl_pp_state_timeout(struct pingpong *pp)
|
||||
time_t Curl_pp_state_timeout(struct pingpong *pp)
|
||||
{
|
||||
struct connectdata *conn = pp->conn;
|
||||
struct Curl_easy *data=conn->data;
|
||||
long timeout_ms; /* in milliseconds */
|
||||
long timeout2_ms; /* in milliseconds */
|
||||
time_t timeout_ms; /* in milliseconds */
|
||||
time_t timeout2_ms; /* in milliseconds */
|
||||
long response_time= (data->set.server_response_timeout)?
|
||||
data->set.server_response_timeout: pp->response_time;
|
||||
|
||||
@ -83,8 +83,8 @@ CURLcode Curl_pp_statemach(struct pingpong *pp, bool block)
|
||||
struct connectdata *conn = pp->conn;
|
||||
curl_socket_t sock = conn->sock[FIRSTSOCKET];
|
||||
int rc;
|
||||
long interval_ms;
|
||||
long timeout_ms = Curl_pp_state_timeout(pp);
|
||||
time_t interval_ms;
|
||||
time_t timeout_ms = Curl_pp_state_timeout(pp);
|
||||
struct Curl_easy *data=conn->data;
|
||||
CURLcode result = CURLE_OK;
|
||||
|
||||
|
@ -88,7 +88,7 @@ void Curl_pp_init(struct pingpong *pp);
|
||||
|
||||
/* Returns timeout in ms. 0 or negative number means the timeout has already
|
||||
triggered */
|
||||
long Curl_pp_state_timeout(struct pingpong *pp);
|
||||
time_t Curl_pp_state_timeout(struct pingpong *pp);
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
|
@ -145,7 +145,7 @@ int Curl_wait_ms(int timeout_ms)
|
||||
int Curl_socket_check(curl_socket_t readfd0, /* two sockets to read from */
|
||||
curl_socket_t readfd1,
|
||||
curl_socket_t writefd, /* socket to write to */
|
||||
long timeout_ms) /* milliseconds to wait */
|
||||
time_t timeout_ms) /* milliseconds to wait */
|
||||
{
|
||||
#ifdef HAVE_POLL_FINE
|
||||
struct pollfd pfd[3];
|
||||
|
@ -73,7 +73,7 @@ struct pollfd
|
||||
|
||||
int Curl_socket_check(curl_socket_t readfd, curl_socket_t readfd2,
|
||||
curl_socket_t writefd,
|
||||
long timeout_ms);
|
||||
time_t timeout_ms);
|
||||
|
||||
#define SOCKET_READABLE(x,z) \
|
||||
Curl_socket_check(x, CURL_SOCKET_BAD, CURL_SOCKET_BAD, z)
|
||||
|
@ -57,7 +57,7 @@ int Curl_blockread_all(struct connectdata *conn, /* connection data */
|
||||
ssize_t nread;
|
||||
ssize_t allread = 0;
|
||||
int result;
|
||||
long timeleft;
|
||||
time_t timeleft;
|
||||
*n = 0;
|
||||
for(;;) {
|
||||
timeleft = Curl_timeleft(conn->data, NULL, TRUE);
|
||||
@ -376,7 +376,7 @@ CURLcode Curl_SOCKS5(const char *proxy_name,
|
||||
CURLcode code;
|
||||
curl_socket_t sock = conn->sock[sockindex];
|
||||
struct Curl_easy *data = conn->data;
|
||||
long timeout;
|
||||
time_t timeout;
|
||||
bool socks5_resolve_local = (conn->proxytype == CURLPROXY_SOCKS5)?TRUE:FALSE;
|
||||
const size_t hostname_len = strlen(hostname);
|
||||
ssize_t len = 0;
|
||||
|
@ -199,7 +199,7 @@ const struct Curl_handler Curl_handler_tftp = {
|
||||
static CURLcode tftp_set_timeouts(tftp_state_data_t *state)
|
||||
{
|
||||
time_t maxtime, timeout;
|
||||
long timeout_ms;
|
||||
time_t timeout_ms;
|
||||
bool start = (state->state == TFTP_STATE_START) ? TRUE : FALSE;
|
||||
|
||||
time(&state->start_time);
|
||||
|
@ -1137,7 +1137,7 @@ CURLcode Curl_readwrite(struct connectdata *conn,
|
||||
|
||||
*/
|
||||
|
||||
long ms = Curl_tvdiff(k->now, k->start100);
|
||||
time_t ms = Curl_tvdiff(k->now, k->start100);
|
||||
if(ms >= data->set.expect_100_timeout) {
|
||||
/* we've waited long enough, continue anyway */
|
||||
k->exp100 = EXP100_SEND_DATA;
|
||||
|
12
lib/url.c
12
lib/url.c
@ -3021,8 +3021,8 @@ Curl_oldest_idle_connection(struct Curl_easy *data)
|
||||
struct curl_hash_iterator iter;
|
||||
struct curl_llist_element *curr;
|
||||
struct curl_hash_element *he;
|
||||
long highscore=-1;
|
||||
long score;
|
||||
time_t highscore=-1;
|
||||
time_t score;
|
||||
struct timeval now;
|
||||
struct connectdata *conn_candidate = NULL;
|
||||
struct connectbundle *bundle;
|
||||
@ -3071,8 +3071,8 @@ find_oldest_idle_connection_in_bundle(struct Curl_easy *data,
|
||||
struct connectbundle *bundle)
|
||||
{
|
||||
struct curl_llist_element *curr;
|
||||
long highscore=-1;
|
||||
long score;
|
||||
time_t highscore=-1;
|
||||
time_t score;
|
||||
struct timeval now;
|
||||
struct connectdata *conn_candidate = NULL;
|
||||
struct connectdata *conn;
|
||||
@ -3154,7 +3154,7 @@ static int call_disconnect_if_dead(struct connectdata *conn,
|
||||
static void prune_dead_connections(struct Curl_easy *data)
|
||||
{
|
||||
struct timeval now = Curl_tvnow();
|
||||
long elapsed = Curl_tvdiff(now, data->state.conn_cache->last_cleanup);
|
||||
time_t elapsed = Curl_tvdiff(now, data->state.conn_cache->last_cleanup);
|
||||
|
||||
if(elapsed >= 1000L) {
|
||||
Curl_conncache_foreach(data->state.conn_cache, data,
|
||||
@ -5537,7 +5537,7 @@ static CURLcode resolve_server(struct Curl_easy *data,
|
||||
bool *async)
|
||||
{
|
||||
CURLcode result=CURLE_OK;
|
||||
long timeout_ms = Curl_timeleft(data, NULL, TRUE);
|
||||
time_t timeout_ms = Curl_timeleft(data, NULL, TRUE);
|
||||
|
||||
/*************************************************************
|
||||
* Resolve the name of the server or proxy
|
||||
|
@ -962,8 +962,8 @@ struct connectdata {
|
||||
struct timeval connecttime;
|
||||
/* The two fields below get set in Curl_connecthost */
|
||||
int num_addr; /* number of addresses to try to connect to */
|
||||
long timeoutms_per_addr; /* how long time in milliseconds to spend on
|
||||
trying to connect to each IP address */
|
||||
time_t timeoutms_per_addr; /* how long time in milliseconds to spend on
|
||||
trying to connect to each IP address */
|
||||
|
||||
const struct Curl_handler *handler; /* Connection's protocol handler */
|
||||
const struct Curl_handler *given; /* The protocol first given */
|
||||
|
Loading…
Reference in New Issue
Block a user