diff -urp c:\f\curl-old/curl/lib/ftp.c c:\f\curl-new/curl/lib/ftp.c
--- c:\f\curl-old/curl/lib/ftp.c	2005-11-29 00:06:00.000000000 +0100
+++ c:\f\curl-new/curl/lib/ftp.c	2005-12-04 10:12:04.375000000 +0100
@@ -3680,7 +3680,7 @@ CURLcode ftp_parse_url_path(struct conne
       if(!ftp->dirs)
         return CURLE_OUT_OF_MEMORY;
 
-      ftp->dirs[0] = curl_unescape(cur_pos, slash_pos-cur_pos);
+      ftp->dirs[0] = curl_unescape(cur_pos, (int)(slash_pos-cur_pos));
       if(!ftp->dirs[0]) {
         free(ftp->dirs);
         return CURLE_OUT_OF_MEMORY;
diff -urp c:\f\curl-old/curl/lib/tftp.c c:\f\curl-new/curl/lib/tftp.c
--- c:\f\curl-old/curl/lib/tftp.c	2005-12-03 00:22:00.000000000 +0100
+++ c:\f\curl-new/curl/lib/tftp.c	2005-12-04 11:38:15.593750000 +0100
@@ -261,7 +261,7 @@ static void tftp_send_first(tftp_state_d
     if(data->set.upload) {
       /* If we are uploading, send an WRQ */
       state->spacket.event = htons(TFTP_EVENT_WRQ);
-      filename = curl_unescape(filename, strlen(filename));
+      filename = curl_unescape(filename, (int)strlen(filename));
       state->conn->upload_fromhere = (char *)state->spacket.u.data.data;
       if(data->set.infilesize != -1) {
         Curl_pgrsSetUploadSize(data, data->set.infilesize);
@@ -273,7 +273,7 @@ static void tftp_send_first(tftp_state_d
     }
     sprintf((char *)state->spacket.u.request.data, "%s%c%s%c",
             filename, '\0',  mode, '\0');
-    sbytes = 4 + strlen(filename) + strlen(mode);
+    sbytes = 4 + (int)strlen(filename) + (int)strlen(mode);
     sbytes = sendto(state->sockfd, (void *)&state->spacket,
                     sbytes, 0,
                     state->conn->ip_addr->ai_addr,
diff -urp c:\f\curl-old/curl/src/main.c c:\f\curl-new/curl/src/main.c
--- c:\f\curl-old/curl/src/main.c	2005-11-29 00:06:01.000000000 +0100
+++ c:\f\curl-new/curl/src/main.c	2005-12-04 11:42:28.031250000 +0100
@@ -363,7 +363,7 @@ struct Configurable {
 };
 
 #define WARN_PREFIX "Warning: "
-#define WARN_TEXTWIDTH (79 - strlen(WARN_PREFIX))
+#define WARN_TEXTWIDTH (79 - (int)strlen(WARN_PREFIX))
 /* produce this text message to the user unless mute was selected */
 static void warnf(struct Configurable *config, const char *fmt, ...)
 {
diff -urp c:\f\curl-old/curl/src/mkhelp.pl c:\f\curl-new/curl/src/mkhelp.pl
--- c:\f\curl-old/curl/src/mkhelp.pl	2004-04-26 23:15:48.000000000 +0200
+++ c:\f\curl-new/curl/src/mkhelp.pl	2005-12-04 11:55:07.578125000 +0100
@@ -156,7 +156,7 @@ void hugehelp(void)
     return;
 
   headerlen = 10;
-  z.avail_in = sizeof(hugehelpgz) - headerlen;
+  z.avail_in = (unsigned int)(sizeof(hugehelpgz) - headerlen);
   z.next_in = (unsigned char *)hugehelpgz + headerlen;
   z.zalloc = (alloc_func)Z_NULL;
   z.zfree = (free_func)Z_NULL;
diff -urp c:\f\curl-old/curl/tests/server/tftpd.c c:\f\curl-new/curl/tests/server/tftpd.c
--- c:\f\curl-old/curl/tests/server/tftpd.c	2005-09-20 00:03:16.000000000 +0200
+++ c:\f\curl-new/curl/tests/server/tftpd.c	2005-12-04 12:07:47.125000000 +0100
@@ -222,7 +222,7 @@ static void read_ahead(struct testcase *
   if (convert == 0) {
     /* The former file reading code did this:
        b->counter = read(fileno(file), dp->th_data, SEGSIZE); */
-    int copy_n = MIN(SEGSIZE, test->rcount);
+    size_t copy_n = MIN(SEGSIZE, test->rcount);
     memcpy(dp->th_data, test->rptr, copy_n);
 
     /* decrease amount, advance pointer */
@@ -892,7 +892,7 @@ static void nak(int error)
     tp->th_code = EUNDEF;   /* set 'undef' errorcode */
   }
   strcpy(tp->th_msg, pe->e_msg);
-  length = strlen(pe->e_msg);
+  length = (int)strlen(pe->e_msg);
   tp->th_msg[length] = '\0';
   length += 5;
   if (send(peer, buf, length, 0) != length)

