Library internal only C preprocessor macros FORMAT_OFF_T and FORMAT_OFF_TU
remain in use as internal curl_off_t print formatting strings for the internal *printf functions which still cannot handle print formatting string directives such as "I64d", "I64u", and others available on MSVC, MinGW, Intel's ICC, and other DOS/Windows compilers. This reverts previous commit part which did: FORMAT_OFF_T -> CURL_FORMAT_CURL_OFF_T FORMAT_OFF_TU -> CURL_FORMAT_CURL_OFF_TU
This commit is contained in:
parent
a923d8541c
commit
ad638da2c2
7
CHANGES
7
CHANGES
@ -6,6 +6,13 @@
|
|||||||
|
|
||||||
Changelog
|
Changelog
|
||||||
|
|
||||||
|
Yang Tse (16 Aug 2008)
|
||||||
|
- Library internal only C preprocessor macros FORMAT_OFF_T and FORMAT_OFF_TU
|
||||||
|
remain in use as internal curl_off_t print formatting strings for the internal
|
||||||
|
*printf functions which still cannot handle print formatting string directives
|
||||||
|
such as "I64d", "I64u", and others available on MSVC, MinGW, Intel's ICC, and
|
||||||
|
other DOS/Windows compilers.
|
||||||
|
|
||||||
Daniel Fandrich (15 Aug 2008)
|
Daniel Fandrich (15 Aug 2008)
|
||||||
- Added test case 1063 to test invalid long file ranges with file: URLs and
|
- Added test case 1063 to test invalid long file ranges with file: URLs and
|
||||||
1064 to test multiple http PUTs.
|
1064 to test multiple http PUTs.
|
||||||
|
@ -940,7 +940,7 @@ static char *get_netscape_format(const struct Cookie *co)
|
|||||||
"%s\t" /* tailmatch */
|
"%s\t" /* tailmatch */
|
||||||
"%s\t" /* path */
|
"%s\t" /* path */
|
||||||
"%s\t" /* secure */
|
"%s\t" /* secure */
|
||||||
"%" CURL_FORMAT_CURL_OFF_T "\t" /* expires */
|
"%" FORMAT_OFF_T "\t" /* expires */
|
||||||
"%s\t" /* name */
|
"%s\t" /* name */
|
||||||
"%s", /* value */
|
"%s", /* value */
|
||||||
co->httponly?"#HttpOnly_":"",
|
co->httponly?"#HttpOnly_":"",
|
||||||
|
15
lib/file.c
15
lib/file.c
@ -149,7 +149,7 @@ static CURLcode file_range(struct connectdata *conn)
|
|||||||
if((-1 == to) && (from>=0)) {
|
if((-1 == to) && (from>=0)) {
|
||||||
/* X - */
|
/* X - */
|
||||||
data->state.resume_from = from;
|
data->state.resume_from = from;
|
||||||
DEBUGF(infof(data, "RANGE %" CURL_FORMAT_CURL_OFF_T " to end of file\n",
|
DEBUGF(infof(data, "RANGE %" FORMAT_OFF_T " to end of file\n",
|
||||||
from));
|
from));
|
||||||
}
|
}
|
||||||
else if(from < 0) {
|
else if(from < 0) {
|
||||||
@ -157,7 +157,7 @@ static CURLcode file_range(struct connectdata *conn)
|
|||||||
totalsize = -from;
|
totalsize = -from;
|
||||||
data->req.maxdownload = -from;
|
data->req.maxdownload = -from;
|
||||||
data->state.resume_from = from;
|
data->state.resume_from = from;
|
||||||
DEBUGF(infof(data, "RANGE the last %" CURL_FORMAT_CURL_OFF_T " bytes\n",
|
DEBUGF(infof(data, "RANGE the last %" FORMAT_OFF_T " bytes\n",
|
||||||
totalsize));
|
totalsize));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@ -165,13 +165,12 @@ static CURLcode file_range(struct connectdata *conn)
|
|||||||
totalsize = to-from;
|
totalsize = to-from;
|
||||||
data->req.maxdownload = totalsize+1; /* include last byte */
|
data->req.maxdownload = totalsize+1; /* include last byte */
|
||||||
data->state.resume_from = from;
|
data->state.resume_from = from;
|
||||||
DEBUGF(infof(data, "RANGE from %" CURL_FORMAT_CURL_OFF_T
|
DEBUGF(infof(data, "RANGE from %" FORMAT_OFF_T
|
||||||
" getting %" CURL_FORMAT_CURL_OFF_T " bytes\n",
|
" getting %" FORMAT_OFF_T " bytes\n",
|
||||||
from, data->req.maxdownload));
|
from, data->req.maxdownload));
|
||||||
}
|
}
|
||||||
DEBUGF(infof(data, "range-download from %" CURL_FORMAT_CURL_OFF_T
|
DEBUGF(infof(data, "range-download from %" FORMAT_OFF_T
|
||||||
" to %" CURL_FORMAT_CURL_OFF_T
|
" to %" FORMAT_OFF_T ", totally %" FORMAT_OFF_T " bytes\n",
|
||||||
", totally %" CURL_FORMAT_CURL_OFF_T " bytes\n",
|
|
||||||
from, to, data->req.maxdownload));
|
from, to, data->req.maxdownload));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -461,7 +460,7 @@ static CURLcode file_do(struct connectdata *conn, bool *done)
|
|||||||
if(data->set.opt_no_body && data->set.include_header && fstated) {
|
if(data->set.opt_no_body && data->set.include_header && fstated) {
|
||||||
CURLcode result;
|
CURLcode result;
|
||||||
snprintf(buf, sizeof(data->state.buffer),
|
snprintf(buf, sizeof(data->state.buffer),
|
||||||
"Content-Length: %" CURL_FORMAT_CURL_OFF_T "\r\n", expected_size);
|
"Content-Length: %" FORMAT_OFF_T "\r\n", expected_size);
|
||||||
result = Curl_client_write(conn, CLIENTWRITE_BOTH, buf, 0);
|
result = Curl_client_write(conn, CLIENTWRITE_BOTH, buf, 0);
|
||||||
if(result)
|
if(result)
|
||||||
return result;
|
return result;
|
||||||
|
@ -1674,7 +1674,7 @@ int main(int argc, argv_item_t argv[])
|
|||||||
} while(1);
|
} while(1);
|
||||||
|
|
||||||
fprintf(stdout, "size: ");
|
fprintf(stdout, "size: ");
|
||||||
fprintf(stdout, "%" CURL_FORMAT_CURL_OFF_T, size);
|
fprintf(stdout, "%" FORMAT_OFF_T, size);
|
||||||
fprintf(stdout, "\n");
|
fprintf(stdout, "\n");
|
||||||
if(errors)
|
if(errors)
|
||||||
fprintf(stdout, "\n==> %d Test(s) failed!\n", errors);
|
fprintf(stdout, "\n==> %d Test(s) failed!\n", errors);
|
||||||
|
44
lib/ftp.c
44
lib/ftp.c
@ -2125,8 +2125,8 @@ static CURLcode ftp_state_post_retr_size(struct connectdata *conn,
|
|||||||
if(data->state.resume_from< 0) {
|
if(data->state.resume_from< 0) {
|
||||||
/* We're supposed to download the last abs(from) bytes */
|
/* We're supposed to download the last abs(from) bytes */
|
||||||
if(filesize < -data->state.resume_from) {
|
if(filesize < -data->state.resume_from) {
|
||||||
failf(data, "Offset (%" CURL_FORMAT_CURL_OFF_T
|
failf(data, "Offset (%" FORMAT_OFF_T
|
||||||
") was beyond file size (%" CURL_FORMAT_CURL_OFF_T ")",
|
") was beyond file size (%" FORMAT_OFF_T ")",
|
||||||
data->state.resume_from, filesize);
|
data->state.resume_from, filesize);
|
||||||
return CURLE_BAD_DOWNLOAD_RESUME;
|
return CURLE_BAD_DOWNLOAD_RESUME;
|
||||||
}
|
}
|
||||||
@ -2137,8 +2137,8 @@ static CURLcode ftp_state_post_retr_size(struct connectdata *conn,
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if(filesize < data->state.resume_from) {
|
if(filesize < data->state.resume_from) {
|
||||||
failf(data, "Offset (%" CURL_FORMAT_CURL_OFF_T
|
failf(data, "Offset (%" FORMAT_OFF_T
|
||||||
") was beyond file size (%" CURL_FORMAT_CURL_OFF_T ")",
|
") was beyond file size (%" FORMAT_OFF_T ")",
|
||||||
data->state.resume_from, filesize);
|
data->state.resume_from, filesize);
|
||||||
return CURLE_BAD_DOWNLOAD_RESUME;
|
return CURLE_BAD_DOWNLOAD_RESUME;
|
||||||
}
|
}
|
||||||
@ -2160,10 +2160,10 @@ static CURLcode ftp_state_post_retr_size(struct connectdata *conn,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Set resume file transfer offset */
|
/* Set resume file transfer offset */
|
||||||
infof(data, "Instructs server to resume from offset %"
|
infof(data, "Instructs server to resume from offset %" FORMAT_OFF_T
|
||||||
CURL_FORMAT_CURL_OFF_T "\n", data->state.resume_from);
|
"\n", data->state.resume_from);
|
||||||
|
|
||||||
NBFTPSENDF(conn, "REST %" CURL_FORMAT_CURL_OFF_T, data->state.resume_from);
|
NBFTPSENDF(conn, "REST %" FORMAT_OFF_T, data->state.resume_from);
|
||||||
|
|
||||||
state(conn, FTP_RETR_REST);
|
state(conn, FTP_RETR_REST);
|
||||||
|
|
||||||
@ -2193,7 +2193,7 @@ static CURLcode ftp_state_size_resp(struct connectdata *conn,
|
|||||||
#ifdef CURL_FTP_HTTPSTYLE_HEAD
|
#ifdef CURL_FTP_HTTPSTYLE_HEAD
|
||||||
if(-1 != filesize) {
|
if(-1 != filesize) {
|
||||||
snprintf(buf, sizeof(data->state.buffer),
|
snprintf(buf, sizeof(data->state.buffer),
|
||||||
"Content-Length: %" CURL_FORMAT_CURL_OFF_T "\r\n", filesize);
|
"Content-Length: %" FORMAT_OFF_T "\r\n", filesize);
|
||||||
result = Curl_client_write(conn, CLIENTWRITE_BOTH, buf, 0);
|
result = Curl_client_write(conn, CLIENTWRITE_BOTH, buf, 0);
|
||||||
if(result)
|
if(result)
|
||||||
return result;
|
return result;
|
||||||
@ -2392,12 +2392,10 @@ static CURLcode ftp_state_get_resp(struct connectdata *conn,
|
|||||||
if(size > data->req.maxdownload && data->req.maxdownload > 0)
|
if(size > data->req.maxdownload && data->req.maxdownload > 0)
|
||||||
size = data->req.size = data->req.maxdownload;
|
size = data->req.size = data->req.maxdownload;
|
||||||
|
|
||||||
infof(data, "Maxdownload = %" CURL_FORMAT_CURL_OFF_T "\n",
|
infof(data, "Maxdownload = %" FORMAT_OFF_T "\n", data->req.maxdownload);
|
||||||
data->req.maxdownload);
|
|
||||||
|
|
||||||
if(instate != FTP_LIST)
|
if(instate != FTP_LIST)
|
||||||
infof(data, "Getting file with size: %" CURL_FORMAT_CURL_OFF_T "\n",
|
infof(data, "Getting file with size: %" FORMAT_OFF_T "\n", size);
|
||||||
size);
|
|
||||||
|
|
||||||
/* FTP download: */
|
/* FTP download: */
|
||||||
result=Curl_setup_transfer(conn, SECONDARYSOCKET, size, FALSE,
|
result=Curl_setup_transfer(conn, SECONDARYSOCKET, size, FALSE,
|
||||||
@ -3285,8 +3283,8 @@ static CURLcode ftp_done(struct connectdata *conn, CURLcode status,
|
|||||||
(data->set.infilesize != *ftp->bytecountp) &&
|
(data->set.infilesize != *ftp->bytecountp) &&
|
||||||
!data->set.crlf &&
|
!data->set.crlf &&
|
||||||
(ftp->transfer == FTPTRANSFER_BODY)) {
|
(ftp->transfer == FTPTRANSFER_BODY)) {
|
||||||
failf(data, "Uploaded unaligned file size (%" CURL_FORMAT_CURL_OFF_T
|
failf(data, "Uploaded unaligned file size (%" FORMAT_OFF_T
|
||||||
" out of %" CURL_FORMAT_CURL_OFF_T " bytes)",
|
" out of %" FORMAT_OFF_T " bytes)",
|
||||||
*ftp->bytecountp, data->set.infilesize);
|
*ftp->bytecountp, data->set.infilesize);
|
||||||
result = CURLE_PARTIAL_FILE;
|
result = CURLE_PARTIAL_FILE;
|
||||||
}
|
}
|
||||||
@ -3303,8 +3301,7 @@ static CURLcode ftp_done(struct connectdata *conn, CURLcode status,
|
|||||||
*ftp->bytecountp) &&
|
*ftp->bytecountp) &&
|
||||||
#endif /* CURL_DO_LINEEND_CONV */
|
#endif /* CURL_DO_LINEEND_CONV */
|
||||||
(data->req.maxdownload != *ftp->bytecountp)) {
|
(data->req.maxdownload != *ftp->bytecountp)) {
|
||||||
failf(data, "Received only partial file: %" CURL_FORMAT_CURL_OFF_T
|
failf(data, "Received only partial file: %" FORMAT_OFF_T " bytes",
|
||||||
" bytes",
|
|
||||||
*ftp->bytecountp);
|
*ftp->bytecountp);
|
||||||
result = CURLE_PARTIAL_FILE;
|
result = CURLE_PARTIAL_FILE;
|
||||||
}
|
}
|
||||||
@ -3452,8 +3449,7 @@ static CURLcode ftp_range(struct connectdata *conn)
|
|||||||
if((-1 == to) && (from>=0)) {
|
if((-1 == to) && (from>=0)) {
|
||||||
/* X - */
|
/* X - */
|
||||||
data->state.resume_from = from;
|
data->state.resume_from = from;
|
||||||
DEBUGF(infof(conn->data, "FTP RANGE %" CURL_FORMAT_CURL_OFF_T
|
DEBUGF(infof(conn->data, "FTP RANGE %" FORMAT_OFF_T " to end of file\n",
|
||||||
" to end of file\n",
|
|
||||||
from));
|
from));
|
||||||
}
|
}
|
||||||
else if(from < 0) {
|
else if(from < 0) {
|
||||||
@ -3461,8 +3457,7 @@ static CURLcode ftp_range(struct connectdata *conn)
|
|||||||
totalsize = -from;
|
totalsize = -from;
|
||||||
data->req.maxdownload = -from;
|
data->req.maxdownload = -from;
|
||||||
data->state.resume_from = from;
|
data->state.resume_from = from;
|
||||||
DEBUGF(infof(conn->data, "FTP RANGE the last %" CURL_FORMAT_CURL_OFF_T
|
DEBUGF(infof(conn->data, "FTP RANGE the last %" FORMAT_OFF_T " bytes\n",
|
||||||
" bytes\n",
|
|
||||||
totalsize));
|
totalsize));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@ -3470,13 +3465,12 @@ static CURLcode ftp_range(struct connectdata *conn)
|
|||||||
totalsize = to-from;
|
totalsize = to-from;
|
||||||
data->req.maxdownload = totalsize+1; /* include last byte */
|
data->req.maxdownload = totalsize+1; /* include last byte */
|
||||||
data->state.resume_from = from;
|
data->state.resume_from = from;
|
||||||
DEBUGF(infof(conn->data, "FTP RANGE from %" CURL_FORMAT_CURL_OFF_T
|
DEBUGF(infof(conn->data, "FTP RANGE from %" FORMAT_OFF_T
|
||||||
" getting %" CURL_FORMAT_CURL_OFF_T " bytes\n",
|
" getting %" FORMAT_OFF_T " bytes\n",
|
||||||
from, data->req.maxdownload));
|
from, data->req.maxdownload));
|
||||||
}
|
}
|
||||||
DEBUGF(infof(conn->data, "range-download from %" CURL_FORMAT_CURL_OFF_T
|
DEBUGF(infof(conn->data, "range-download from %" FORMAT_OFF_T
|
||||||
" to %" CURL_FORMAT_CURL_OFF_T
|
" to %" FORMAT_OFF_T ", totally %" FORMAT_OFF_T " bytes\n",
|
||||||
", totally %" CURL_FORMAT_CURL_OFF_T " bytes\n",
|
|
||||||
from, to, data->req.maxdownload));
|
from, to, data->req.maxdownload));
|
||||||
ftpc->dont_check = TRUE; /* dont check for successful transfer */
|
ftpc->dont_check = TRUE; /* dont check for successful transfer */
|
||||||
}
|
}
|
||||||
|
22
lib/http.c
22
lib/http.c
@ -398,7 +398,7 @@ CURLcode Curl_http_perhapsrewind(struct connectdata *conn)
|
|||||||
/* this is already marked to get closed */
|
/* this is already marked to get closed */
|
||||||
return CURLE_OK;
|
return CURLE_OK;
|
||||||
|
|
||||||
infof(data, "NTLM send, close instead of sending %" CURL_FORMAT_CURL_OFF_T
|
infof(data, "NTLM send, close instead of sending %" FORMAT_OFF_T
|
||||||
" bytes\n", (curl_off_t)(expectsend - bytessent));
|
" bytes\n", (curl_off_t)(expectsend - bytessent));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1576,7 +1576,7 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
|
|||||||
|
|
||||||
if(cl) {
|
if(cl) {
|
||||||
|
|
||||||
infof(data, "Ignore %" CURL_FORMAT_CURL_OFF_T
|
infof(data, "Ignore %" FORMAT_OFF_T
|
||||||
" bytes of response-body\n", cl);
|
" bytes of response-body\n", cl);
|
||||||
/* remove the remaining chunk of what we already
|
/* remove the remaining chunk of what we already
|
||||||
read */
|
read */
|
||||||
@ -2337,7 +2337,7 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
|
|||||||
|
|
||||||
passed += actuallyread;
|
passed += actuallyread;
|
||||||
if(actuallyread != readthisamountnow) {
|
if(actuallyread != readthisamountnow) {
|
||||||
failf(data, "Could only read %" CURL_FORMAT_CURL_OFF_T
|
failf(data, "Could only read %" FORMAT_OFF_T
|
||||||
" bytes from the input",
|
" bytes from the input",
|
||||||
passed);
|
passed);
|
||||||
return CURLE_READ_ERROR;
|
return CURLE_READ_ERROR;
|
||||||
@ -2383,8 +2383,8 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
|
|||||||
remote part so we tell the server (and act accordingly) that we
|
remote part so we tell the server (and act accordingly) that we
|
||||||
upload the whole file (again) */
|
upload the whole file (again) */
|
||||||
conn->allocptr.rangeline =
|
conn->allocptr.rangeline =
|
||||||
aprintf("Content-Range: bytes 0-%" CURL_FORMAT_CURL_OFF_T
|
aprintf("Content-Range: bytes 0-%" FORMAT_OFF_T
|
||||||
"/%" CURL_FORMAT_CURL_OFF_T "\r\n",
|
"/%" FORMAT_OFF_T "\r\n",
|
||||||
data->set.infilesize - 1, data->set.infilesize);
|
data->set.infilesize - 1, data->set.infilesize);
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -2393,8 +2393,8 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
|
|||||||
curl_off_t total_expected_size=
|
curl_off_t total_expected_size=
|
||||||
data->state.resume_from + data->set.infilesize;
|
data->state.resume_from + data->set.infilesize;
|
||||||
conn->allocptr.rangeline =
|
conn->allocptr.rangeline =
|
||||||
aprintf("Content-Range: bytes %s%" CURL_FORMAT_CURL_OFF_T
|
aprintf("Content-Range: bytes %s%" FORMAT_OFF_T
|
||||||
"/%" CURL_FORMAT_CURL_OFF_T "\r\n",
|
"/%" FORMAT_OFF_T "\r\n",
|
||||||
data->state.range, total_expected_size-1,
|
data->state.range, total_expected_size-1,
|
||||||
total_expected_size);
|
total_expected_size);
|
||||||
}
|
}
|
||||||
@ -2402,7 +2402,7 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
|
|||||||
/* Range was selected and then we just pass the incoming range and
|
/* Range was selected and then we just pass the incoming range and
|
||||||
append total size */
|
append total size */
|
||||||
conn->allocptr.rangeline =
|
conn->allocptr.rangeline =
|
||||||
aprintf("Content-Range: bytes %s/%" CURL_FORMAT_CURL_OFF_T "\r\n",
|
aprintf("Content-Range: bytes %s/%" FORMAT_OFF_T "\r\n",
|
||||||
data->state.range, data->set.infilesize);
|
data->state.range, data->set.infilesize);
|
||||||
}
|
}
|
||||||
if(!conn->allocptr.rangeline)
|
if(!conn->allocptr.rangeline)
|
||||||
@ -2629,7 +2629,7 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
|
|||||||
if(!data->req.upload_chunky) {
|
if(!data->req.upload_chunky) {
|
||||||
/* only add Content-Length if not uploading chunked */
|
/* only add Content-Length if not uploading chunked */
|
||||||
result = add_bufferf(req_buffer,
|
result = add_bufferf(req_buffer,
|
||||||
"Content-Length: %" CURL_FORMAT_CURL_OFF_T "\r\n",
|
"Content-Length: %" FORMAT_OFF_T "\r\n",
|
||||||
http->postsize);
|
http->postsize);
|
||||||
if(result)
|
if(result)
|
||||||
return result;
|
return result;
|
||||||
@ -2701,7 +2701,7 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
|
|||||||
if((postsize != -1) && !data->req.upload_chunky) {
|
if((postsize != -1) && !data->req.upload_chunky) {
|
||||||
/* only add Content-Length if not uploading chunked */
|
/* only add Content-Length if not uploading chunked */
|
||||||
result = add_bufferf(req_buffer,
|
result = add_bufferf(req_buffer,
|
||||||
"Content-Length: %" CURL_FORMAT_CURL_OFF_T "\r\n",
|
"Content-Length: %" FORMAT_OFF_T "\r\n",
|
||||||
postsize );
|
postsize );
|
||||||
if(result)
|
if(result)
|
||||||
return result;
|
return result;
|
||||||
@ -2753,7 +2753,7 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
|
|||||||
/* we allow replacing this header, although it isn't very wise to
|
/* we allow replacing this header, although it isn't very wise to
|
||||||
actually set your own */
|
actually set your own */
|
||||||
result = add_bufferf(req_buffer,
|
result = add_bufferf(req_buffer,
|
||||||
"Content-Length: %" CURL_FORMAT_CURL_OFF_T "\r\n",
|
"Content-Length: %" FORMAT_OFF_T"\r\n",
|
||||||
postsize);
|
postsize);
|
||||||
if(result)
|
if(result)
|
||||||
return result;
|
return result;
|
||||||
|
@ -67,40 +67,40 @@ static char *max5data(curl_off_t bytes, char *max5)
|
|||||||
#define ONE_PETABYTE (CURL_OFF_T_C(1024) * ONE_TERABYTE)
|
#define ONE_PETABYTE (CURL_OFF_T_C(1024) * ONE_TERABYTE)
|
||||||
|
|
||||||
if(bytes < CURL_OFF_T_C(100000))
|
if(bytes < CURL_OFF_T_C(100000))
|
||||||
snprintf(max5, 6, "%5" CURL_FORMAT_CURL_OFF_T, bytes);
|
snprintf(max5, 6, "%5" FORMAT_OFF_T, bytes);
|
||||||
|
|
||||||
else if(bytes < CURL_OFF_T_C(10000) * ONE_KILOBYTE)
|
else if(bytes < CURL_OFF_T_C(10000) * ONE_KILOBYTE)
|
||||||
snprintf(max5, 6, "%4" CURL_FORMAT_CURL_OFF_T "k", bytes/ONE_KILOBYTE);
|
snprintf(max5, 6, "%4" FORMAT_OFF_T "k", bytes/ONE_KILOBYTE);
|
||||||
|
|
||||||
else if(bytes < CURL_OFF_T_C(100) * ONE_MEGABYTE)
|
else if(bytes < CURL_OFF_T_C(100) * ONE_MEGABYTE)
|
||||||
/* 'XX.XM' is good as long as we're less than 100 megs */
|
/* 'XX.XM' is good as long as we're less than 100 megs */
|
||||||
snprintf(max5, 6, "%2" CURL_FORMAT_CURL_OFF_T ".%0"
|
snprintf(max5, 6, "%2" FORMAT_OFF_T ".%0" FORMAT_OFF_T "M",
|
||||||
CURL_FORMAT_CURL_OFF_T "M", bytes/ONE_MEGABYTE,
|
bytes/ONE_MEGABYTE,
|
||||||
(bytes%ONE_MEGABYTE) / (ONE_MEGABYTE/CURL_OFF_T_C(10)) );
|
(bytes%ONE_MEGABYTE) / (ONE_MEGABYTE/CURL_OFF_T_C(10)) );
|
||||||
|
|
||||||
#if CURL_SIZEOF_CURL_OFF_T > 4
|
#if CURL_SIZEOF_CURL_OFF_T > 4
|
||||||
|
|
||||||
else if(bytes < CURL_OFF_T_C(10000) * ONE_MEGABYTE)
|
else if(bytes < CURL_OFF_T_C(10000) * ONE_MEGABYTE)
|
||||||
/* 'XXXXM' is good until we're at 10000MB or above */
|
/* 'XXXXM' is good until we're at 10000MB or above */
|
||||||
snprintf(max5, 6, "%4" CURL_FORMAT_CURL_OFF_T "M", bytes/ONE_MEGABYTE);
|
snprintf(max5, 6, "%4" FORMAT_OFF_T "M", bytes/ONE_MEGABYTE);
|
||||||
|
|
||||||
else if(bytes < CURL_OFF_T_C(100) * ONE_GIGABYTE)
|
else if(bytes < CURL_OFF_T_C(100) * ONE_GIGABYTE)
|
||||||
/* 10000 MB - 100 GB, we show it as XX.XG */
|
/* 10000 MB - 100 GB, we show it as XX.XG */
|
||||||
snprintf(max5, 6, "%2" CURL_FORMAT_CURL_OFF_T ".%0"
|
snprintf(max5, 6, "%2" FORMAT_OFF_T ".%0" FORMAT_OFF_T "G",
|
||||||
CURL_FORMAT_CURL_OFF_T "G", bytes/ONE_GIGABYTE,
|
bytes/ONE_GIGABYTE,
|
||||||
(bytes%ONE_GIGABYTE) / (ONE_GIGABYTE/CURL_OFF_T_C(10)) );
|
(bytes%ONE_GIGABYTE) / (ONE_GIGABYTE/CURL_OFF_T_C(10)) );
|
||||||
|
|
||||||
else if(bytes < CURL_OFF_T_C(10000) * ONE_GIGABYTE)
|
else if(bytes < CURL_OFF_T_C(10000) * ONE_GIGABYTE)
|
||||||
/* up to 10000GB, display without decimal: XXXXG */
|
/* up to 10000GB, display without decimal: XXXXG */
|
||||||
snprintf(max5, 6, "%4" CURL_FORMAT_CURL_OFF_T "G", bytes/ONE_GIGABYTE);
|
snprintf(max5, 6, "%4" FORMAT_OFF_T "G", bytes/ONE_GIGABYTE);
|
||||||
|
|
||||||
else if(bytes < CURL_OFF_T_C(10000) * ONE_TERABYTE)
|
else if(bytes < CURL_OFF_T_C(10000) * ONE_TERABYTE)
|
||||||
/* up to 10000TB, display without decimal: XXXXT */
|
/* up to 10000TB, display without decimal: XXXXT */
|
||||||
snprintf(max5, 6, "%4" CURL_FORMAT_CURL_OFF_T "T", bytes/ONE_TERABYTE);
|
snprintf(max5, 6, "%4" FORMAT_OFF_T "T", bytes/ONE_TERABYTE);
|
||||||
|
|
||||||
else
|
else
|
||||||
/* up to 10000PB, display without decimal: XXXXP */
|
/* up to 10000PB, display without decimal: XXXXP */
|
||||||
snprintf(max5, 6, "%4" CURL_FORMAT_CURL_OFF_T "P", bytes/ONE_PETABYTE);
|
snprintf(max5, 6, "%4" FORMAT_OFF_T "P", bytes/ONE_PETABYTE);
|
||||||
|
|
||||||
/* 16384 petabytes (16 exabytes) is the maximum a 64 bit unsigned number
|
/* 16384 petabytes (16 exabytes) is the maximum a 64 bit unsigned number
|
||||||
can hold, but our data type is signed so 8192PB will be the maximum. */
|
can hold, but our data type is signed so 8192PB will be the maximum. */
|
||||||
@ -108,7 +108,7 @@ static char *max5data(curl_off_t bytes, char *max5)
|
|||||||
#else
|
#else
|
||||||
|
|
||||||
else
|
else
|
||||||
snprintf(max5, 6, "%4" CURL_FORMAT_CURL_OFF_T "M", bytes/ONE_MEGABYTE);
|
snprintf(max5, 6, "%4" FORMAT_OFF_T "M", bytes/ONE_MEGABYTE);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -357,8 +357,8 @@ int Curl_pgrsUpdate(struct connectdata *conn)
|
|||||||
if(!(data->progress.flags & PGRS_HEADERS_OUT)) {
|
if(!(data->progress.flags & PGRS_HEADERS_OUT)) {
|
||||||
if(data->state.resume_from) {
|
if(data->state.resume_from) {
|
||||||
fprintf(data->set.err,
|
fprintf(data->set.err,
|
||||||
"** Resuming transfer from byte position %"
|
"** Resuming transfer from byte position %" FORMAT_OFF_T "\n",
|
||||||
CURL_FORMAT_CURL_OFF_T "\n", data->state.resume_from);
|
data->state.resume_from);
|
||||||
}
|
}
|
||||||
fprintf(data->set.err,
|
fprintf(data->set.err,
|
||||||
" %% Total %% Received %% Xferd Average Speed Time Time Time Current\n"
|
" %% Total %% Received %% Xferd Average Speed Time Time Time Current\n"
|
||||||
|
29
lib/setup.h
29
lib/setup.h
@ -121,21 +121,32 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Ensure that no one is using the old internal FORMAT_OFF_T macro
|
* Set up internal curl_off_t formatting string directives for
|
||||||
|
* exclusive use with libcurl's internal *printf functions.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef FORMAT_OFF_T
|
#ifdef FORMAT_OFF_T
|
||||||
# error "FORMAT_OFF_T shall not be defined!"
|
# error "FORMAT_OFF_T shall not be defined before this point!"
|
||||||
Error Compilation_aborted_FORMAT_OFF_T_shall_not_be_defined
|
Error Compilation_aborted_FORMAT_OFF_T_already_defined
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
|
||||||
* Ensure that no one is using the old internal FORMAT_OFF_TU macro
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifdef FORMAT_OFF_TU
|
#ifdef FORMAT_OFF_TU
|
||||||
# error "FORMAT_OFF_TU shall not be defined!"
|
# error "FORMAT_OFF_TU shall not be defined before this point!"
|
||||||
Error Compilation_aborted_FORMAT_OFF_TU_shall_not_be_defined
|
Error Compilation_aborted_FORMAT_OFF_TU_already_defined
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if (CURL_SIZEOF_CURL_OFF_T > 4)
|
||||||
|
# if (CURL_SIZEOF_LONG > 4)
|
||||||
|
# define FORMAT_OFF_T "ld"
|
||||||
|
# else
|
||||||
|
# define FORMAT_OFF_T "lld"
|
||||||
|
# endif
|
||||||
|
#else
|
||||||
|
# if (CURL_SIZEOF_LONG > 2)
|
||||||
|
# define FORMAT_OFF_T "ld"
|
||||||
|
# else
|
||||||
|
# define FORMAT_OFF_T "lld"
|
||||||
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -1647,8 +1647,8 @@ static CURLcode ssh_statemach_act(struct connectdata *conn)
|
|||||||
if(data->state.resume_from< 0) {
|
if(data->state.resume_from< 0) {
|
||||||
/* We're supposed to download the last abs(from) bytes */
|
/* We're supposed to download the last abs(from) bytes */
|
||||||
if((curl_off_t)attrs.filesize < -data->state.resume_from) {
|
if((curl_off_t)attrs.filesize < -data->state.resume_from) {
|
||||||
failf(data, "Offset (%" CURL_FORMAT_CURL_OFF_T
|
failf(data, "Offset (%"
|
||||||
") was beyond file size (%" CURL_FORMAT_CURL_OFF_T ")",
|
FORMAT_OFF_T ") was beyond file size (%" FORMAT_OFF_T ")",
|
||||||
data->state.resume_from, attrs.filesize);
|
data->state.resume_from, attrs.filesize);
|
||||||
return CURLE_BAD_DOWNLOAD_RESUME;
|
return CURLE_BAD_DOWNLOAD_RESUME;
|
||||||
}
|
}
|
||||||
@ -1657,8 +1657,8 @@ static CURLcode ssh_statemach_act(struct connectdata *conn)
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if((curl_off_t)attrs.filesize < data->state.resume_from) {
|
if((curl_off_t)attrs.filesize < data->state.resume_from) {
|
||||||
failf(data, "Offset (%" CURL_FORMAT_CURL_OFF_T
|
failf(data, "Offset (%" FORMAT_OFF_T
|
||||||
") was beyond file size (%" CURL_FORMAT_CURL_OFF_T ")",
|
") was beyond file size (%" FORMAT_OFF_T ")",
|
||||||
data->state.resume_from, attrs.filesize);
|
data->state.resume_from, attrs.filesize);
|
||||||
return CURLE_BAD_DOWNLOAD_RESUME;
|
return CURLE_BAD_DOWNLOAD_RESUME;
|
||||||
}
|
}
|
||||||
|
@ -567,9 +567,9 @@ static CURLcode readwrite_data(struct SessionHandle *data,
|
|||||||
if(excess > 0 && !k->ignorebody) {
|
if(excess > 0 && !k->ignorebody) {
|
||||||
infof(data,
|
infof(data,
|
||||||
"Rewinding stream by : %d"
|
"Rewinding stream by : %d"
|
||||||
" bytes on url %s (size = %" CURL_FORMAT_CURL_OFF_T
|
" bytes on url %s (size = %" FORMAT_OFF_T
|
||||||
", maxdownload = %" CURL_FORMAT_CURL_OFF_T
|
", maxdownload = %" FORMAT_OFF_T
|
||||||
", bytecount = %" CURL_FORMAT_CURL_OFF_T ", nread = %d)\n",
|
", bytecount = %" FORMAT_OFF_T ", nread = %d)\n",
|
||||||
excess, data->state.path,
|
excess, data->state.path,
|
||||||
k->size, k->maxdownload, k->bytecount, nread);
|
k->size, k->maxdownload, k->bytecount, nread);
|
||||||
read_rewind(conn, excess);
|
read_rewind(conn, excess);
|
||||||
@ -1135,7 +1135,7 @@ static CURLcode readwrite_headers(struct SessionHandle *data,
|
|||||||
happens for example when older Apache servers send large
|
happens for example when older Apache servers send large
|
||||||
files */
|
files */
|
||||||
conn->bits.close = TRUE;
|
conn->bits.close = TRUE;
|
||||||
infof(data, "Negative content-length: %" CURL_FORMAT_CURL_OFF_T
|
infof(data, "Negative content-length: %" FORMAT_OFF_T
|
||||||
", closing after transfer\n", contentlength);
|
", closing after transfer\n", contentlength);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1647,12 +1647,11 @@ CURLcode Curl_readwrite(struct connectdata *conn,
|
|||||||
(Curl_tvdiff(k->now, k->start) >= data->set.timeout)) {
|
(Curl_tvdiff(k->now, k->start) >= data->set.timeout)) {
|
||||||
if(k->size != -1) {
|
if(k->size != -1) {
|
||||||
failf(data, "Operation timed out after %ld milliseconds with %"
|
failf(data, "Operation timed out after %ld milliseconds with %"
|
||||||
CURL_FORMAT_CURL_OFF_T " out of %"
|
FORMAT_OFF_T " out of %" FORMAT_OFF_T " bytes received",
|
||||||
CURL_FORMAT_CURL_OFF_T " bytes received",
|
|
||||||
data->set.timeout, k->bytecount, k->size);
|
data->set.timeout, k->bytecount, k->size);
|
||||||
} else {
|
} else {
|
||||||
failf(data, "Operation timed out after %ld milliseconds with %"
|
failf(data, "Operation timed out after %ld milliseconds with %"
|
||||||
CURL_FORMAT_CURL_OFF_T " bytes received",
|
FORMAT_OFF_T " bytes received",
|
||||||
data->set.timeout, k->bytecount);
|
data->set.timeout, k->bytecount);
|
||||||
}
|
}
|
||||||
return CURLE_OPERATION_TIMEDOUT;
|
return CURLE_OPERATION_TIMEDOUT;
|
||||||
@ -1674,7 +1673,7 @@ CURLcode Curl_readwrite(struct connectdata *conn,
|
|||||||
(k->bytecount != (k->size + data->state.crlf_conversions)) &&
|
(k->bytecount != (k->size + data->state.crlf_conversions)) &&
|
||||||
#endif /* CURL_DO_LINEEND_CONV */
|
#endif /* CURL_DO_LINEEND_CONV */
|
||||||
!data->req.newurl) {
|
!data->req.newurl) {
|
||||||
failf(data, "transfer closed with %" CURL_FORMAT_CURL_OFF_T
|
failf(data, "transfer closed with %" FORMAT_OFF_T
|
||||||
" bytes remaining to read",
|
" bytes remaining to read",
|
||||||
k->size - k->bytecount);
|
k->size - k->bytecount);
|
||||||
return CURLE_PARTIAL_FILE;
|
return CURLE_PARTIAL_FILE;
|
||||||
|
@ -3185,7 +3185,7 @@ static CURLcode setup_range(struct SessionHandle *data)
|
|||||||
free(s->range);
|
free(s->range);
|
||||||
|
|
||||||
if(s->resume_from)
|
if(s->resume_from)
|
||||||
s->range = aprintf("%" CURL_FORMAT_CURL_OFF_TU "-", s->resume_from);
|
s->range = aprintf("%" FORMAT_OFF_TU "-", s->resume_from);
|
||||||
else
|
else
|
||||||
s->range = strdup(data->set.str[STRING_SET_RANGE]);
|
s->range = strdup(data->set.str[STRING_SET_RANGE]);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user