Yet another curl_off_t printf format attempt, we now exclude the %-letter from

FORMAT_OFF_T to allow additional options to get specified, like with '"%5"
FORMAT_OFF_T'.
This commit is contained in:
Daniel Stenberg 2004-03-02 09:31:18 +00:00
Родитель 9f437269fb
Коммит 353f764119
7 изменённых файлов: 38 добавлений и 34 удалений

Просмотреть файл

@ -191,7 +191,7 @@ CURLcode Curl_file(struct connectdata *conn)
date. */
if(data->set.no_body && data->set.include_header && fstated) {
CURLcode result;
sprintf(buf, "Content-Length: " FORMAT_OFF_T "\r\n", expected_size);
sprintf(buf, "Content-Length: %" FORMAT_OFF_T "\r\n", expected_size);
result = Curl_client_write(data, CLIENTWRITE_BOTH, buf, 0);
if(result)
return result;

Просмотреть файл

@ -732,7 +732,8 @@ CURLcode Curl_ftp_done(struct connectdata *conn)
if((-1 != data->set.infilesize) &&
(data->set.infilesize != *ftp->bytecountp) &&
!data->set.crlf) {
failf(data, "Uploaded unaligned file size (" FORMAT_OFF_T " out of " FORMAT_OFF_T " bytes)",
failf(data, "Uploaded unaligned file size (%" FORMAT_OFF_T
" out of %" FORMAT_OFF_T " bytes)",
*ftp->bytecountp, data->set.infilesize);
conn->bits.close = TRUE; /* close this connection since we don't
know what state this error leaves us in */
@ -742,7 +743,7 @@ CURLcode Curl_ftp_done(struct connectdata *conn)
else {
if((-1 != conn->size) && (conn->size != *ftp->bytecountp) &&
(conn->maxdownload != *ftp->bytecountp)) {
failf(data, "Received only partial file: " FORMAT_OFF_T " bytes",
failf(data, "Received only partial file: %" FORMAT_OFF_T " bytes",
*ftp->bytecountp);
conn->bits.close = TRUE; /* close this connection since we don't
know what state this error leaves us in */
@ -1751,8 +1752,8 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
passed += actuallyread;
if(actuallyread != readthisamountnow) {
failf(data, "Could only read " FORMAT_OFF_T " bytes from the input",
passed);
failf(data, "Could only read %" FORMAT_OFF_T
" bytes from the input", passed);
return CURLE_FTP_COULDNT_USE_REST;
}
}
@ -1849,24 +1850,25 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
if((-1 == to) && (from>=0)) {
/* X - */
conn->resume_from = from;
infof(data, "FTP RANGE " FORMAT_OFF_T " to end of file\n", from);
infof(data, "FTP RANGE %" FORMAT_OFF_T " to end of file\n", from);
}
else if(from < 0) {
/* -Y */
totalsize = -from;
conn->maxdownload = -from;
conn->resume_from = from;
infof(data, "FTP RANGE the last " FORMAT_OFF_T " bytes\n", totalsize);
infof(data, "FTP RANGE the last %" FORMAT_OFF_T " bytes\n", totalsize);
}
else {
/* X-Y */
totalsize = to-from;
conn->maxdownload = totalsize+1; /* include the last mentioned byte */
conn->resume_from = from;
infof(data, "FTP RANGE from " FORMAT_OFF_T " getting " FORMAT_OFF_T " bytes\n", from,
conn->maxdownload);
infof(data, "FTP RANGE from %" FORMAT_OFF_T
" getting %" FORMAT_OFF_T " bytes\n", from, conn->maxdownload);
}
infof(data, "range-download from " FORMAT_OFF_T " to " FORMAT_OFF_T ", totally " FORMAT_OFF_T " bytes\n",
infof(data, "range-download from %" FORMAT_OFF_T
" to %" FORMAT_OFF_T ", totally %" FORMAT_OFF_T " bytes\n",
from, to, conn->maxdownload);
ftp->dont_check = TRUE; /* dont check for successful transfer */
}
@ -1941,7 +1943,8 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
if(conn->resume_from< 0) {
/* We're supposed to download the last abs(from) bytes */
if(foundsize < -conn->resume_from) {
failf(data, "Offset (" FORMAT_OFF_T ") was beyond file size (" FORMAT_OFF_T ")",
failf(data, "Offset (%" FORMAT_OFF_T
") was beyond file size (%" FORMAT_OFF_T ")",
conn->resume_from, foundsize);
return CURLE_FTP_BAD_DOWNLOAD_RESUME;
}
@ -1952,7 +1955,8 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
}
else {
if(foundsize < conn->resume_from) {
failf(data, "Offset (" FORMAT_OFF_T ") was beyond file size (" FORMAT_OFF_T ")",
failf(data, "Offset (%" FORMAT_OFF_T
") was beyond file size (%" FORMAT_OFF_T ")",
conn->resume_from, foundsize);
return CURLE_FTP_BAD_DOWNLOAD_RESUME;
}
@ -1973,10 +1977,11 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
}
/* Set resume file transfer offset */
infof(data, "Instructs server to resume from offset " FORMAT_OFF_T "\n",
infof(data, "Instructs server to resume from offset %" FORMAT_OFF_T
"\n",
conn->resume_from);
FTPSENDF(conn, "REST " FORMAT_OFF_T "", conn->resume_from);
FTPSENDF(conn, "REST %" FORMAT_OFF_T, conn->resume_from);
result = Curl_GetFTPResponse(&nread, conn, &ftpcode);
if(result)
@ -2082,7 +2087,7 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
if(size > conn->maxdownload && conn->maxdownload > 0)
size = conn->size = conn->maxdownload;
infof(data, "Getting file with size: " FORMAT_OFF_T "\n", size);
infof(data, "Getting file with size: %" FORMAT_OFF_T "\n", size);
/* FTP download: */
result=Curl_Transfer(conn, SECONDARYSOCKET, size, FALSE,
@ -2214,7 +2219,7 @@ CURLcode ftp_perform(struct connectdata *conn,
result = ftp_getsize(conn, ftp->file, &filesize);
if(CURLE_OK == result) {
sprintf(buf, "Content-Length: " FORMAT_OFF_T "\r\n", filesize);
sprintf(buf, "Content-Length: %" FORMAT_OFF_T "\r\n", filesize);
result = Curl_client_write(data, CLIENTWRITE_BOTH, buf, 0);
if(result)
return result;

Просмотреть файл

@ -1272,7 +1272,7 @@ CURLcode Curl_http(struct connectdata *conn)
passed += actuallyread;
if(actuallyread != readthisamountnow) {
failf(data, "Could only read " FORMAT_OFF_T
failf(data, "Could only read %" FORMAT_OFF_T
" bytes from the input",
passed);
return CURLE_READ_ERROR;
@ -1312,8 +1312,8 @@ CURLcode Curl_http(struct connectdata *conn)
curl_off_t total_expected_size=
conn->resume_from + data->set.infilesize;
conn->allocptr.rangeline =
aprintf("Content-Range: bytes %s" FORMAT_OFF_T "/"
FORMAT_OFF_T "\r\n",
aprintf("Content-Range: bytes %s%" FORMAT_OFF_T
"/%" FORMAT_OFF_T "\r\n",
conn->range, total_expected_size-1,
total_expected_size);
}
@ -1321,7 +1321,7 @@ CURLcode Curl_http(struct connectdata *conn)
/* Range was selected and then we just pass the incoming range and
append total size */
conn->allocptr.rangeline =
aprintf("Content-Range: bytes %s/" FORMAT_OFF_T "\r\n",
aprintf("Content-Range: bytes %s/%" FORMAT_OFF_T "\r\n",
conn->range, data->set.infilesize);
}
}
@ -1551,7 +1551,7 @@ CURLcode Curl_http(struct connectdata *conn)
if((data->set.infilesize>0) && !conn->bits.upload_chunky)
/* only add Content-Length if not uploading chunked */
add_bufferf(req_buffer,
"Content-Length: " FORMAT_OFF_T "\r\n", /* size */
"Content-Length: %" FORMAT_OFF_T "\r\n", /* size */
data->set.infilesize );
add_bufferf(req_buffer, "\r\n");

Просмотреть файл

@ -60,11 +60,11 @@ static char *max5data(double bytes, char *max5)
#define ONE_GIGABYTE (1024*1024*1024)
if(bytes < 100000) {
sprintf(max5, "%5Od", (curl_off_t)bytes);
sprintf(max5, "%5" FORMAT_OFF_T, (curl_off_t)bytes);
return max5;
}
if(bytes < (10000*ONE_KILOBYTE)) {
sprintf(max5, "%4Odk", (curl_off_t)bytes/ONE_KILOBYTE);
sprintf(max5, "%4" FORMAT_OFF_T "k", (curl_off_t)bytes/ONE_KILOBYTE);
return max5;
}
if(bytes < (100*ONE_MEGABYTE)) {
@ -74,13 +74,13 @@ static char *max5data(double bytes, char *max5)
}
#if SIZEOF_CURL_OFF_T > 4
if((curl_off_t)bytes < ((curl_off_t)10000*ONE_MEGABYTE)) {
sprintf(max5, "%4OdM", (curl_off_t)bytes/ONE_MEGABYTE);
sprintf(max5, "%4" FORMAT_OFF_T "M", (curl_off_t)bytes/ONE_MEGABYTE);
return max5;
}
/* 10000 MB - 8589934587 GB !! */
sprintf(max5, "%4.1fG", bytes/ONE_GIGABYTE);
#else
sprintf(max5, "%4OdM", (curl_off_t)bytes/ONE_MEGABYTE);
sprintf(max5, "%4" FORMAT_OFF_T "M", (curl_off_t)bytes/ONE_MEGABYTE);
#endif
return max5;
@ -240,7 +240,7 @@ int Curl_pgrsUpdate(struct connectdata *conn)
if (!data->progress.callback) {
if(conn->resume_from)
fprintf(data->set.err,
"** Resuming transfer from byte position " FORMAT_OFF_T
"** Resuming transfer from byte position %" FORMAT_OFF_T
"\n",
conn->resume_from);
fprintf(data->set.err,

Просмотреть файл

@ -82,12 +82,11 @@ typedef unsigned char bool;
/* We set up our internal prefered (CURL_)FORMAT_OFF_T here */
#if defined(SIZEOF_CURL_OFF_T) && (SIZEOF_CURL_OFF_T > 4)
#define FORMAT_OFF_T "%lld"
#define FORMAT_OFF_T "lld"
#else
#define FORMAT_OFF_T "%ld"
#define FORMAT_OFF_T "ld"
#endif
#ifdef NEED_REENTRANT
/* Solaris machines needs _REENTRANT set for a few function prototypes and
things to appear in the #include files. We need to #define it before all

Просмотреть файл

@ -1240,8 +1240,8 @@ CURLcode Curl_readwrite(struct connectdata *conn,
if (data->set.timeout &&
((Curl_tvdiff(k->now, k->start)/1000) >= data->set.timeout)) {
failf (data, "Operation timed out with " FORMAT_OFF_T " out of "
FORMAT_OFF_T " bytes received",
failf (data, "Operation timed out with %" FORMAT_OFF_T
" out of %" FORMAT_OFF_T " bytes received",
k->bytecount, conn->size);
return CURLE_OPERATION_TIMEOUTED;
}
@ -1255,7 +1255,7 @@ CURLcode Curl_readwrite(struct connectdata *conn,
if(!(data->set.no_body) && (conn->size != -1) &&
(k->bytecount != conn->size) &&
!conn->newurl) {
failf(data, "transfer closed with " FORMAT_OFF_T
failf(data, "transfer closed with %" FORMAT_OFF_T
" bytes remaining to read",
conn->size - k->bytecount);
return CURLE_PARTIAL_FILE;

Просмотреть файл

@ -2411,7 +2411,7 @@ static CURLcode CreateConnection(struct SessionHandle *data,
if(conn->resume_from) {
if(!conn->bits.use_range) {
/* if it already was in use, we just skip this */
snprintf(resumerange, sizeof(resumerange), FORMAT_OFF_T "-",
snprintf(resumerange, sizeof(resumerange), "%" FORMAT_OFF_T "-",
conn->resume_from);
conn->range=strdup(resumerange); /* tell ourselves to fetch this range */
conn->bits.rangestringalloc = TRUE; /* mark as allocated */
@ -2941,7 +2941,7 @@ static CURLcode CreateConnection(struct SessionHandle *data,
*/
conn->resume_from = data->set.set_resume_from;
if (conn->resume_from) {
snprintf(resumerange, sizeof(resumerange), FORMAT_OFF_T "-",
snprintf(resumerange, sizeof(resumerange), "%" FORMAT_OFF_T "-",
conn->resume_from);
if (conn->bits.rangestringalloc == TRUE)
free(conn->range);