123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316 |
- Index: exclude.c
- diff -u exclude.c:1.38 exclude.c:1.39
- --- exclude.c:1.38 Wed Jun 20 23:15:34 2001
- +++ exclude.c Tue Jan 22 20:57:18 2002
- @@ -299,7 +299,8 @@
- void recv_exclude_list(int f)
- {
- char line[MAXPATHLEN];
- - int l;
- + unsigned int l;
- +
- while ((l=read_int(f))) {
- if (l >= MAXPATHLEN) overflow("recv_exclude_list");
- read_sbuf(f,line,l);
- Index: fileio.c
- diff -u fileio.c:1.3 fileio.c:1.4
- --- fileio.c:1.3 Wed Dec 30 06:48:45 1998
- +++ fileio.c Tue Jan 22 20:57:18 2002
- @@ -36,7 +36,7 @@
- }
-
-
- -static int write_sparse(int f,char *buf,int len)
- +static int write_sparse(int f,char *buf,size_t len)
- {
- int l1=0,l2=0;
- int ret;
- @@ -69,7 +69,7 @@
-
-
-
- -int write_file(int f,char *buf,int len)
- +int write_file(int f,char *buf,size_t len)
- {
- int ret = 0;
-
- Index: flist.c
- diff -u flist.c:1.102 flist.c:1.103
- --- flist.c:1.102 Tue Jan 15 03:50:32 2002
- +++ flist.c Tue Jan 22 20:57:18 2002
- @@ -375,7 +375,7 @@
- static gid_t last_gid;
- static char lastname[MAXPATHLEN];
- char thisname[MAXPATHLEN];
- - int l1=0,l2=0;
- + unsigned int l1=0,l2=0;
- char *p;
- struct file_struct *file;
-
- @@ -442,6 +442,10 @@
-
- if (preserve_links && S_ISLNK(file->mode)) {
- int l = read_int(f);
- + if (l < 0) {
- + rprintf(FERROR,"overflow: l=%d\n", l);
- + overflow("receive_file_entry");
- + }
- file->link = (char *)malloc(l+1);
- if (!file->link) out_of_memory("receive_file_entry 2");
- read_sbuf(f,file->link,l);
- Index: io.c
- diff -u io.c:1.87 io.c:1.88
- --- io.c:1.87 Sat Sep 8 21:42:09 2001
- +++ io.c Tue Jan 22 20:57:18 2002
- @@ -49,7 +49,7 @@
-
- static int io_error_fd = -1;
-
- -static void read_loop(int fd, char *buf, int len);
- +static void read_loop(int fd, char *buf, size_t len);
-
- static void check_timeout(void)
- {
- @@ -163,7 +163,7 @@
- * give a better explanation. We can tell whether the connection has
- * started by looking e.g. at whether the remote version is known yet.
- */
- -static int read_timeout (int fd, char *buf, int len)
- +static int read_timeout (int fd, char *buf, size_t len)
- {
- int n, ret=0;
-
- @@ -236,7 +236,7 @@
-
- /*! Continue trying to read len bytes - don't return until len has
- been read. */
- -static void read_loop (int fd, char *buf, int len)
- +static void read_loop (int fd, char *buf, size_t len)
- {
- while (len) {
- int n = read_timeout(fd, buf, len);
- @@ -253,7 +253,7 @@
- *
- * Never returns <= 0.
- */
- -static int read_unbuffered(int fd, char *buf, int len)
- +static int read_unbuffered(int fd, char *buf, size_t len)
- {
- static int remaining;
- int tag, ret=0;
- @@ -305,7 +305,7 @@
-
- /* do a buffered read from fd. don't return until all N bytes
- have been read. If all N can't be read then exit with an error */
- -static void readfd (int fd, char *buffer, int N)
- +static void readfd (int fd, char *buffer, size_t N)
- {
- int ret;
- int total=0;
- @@ -356,12 +356,12 @@
- return ret;
- }
-
- -void read_buf(int f,char *buf,int len)
- +void read_buf(int f,char *buf,size_t len)
- {
- readfd(f,buf,len);
- }
-
- -void read_sbuf(int f,char *buf,int len)
- +void read_sbuf(int f,char *buf,size_t len)
- {
- read_buf (f,buf,len);
- buf[len] = 0;
- @@ -375,7 +375,7 @@
- }
-
- /* write len bytes to fd */
- -static void writefd_unbuffered(int fd,char *buf,int len)
- +static void writefd_unbuffered(int fd,char *buf,size_t len)
- {
- int total = 0;
- fd_set w_fds, r_fds;
- @@ -483,7 +483,7 @@
-
- /* write an message to a multiplexed stream. If this fails then rsync
- exits */
- -static void mplex_write(int fd, enum logcode code, char *buf, int len)
- +static void mplex_write(int fd, enum logcode code, char *buf, size_t len)
- {
- char buffer[4096];
- int n = len;
- @@ -533,7 +533,7 @@
- }
- }
-
- -static void writefd(int fd,char *buf,int len)
- +static void writefd(int fd,char *buf,size_t len)
- {
- stats.total_written += len;
-
- @@ -587,7 +587,7 @@
- writefd(f,b,8);
- }
-
- -void write_buf(int f,char *buf,int len)
- +void write_buf(int f,char *buf,size_t len)
- {
- writefd(f,buf,len);
- }
- @@ -606,7 +606,7 @@
-
-
-
- -int read_line(int f, char *buf, int maxlen)
- +int read_line(int f, char *buf, size_t maxlen)
- {
- while (maxlen) {
- buf[0] = 0;
- @@ -664,7 +664,7 @@
- }
-
- /* write an message to the multiplexed error stream */
- -int io_multiplex_write(enum logcode code, char *buf, int len)
- +int io_multiplex_write(enum logcode code, char *buf, size_t len)
- {
- if (!io_multiplexing_out) return 0;
-
- Index: log.c
- diff -u log.c:1.53 log.c:1.54
- --- log.c:1.53 Mon Sep 3 20:12:55 2001
- +++ log.c Tue Jan 22 20:57:18 2002
- @@ -466,7 +466,7 @@
-
- l = strlen(n);
-
- - if ((l-1) + ((int)(s - &buf[0])) > sizeof(buf)) {
- + if (l + ((int)(s - &buf[0])) >= sizeof(buf)) {
- rprintf(FERROR,"buffer overflow expanding %%%c - exiting\n",
- p[0]);
- exit_cleanup(RERR_MESSAGEIO);
- Index: proto.h
- diff -u proto.h:1.133 proto.h:1.134
- --- proto.h:1.133 Sun Nov 25 23:18:09 2001
- +++ proto.h Tue Jan 22 20:57:18 2002
- @@ -15,10 +15,12 @@
- unsigned char read_batch_flags();
- void read_batch_flist_info(struct file_struct **fptr);
- void write_batch_csums_file(char *buff, int bytes_to_write);
- -void close_batch_csums_file() ;
- -void write_batch_csum_info(int *flist_entry, int flist_count, struct sum_struct *s);
- +void close_batch_csums_file();
- +void write_batch_csum_info(int *flist_entry, int flist_count,
- + struct sum_struct *s);
- int read_batch_csums_file(char *buff, int len);
- -void read_batch_csum_info(int flist_entry, struct sum_struct *s, int *checksums_match);
- +void read_batch_csum_info(int flist_entry, struct sum_struct *s,
- + int *checksums_match);
- void write_batch_delta_file(char *buff, int bytes_to_write);
- void close_batch_delta_file();
- int read_batch_delta_file(char *buff, int len);
- @@ -55,7 +57,7 @@
- void add_include_line(char *p);
- void add_cvs_excludes(void);
- int sparse_end(int f);
- -int write_file(int f,char *buf,int len);
- +int write_file(int f,char *buf,size_t len);
- struct map_struct *map_file(int fd,OFF_T len);
- char *map_ptr(struct map_struct *map,OFF_T offset,int len);
- void unmap_file(struct map_struct *map);
- @@ -81,21 +83,21 @@
- void io_set_error_fd(int fd);
- int32 read_int(int f);
- int64 read_longint(int f);
- -void read_buf(int f,char *buf,int len);
- -void read_sbuf(int f,char *buf,int len);
- +void read_buf(int f,char *buf,size_t len);
- +void read_sbuf(int f,char *buf,size_t len);
- unsigned char read_byte(int f);
- void io_start_buffering(int fd);
- void io_flush(void);
- void io_end_buffering(int fd);
- void write_int(int f,int32 x);
- void write_longint(int f, int64 x);
- -void write_buf(int f,char *buf,int len);
- +void write_buf(int f,char *buf,size_t len);
- void write_byte(int f,unsigned char c);
- -int read_line(int f, char *buf, int maxlen);
- +int read_line(int f, char *buf, size_t maxlen);
- void io_printf(int fd, const char *format, ...);
- void io_start_multiplex_out(int fd);
- void io_start_multiplex_in(int fd);
- -int io_multiplex_write(enum logcode code, char *buf, int len);
- +int io_multiplex_write(enum logcode code, char *buf, size_t len);
- void io_multiplexing_close(void);
- char *lp_motd_file(void);
- char *lp_log_file(void);
- @@ -166,6 +168,9 @@
- void sig_int(void);
- void finish_transfer(char *fname, char *fnametmp, struct file_struct *file);
- void send_files(struct file_list *flist,int f_out,int f_in);
- +int try_bind_local(int s,
- + int ai_family, int ai_socktype,
- + const char *bind_address);
- int open_socket_out(char *host, int port, const char *bind_address,
- int af_hint);
- int open_socket_out_wrapped (char *host,
- Index: receiver.c
- diff -u receiver.c:1.34 receiver.c:1.35
- --- receiver.c:1.34 Fri Jan 11 00:25:33 2002
- +++ receiver.c Tue Jan 22 20:57:18 2002
- @@ -206,7 +206,8 @@
- static int receive_data(int f_in,struct map_struct *buf,int fd,char *fname,
- OFF_T total_size)
- {
- - int i,n,remainder,len,count;
- + int i;
- + unsigned int n,remainder,len,count;
- OFF_T offset = 0;
- OFF_T offset2;
- char *data;
- Index: rsync.h
- diff -u rsync.h:1.116 rsync.h:1.117
- --- rsync.h:1.116 Fri Jan 11 00:37:42 2002
- +++ rsync.h Tue Jan 22 20:57:19 2002
- @@ -374,9 +374,9 @@
-
- struct sum_struct {
- OFF_T flength; /* total file length */
- - int count; /* how many chunks */
- - int remainder; /* flength % block_length */
- - int n; /* block_length */
- + size_t count; /* how many chunks */
- + size_t remainder; /* flength % block_length */
- + size_t n; /* block_length */
- struct sum_buf *sums; /* points to info for each chunk */
- };
-
- Index: util.c
- diff -u util.c:1.98 util.c:1.99
- --- util.c:1.98 Tue Jan 15 02:05:28 2002
- +++ util.c Tue Jan 22 20:57:19 2002
- @@ -275,7 +275,7 @@
-
- derived from GNU C's cccp.c.
- */
- -static int full_write(int desc, char *ptr, int len)
- +static int full_write(int desc, char *ptr, size_t len)
- {
- int total_written;
-
- @@ -301,11 +301,11 @@
- for an error.
-
- derived from GNU C's cccp.c. */
- -static int safe_read(int desc, char *ptr, int len)
- +static int safe_read(int desc, char *ptr, size_t len)
- {
- int n_chars;
-
- - if (len <= 0)
- + if (len == 0)
- return len;
-
- #ifdef EINTR
|