]> granicus.if.org Git - curl/commitdiff
use curl_off_t instead of off_t!
authorDaniel Stenberg <daniel@haxx.se>
Thu, 22 Jan 2004 12:45:50 +0000 (12:45 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Thu, 22 Jan 2004 12:45:50 +0000 (12:45 +0000)
13 files changed:
lib/config-amigaos.h
lib/dict.c
lib/easy.c
lib/file.c
lib/ftp.c
lib/http.c
lib/mprintf.c
lib/setup.h
lib/strtoofft.h
lib/transfer.c
lib/transfer.h
lib/url.c
lib/urldata.h

index f0fa83e2fbea599e8aefb0ca7e057e66657ce017..5d617fe16575e8dc3986964cd447d579a96ce20b 100644 (file)
@@ -69,7 +69,7 @@
 #define SELECT_TYPE_ARG1 int
 #define SELECT_TYPE_ARG234 (fd_set *)
 #define SELECT_TYPE_ARG5 (struct timeval *)
-#define SIZEOF_OFF_T 4
+#define SIZEOF_CURL_OFF_T 4
 
 #define STDC_HEADERS 1
 #define TIME_WITH_SYS_TIME 1
index af3298327e7dd4c12f193261b140f5ce8dfd3d65..62d6298214988a8df846cea384b12b7cb9fec0ad 100644 (file)
@@ -92,7 +92,7 @@ CURLcode Curl_dict(struct connectdata *conn)
   int sockfd = conn->sock[FIRSTSOCKET];
 
   char *path = conn->path;
-  off_t *bytecount = &conn->bytecount;
+  curl_off_t *bytecount = &conn->bytecount;
 
   if(conn->bits.user_passwd) {
     /* AUTH is missing */
index ce83238d63bb65f28e6a80c3f45e74692885252f..5ecd10575723d63307af704abc72bb4dc465cf6e 100644 (file)
@@ -211,7 +211,7 @@ CURLcode curl_easy_setopt(CURL *curl, CURLoption tag, ...)
   func_T param_func = (func_T)0;
   long param_long = 0;
   void *param_obj = NULL;
-  off_t param_offset = 0;
+  curl_off_t param_offset = 0;
   struct SessionHandle *data = curl;
   CURLcode ret=CURLE_FAILED_INIT;
 
@@ -239,8 +239,8 @@ CURLcode curl_easy_setopt(CURL *curl, CURLoption tag, ...)
     param_func = va_arg(arg, func_T );
     ret = Curl_setopt(data, tag, param_func);
   } else {
-    /* This is aoff_t type */
-    param_offset = va_arg(arg, off_t);
+    /* This is a curl_off_t type */
+    param_offset = va_arg(arg, curl_off_t);
     ret = Curl_setopt(data, tag, param_offset);
   }
 
index 93b7977e2ed687821ebc9ef04ceae53b266635e1..2bf544add7691cc0a2050d6454fbb212db94431d 100644 (file)
@@ -163,12 +163,12 @@ CURLcode Curl_file(struct connectdata *conn)
   */
   CURLcode res = CURLE_OK;
   struct stat statbuf;
-  off_t expected_size=0;
+  curl_off_t expected_size=0;
   bool fstated=FALSE;
   ssize_t nread;
   struct SessionHandle *data = conn->data;
   char *buf = data->state.buffer;
-  off_t bytecount = 0;
+  curl_off_t bytecount = 0;
   struct timeval start = Curl_tvnow();
   struct timeval now = start;
   int fd;
index 2b3490ce16c86cb547d03162f2d077bb43fc9c76..0123b70272f8c842ac66408231e8cc00b539e523 100644 (file)
--- a/lib/ftp.c
+++ b/lib/ftp.c
@@ -921,7 +921,7 @@ static CURLcode ftp_transfertype(struct connectdata *conn,
 
 static
 CURLcode ftp_getsize(struct connectdata *conn, char *file,
-                      off_t *size)
+                     curl_off_t *size)
 {
   struct SessionHandle *data = conn->data;
   int ftpcode;
@@ -1660,7 +1660,7 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
 
   /* the ftp struct is already inited in Curl_ftp_connect() */
   struct FTP *ftp = conn->proto.ftp;
-  off_t *bytecountp = ftp->bytecountp;
+  curl_off_t *bytecountp = ftp->bytecountp;
 
   if(data->set.upload) {
 
@@ -1692,7 +1692,7 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
       if(conn->resume_from < 0 ) {
         /* we could've got a specified offset from the command line,
            but now we know we didn't */
-        off_t gottensize;
+        curl_off_t gottensize;
 
         if(CURLE_OK != ftp_getsize(conn, ftp->file, &gottensize)) {
           failf(data, "Couldn't get remote file size");
@@ -1703,7 +1703,7 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
 
       if(conn->resume_from) {
         /* do we still game? */
-        off_t passed=0;
+        curl_off_t passed=0;
         /* enable append instead */
         data->set.ftp_append = 1;
 
@@ -1711,8 +1711,8 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
            input. If we knew it was a proper file we could've just
            fseek()ed but we only have a stream here */
         do {
-          off_t readthisamountnow = (conn->resume_from - passed);
-          off_t actuallyread;
+          curl_off_t readthisamountnow = (conn->resume_from - passed);
+          curl_off_t actuallyread;
 
           if(readthisamountnow > BUFSIZE)
             readthisamountnow = BUFSIZE;
@@ -1802,11 +1802,11 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
   else if(!data->set.no_body) {
     /* Retrieve file or directory */
     bool dirlist=FALSE;
-    off_t downloadsize=-1;
+    curl_off_t downloadsize=-1;
 
     if(conn->bits.use_range && conn->range) {
-      off_t from, to;
-      off_t totalsize=-1;
+      curl_off_t from, to;
+      curl_off_t totalsize=-1;
       char *ptr;
       char *ptr2;
 
@@ -1863,7 +1863,7 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
             (data->set.ftp_list_only?"NLST":"LIST"));
     }
     else {
-      off_t foundsize;
+      curl_off_t foundsize;
 
       /* Set type to binary (unless specified ASCII) */
       result = ftp_transfertype(conn, data->set.ftp_ascii);
@@ -1986,7 +1986,7 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
         E:
         125 Data connection already open; Transfer starting. */
 
-      off_t size=-1; /* default unknown size */
+      curl_off_t size=-1; /* default unknown size */
 
 
       /*
@@ -2170,7 +2170,7 @@ CURLcode ftp_perform(struct connectdata *conn,
     /* The SIZE command is _not_ RFC 959 specified, and therefor many servers
        may not support it! It is however the only way we have to get a file's
        size! */
-    off_t filesize;
+    curl_off_t filesize;
     ssize_t nread;
     int ftpcode;
 
index 6002ad977966bfa8a6e3a4a9485fc0d60c55594d..2d8e87b65bf50a36348eb32778e8b3c3142be0d8 100644 (file)
@@ -1245,14 +1245,14 @@ CURLcode Curl_http(struct connectdata *conn)
 
     if(conn->resume_from) {
       /* do we still game? */
-      off_t passed=0;
+      curl_off_t passed=0;
 
       /* Now, let's read off the proper amount of bytes from the
          input. If we knew it was a proper file we could've just
          fseek()ed but we only have a stream here */
       do {
-        off_t readthisamountnow = (conn->resume_from - passed);
-        off_t actuallyread;
+        curl_off_t readthisamountnow = (conn->resume_from - passed);
+        curl_off_t actuallyread;
 
         if(readthisamountnow > BUFSIZE)
           readthisamountnow = BUFSIZE;
@@ -1299,7 +1299,8 @@ CURLcode Curl_http(struct connectdata *conn)
 
       if(conn->resume_from) {
         /* This is because "resume" was selected */
-        off_t total_expected_size= conn->resume_from + data->set.infilesize;
+        curl_off_t total_expected_size=
+          conn->resume_from + data->set.infilesize;
         conn->allocptr.rangeline =
            aprintf("Content-Range: bytes %s%Od/%Od\r\n",
                    conn->range, total_expected_size-1,
index 2b1356af7fedf2060fbca422405a636c3c77d1dc..a323bf554208adcb6042049c0f8e48003433e4e8 100644 (file)
@@ -38,6 +38,8 @@
 #include <ctype.h>
 #include <string.h>
 
+#include <curl/curl.h> /* for the curl_off_t type */
+
 #ifndef SIZEOF_LONG_DOUBLE
 #define SIZEOF_LONG_DOUBLE 0
 #endif
@@ -377,9 +379,10 @@ static int dprintf_Pass1(char *format, va_stack_t *vto, char **endpos, va_list a
            flags |= FLAGS_LONG;
          break;
        case 'O':
-         if (sizeof(off_t) > sizeof(unsigned long int)) {
+         if (sizeof(curl_off_t) > sizeof(unsigned long int)) {
            flags |= FLAGS_LONGLONG;
-         } else if (sizeof(off_t) > sizeof(unsigned int)) {
+         }
+          else if (sizeof(curl_off_t) > sizeof(unsigned int)) {
            flags |= FLAGS_LONG;
          }
          break;
index e4dac8b9828ea4a173e6a2768cc069ced28eab6d..36e4c7f147bd3d2d0a76a710b14457de72cd34ba 100644 (file)
@@ -244,21 +244,4 @@ typedef struct hostent Curl_addrinfo;
 typedef struct in_addr Curl_ipconnect;
 #endif
 
-#if 0
-#if (SIZEOF_OFF_T > 4)
-/* off_t is bigger than 4 bytes, and that makes it our prefered variable
-   type for filesizes */
-typedef off_t filesize_t;
-#else
-#ifdef HAVE_LONGLONG
-/* we have long long, use this for filesizes internally */
-typedef long long filesize_t;
-#else
-/* small off_t and no long long, no support for large files :-( */
-typedef long filesize_t;
-#endif /* didn't have long long */
-#endif /* sizeof wasn't bigger than 4 */
-
-#endif /* 0 */
-
 #endif /* __CONFIG_H */
index ccaf6cb879f8b827705d82952781ab2ad0d2c318..4b6e6b13639f05e4f466c2531c69752031f39362 100644 (file)
 #include "setup.h"
 #include <stddef.h>
 
-/* Determine what type of file offset conversion handling we wish
- * to use.  For systems with a 32-bit off_t type, we should use
- * strtol.  For systems with a 64-bit off_t type, we should use
- * strtoll if it exists, and if not, should try to emulate its
- * functionality.  At any rate, we define 'strtoofft' such that it
- * can be used to work with off_t's regardless.
+/* Determine what type of file offset conversion handling we wish to use.  For
+ * systems with a 32-bit curl_off_t type, we should use strtol.  For systems
+ * with a 64-bit curl_off_t type, we should use strtoll if it exists, and if
+ * not, should try to emulate its functionality.  At any rate, we define
+ * 'strtoofft' such that it can be used to work with curl_off_t's regardless.
  */
-#if SIZEOF_OFF_T > 4
+#if SIZEOF_CURL_OFF_T > 4
 #if HAVE_STRTOLL
 #define strtoofft strtoll
 #else
index 0cf9ef2228ee179674f73db3f9403aee16750539..3c2bf4baf21a6c762d482bc9d238cf821342c82b 100644 (file)
@@ -1955,14 +1955,14 @@ CURLcode Curl_perform(struct SessionHandle *data)
 
 CURLcode 
 Curl_Transfer(struct connectdata *c_conn, /* connection data */
-              int sockindex,    /* socket index to read from or -1 */
-              off_t size,         /* -1 if unknown at this point */
-              bool getheader,   /* TRUE if header parsing is wanted */
-              off_t *bytecountp, /* return number of bytes read or NULL */
+              int sockindex,       /* socket index to read from or -1 */
+              curl_off_t size,     /* -1 if unknown at this point */
+              bool getheader,      /* TRUE if header parsing is wanted */
+              curl_off_t *bytecountp, /* return number of bytes read or NULL */
               int writesockindex,  /* socket index to write to, it may very
                                       well be the same we read from. -1
                                       disables */
-              off_t *writebytecountp /* return number of bytes written or
+              curl_off_t *writecountp /* return number of bytes written or
                                        NULL */
               )
 {
@@ -1978,7 +1978,7 @@ Curl_Transfer(struct connectdata *c_conn, /* connection data */
   conn->bits.getheader = getheader;
   conn->bytecountp = bytecountp;
   conn->writesockfd = writesockindex==-1?-1:conn->sock[writesockindex];
-  conn->writebytecountp = writebytecountp;
+  conn->writebytecountp = writecountp;
 
   return CURLE_OK;
 
index cd89a9a0401c888350bd268641fceb925d351448..d1b1a76972e5c59704c1c095dec601abe32f05c1 100644 (file)
@@ -38,11 +38,11 @@ CURLcode Curl_readwrite_init(struct connectdata *conn);
 CURLcode 
 Curl_Transfer (struct connectdata *data,
                int sockfd,             /* socket to read from or -1 */
-               off_t size,             /* -1 if unknown at this point */
+               curl_off_t size,                /* -1 if unknown at this point */
                bool getheader,         /* TRUE if header parsing is wanted */
-               off_t *bytecountp,      /* return number of bytes read */
+               curl_off_t *bytecountp, /* return number of bytes read */
                int writesockfd,      /* socket to write to, it may very well be
                                         the same we read from. -1 disables */
-               off_t *writebytecountp /* return number of bytes written */
+               curl_off_t *writecountp /* return number of bytes written */
 );
 #endif
index 8533297a4a3924444a6fad45c5d775a86ccf88c0..e85af3a1ae12524f594fdd5ba7d5ca6213ce9fa7 100644 (file)
--- a/lib/url.c
+++ b/lib/url.c
@@ -716,7 +716,7 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option, ...)
      * If known, this should inform curl about the file size of the
      * to-be-uploaded file.
      */
-    data->set.infilesize = va_arg(param, off_t);
+    data->set.infilesize = va_arg(param, curl_off_t);
     break;
   case CURLOPT_LOW_SPEED_LIMIT:
     /*
@@ -966,7 +966,7 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option, ...)
     /*
      * Resume transfer at the give file position
      */
-    data->set.set_resume_from = va_arg(param, off_t);
+    data->set.set_resume_from = va_arg(param, curl_off_t);
     break;
   case CURLOPT_DEBUGFUNCTION:
     /*
@@ -1279,7 +1279,7 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option, ...)
     /*
      * Set the maximum size of a file to download.
      */
-    data->set.max_filesize = va_arg(param, off_t);
+    data->set.max_filesize = va_arg(param, curl_off_t);
     break;
 
   default:
index aa00c7210fe383f4711c8eff66e1d043b8bf2f05..f4a923817b2daf35116f5a738d0c19e18ad0a118 100644 (file)
 
 #include "timeval.h"
 
+#ifdef HAVE_ZLIB_H
+#include <zlib.h>              /* for content-encoding */
+#endif
+
 #include <curl/curl.h>
 
 #include "http_chunks.h" /* for the structs and enum stuff */
 #include "hostip.h"
 #include "hash.h"
 
-#ifdef HAVE_ZLIB_H
-#include <zlib.h>              /* for content-encoding */
-#endif
-
 #ifdef HAVE_GSSAPI
 #ifdef HAVE_GSSMIT
 #include <gssapi/gssapi.h>
@@ -211,8 +211,8 @@ struct HTTP {
 
   const char *p_pragma;      /* Pragma: string */
   const char *p_accept;      /* Accept: string */
-  off_t readbytecount; 
-  off_t writebytecount;
+  curl_off_t readbytecount; 
+  curl_off_t writebytecount;
 
   /* For FORM posting */
   struct Form form;
@@ -240,7 +240,7 @@ struct HTTP {
  * FTP unique setup
  ***************************************************************************/
 struct FTP {
-  off_t *bytecountp;
+  curl_off_t *bytecountp;
   char *user;    /* user name string */
   char *passwd;  /* password string */
   char *urlpath; /* the originally given path part of the URL */
@@ -250,7 +250,7 @@ struct FTP {
   char *entrypath; /* the PWD reply when we logged on */
 
   char *cache;       /* data cache between getresponse()-calls */
-  off_t cache_size; /* size of cache in bytes */
+  curl_off_t cache_size; /* size of cache in bytes */
   bool dont_check;  /* Set to TRUE to prevent the final (post-transfer)
                        file size and 226/250 status check. It should still
                        read the line, just ignore the result. */
@@ -305,7 +305,7 @@ struct ConnectBits {
  */
 
 struct Curl_transfer_keeper {
-  off_t bytecount;                /* total number of bytes read */
+  curl_off_t bytecount;                /* total number of bytes read */
   int writebytecount;           /* number of bytes written */
   struct timeval start;         /* transfer started at this time */
   struct timeval now;           /* current time */
@@ -326,7 +326,7 @@ struct Curl_transfer_keeper {
   char *end_ptr;               /* within buf */
   char *p;                     /* within headerbuff */
   bool content_range;          /* set TRUE if Content-Range: was found */
-  off_t offset;                        /* possible resume offset read from the
+  curl_off_t offset;                   /* possible resume offset read from the
                                    Content-Range: header */
   int httpcode;                        /* error code from the 'HTTP/1.? XXX' line */
   int httpversion;             /* the HTTP version*10 */
@@ -428,12 +428,12 @@ struct connectdata {
   unsigned short remote_port; /* what remote port to connect to,
                                  not the proxy port! */
   char *ppath;
-  off_t bytecount;
+  curl_off_t bytecount;
   long headerbytecount;  /* only count received headers */
 
   char *range; /* range, if used. See README for detailed specification on
                   this syntax. */
-  off_t resume_from; /* continue [ftp] transfer from here */
+  curl_off_t resume_from; /* continue [ftp] transfer from here */
 
   char *proxyhost; /* name of the http proxy host */
 
@@ -447,7 +447,7 @@ struct connectdata {
   struct timeval created; /* creation time */
   int sock[2];       /* two sockets, the second is used for the data transfer
                         when doing FTP */
-  off_t maxdownload; /* in bytes, the maximum amount of data to fetch, 0
+  curl_off_t maxdownload; /* in bytes, the maximum amount of data to fetch, 0
                         means unlimited */
   
   struct ssl_connect_data ssl[2]; /* this is for ssl-stuff */
@@ -484,14 +484,14 @@ struct connectdata {
   /**** curl_get() phase fields */
 
   /* READ stuff */
-  int sockfd;           /* socket to read from or -1 */
-  off_t size;           /* -1 if unknown at this point */
-  off_t *bytecountp;    /* return number of bytes read or NULL */
+  int sockfd;            /* socket to read from or -1 */
+  curl_off_t size;       /* -1 if unknown at this point */
+  curl_off_t *bytecountp; /* return number of bytes read or NULL */
           
   /* WRITE stuff */
   int writesockfd;       /* socket to write to, it may very
                             well be the same we read from. -1 disables */
-  off_t *writebytecountp; /* return number of bytes written or NULL */
+  curl_off_t *writebytecountp; /* return number of bytes written or NULL */
 
   /** Dynamicly allocated strings, may need to be freed before this **/
   /** struct is killed.                                             **/
@@ -785,10 +785,10 @@ struct UserDefined {
   long timeout;         /* in seconds, 0 means no timeout */
   long connecttimeout;  /* in seconds, 0 means no timeout */
   long ftp_response_timeout; /* in seconds, 0 means no timeout */
-  off_t infilesize;      /* size of file to upload, -1 means unknown */
+  curl_off_t infilesize;      /* size of file to upload, -1 means unknown */
   long low_speed_limit; /* bytes/second */
   long low_speed_time;  /* number of seconds */
-  off_t set_resume_from;  /* continue [ftp] transfer from here */
+  curl_off_t set_resume_from;  /* continue [ftp] transfer from here */
   char *cookie;         /* HTTP cookie string to send */
   struct curl_slist *headers; /* linked list of extra headers */
   struct curl_httppost *httppost;  /* linked list of POST data */
@@ -830,7 +830,7 @@ struct UserDefined {
 
   int ip_version; 
 
-  off_t max_filesize; /* Maximum file size to download */
+  curl_off_t max_filesize; /* Maximum file size to download */
   
 /* Here follows boolean settings that define how to behave during
    this session. They are STATIC, set by libcurl users or at least initially