OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Thomas Lotterer
Root: /e/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src openpkg-web Date: 04-Dec-2003 16:41:42
Branch: OPENPKG_1_3_SOLID HEAD Handle: 2003120415414002
Modified files:
openpkg-web news.txt
Modified files: (Branch: OPENPKG_1_3_SOLID)
openpkg-src/rsync rsync.patch rsync.spec
Log:
SA-2003.051-rsync; CAN-2003-0962
Summary:
Revision Changes Path
1.3.2.1.2.1 +508 -0 openpkg-src/rsync/rsync.patch
1.39.2.3.2.2+1 -1 openpkg-src/rsync/rsync.spec
1.7665 +1 -0 openpkg-web/news.txt
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/rsync/rsync.patch
============================================================================
$ cvs diff -u -r1.3.2.1 -r1.3.2.1.2.1 rsync.patch
--- openpkg-src/rsync/rsync.patch 24 Jul 2003 20:42:05 -0000 1.3.2.1
+++ openpkg-src/rsync/rsync.patch 4 Dec 2003 15:41:42 -0000 1.3.2.1.2.1
@@ -71,3 +71,511 @@
while (c->len)
{
NEEDOUT
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/batch.c rsync-2.5.7/batch.c
+--- batch.c.orig 2002-12-24 18:42:04.000000000 +1100
++++ batch.c 2003-12-04 15:23:29.000000000 +1100
+@@ -185,15 +185,14 @@ struct file_list *create_flist_from_batc
+ fdb_open = 1;
+ fdb_close = 0;
+
+- batch_flist = (struct file_list *) malloc(sizeof(batch_flist[0]));
++ batch_flist = new(struct file_list);
+ if (!batch_flist) {
+ out_of_memory("create_flist_from_batch");
+ }
+ batch_flist->count = 0;
+ batch_flist->malloced = 1000;
+- batch_flist->files =
+- (struct file_struct **) malloc(sizeof(batch_flist->files[0]) *
+- batch_flist->malloced);
++ batch_flist->files = new_array(struct file_struct *,
++ batch_flist->malloced);
+ if (!batch_flist->files) {
+ out_of_memory("create_flist_from_batch");
+ }
+@@ -207,14 +206,10 @@ struct file_list *create_flist_from_batc
+ batch_flist->malloced += 1000;
+ else
+ batch_flist->malloced *= 2;
+- batch_flist->files =
+- (struct file_struct **) realloc(batch_flist->
+- files,
+- sizeof
+- (batch_flist->
+- files[0]) *
+- batch_flist->
+- malloced);
++ batch_flist->files
++ = realloc_array(batch_flist->files,
++ struct file_struct *,
++ batch_flist->malloced);
+ if (!batch_flist->files)
+ out_of_memory("create_flist_from_batch");
+ }
+@@ -282,7 +277,7 @@ void read_batch_flist_info(struct file_s
+ char buff[256];
+ struct file_struct *file;
+
+- file = (struct file_struct *) malloc(sizeof(*file));
++ file = new(struct file_struct);
+ if (!file)
+ out_of_memory("read_batch_flist_info");
+ memset((char *) file, 0, sizeof(*file));
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/checksum.c rsync-2.5.7/checksum.c
+--- checksum.c.orig 2002-04-08 18:29:04.000000000 +1000
++++ checksum.c 2003-12-04 15:23:29.000000000 +1100
+@@ -58,7 +58,7 @@ void get_checksum2(char *buf,int len,cha
+
+ if (len > len1) {
+ if (buf1) free(buf1);
+- buf1 = (char *)malloc(len+4);
++ buf1 = new_array(char, len+4);
+ len1 = len;
+ if (!buf1) out_of_memory("get_checksum2");
+ }
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/exclude.c rsync-2.5.7/exclude.c
+--- exclude.c.orig 2003-01-27 07:10:23.000000000 +1100
++++ exclude.c 2003-12-04 15:23:29.000000000 +1100
+@@ -36,7 +36,7 @@ static struct exclude_struct *make_exclu
+ {
+ struct exclude_struct *ret;
+
+- ret = (struct exclude_struct *)malloc(sizeof(*ret));
++ ret = new(struct exclude_struct);
+ if (!ret) out_of_memory("make_exclude");
+
+ memset(ret, 0, sizeof(*ret));
+@@ -197,7 +197,7 @@ void add_exclude_list(const char *patter
+ return;
+ }
+
+- *list = (struct exclude_struct **)Realloc(*list,sizeof(struct exclude_struct
*)*(len+2));
++ *list = realloc_array(*list, struct exclude_struct *, len+2);
+
+ if (!*list || !((*list)[len] = make_exclude(pattern, include)))
+ out_of_memory("add_exclude");
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/fileio.c rsync-2.5.7/fileio.c
+--- fileio.c.orig 2002-01-26 10:07:34.000000000 +1100
++++ fileio.c 2003-12-04 15:23:29.000000000 +1100
+@@ -102,7 +102,7 @@ int write_file(int f,char *buf,size_t le
+ struct map_struct *map_file(int fd,OFF_T len)
+ {
+ struct map_struct *map;
+- map = (struct map_struct *)malloc(sizeof(*map));
++ map = new(struct map_struct);
+ if (!map) out_of_memory("map_file");
+
+ map->fd = fd;
+@@ -156,7 +156,7 @@ char *map_ptr(struct map_struct *map,OFF
+
+ /* make sure we have allocated enough memory for the window */
+ if (window_size > map->p_size) {
+- map->p = (char *)Realloc(map->p, window_size);
++ map->p = realloc_array(map->p, char, window_size);
+ if (!map->p) out_of_memory("map_ptr");
+ map->p_size = window_size;
+ }
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/flist.c rsync-2.5.7/flist.c
+--- flist.c.orig 2003-01-19 05:00:23.000000000 +1100
++++ flist.c 2003-12-04 15:23:29.000000000 +1100
+@@ -118,10 +118,10 @@ static struct string_area *string_area_n
+
+ if (size <= 0)
+ size = ARENA_SIZE;
+- a = malloc(sizeof(*a));
++ a = new(struct string_area);
+ if (!a)
+ out_of_memory("string_area_new");
+- a->current = a->base = malloc(size);
++ a->current = a->base = new_array(char, size);
+ if (!a->current)
+ out_of_memory("string_area_new buffer");
+ a->end = a->base + size;
+@@ -305,7 +305,6 @@ static char *flist_dir;
+ static void flist_expand(struct file_list *flist)
+ {
+ if (flist->count >= flist->malloced) {
+- size_t new_bytes;
+ void *new_ptr;
+
+ if (flist->malloced < 1000)
+@@ -313,16 +312,18 @@ static void flist_expand(struct file_lis
+ else
+ flist->malloced *= 2;
+
+- new_bytes = sizeof(flist->files[0]) * flist->malloced;
+-
+ if (flist->files)
+- new_ptr = realloc(flist->files, new_bytes);
++ new_ptr = realloc_array(flist->files,
++ struct file_struct *,
++ flist->malloced);
+ else
+- new_ptr = malloc(new_bytes);
++ new_ptr = new_array(struct file_struct *,
++ flist->malloced);
+
+ if (verbose >= 2) {
+ rprintf(FINFO, "expand file_list to %.0f bytes, did%s move\n",
+- (double) new_bytes,
++ (double)sizeof(flist->files[0])
++ * flist->malloced,
+ (new_ptr == flist->files) ? " not" : "");
+ }
+
+@@ -480,7 +481,7 @@ static void receive_file_entry(struct fi
+ else
+ l2 = read_byte(f);
+
+- file = (struct file_struct *) malloc(sizeof(*file));
++ file = new(struct file_struct);
+ if (!file)
+ out_of_memory("receive_file_entry");
+ memset((char *) file, 0, sizeof(*file));
+@@ -547,7 +548,7 @@ static void receive_file_entry(struct fi
+ rprintf(FERROR, "overflow: l=%d\n", l);
+ overflow("receive_file_entry");
+ }
+- file->link = (char *) malloc(l + 1);
++ file->link = new_array(char, l + 1);
+ if (!file->link)
+ out_of_memory("receive_file_entry 2");
+ read_sbuf(f, file->link, l);
+@@ -568,7 +569,7 @@ static void receive_file_entry(struct fi
+ #endif
+
+ if (always_checksum) {
+- file->sum = (char *) malloc(MD4_SUM_LENGTH);
++ file->sum = new_array(char, MD4_SUM_LENGTH);
+ if (!file->sum)
+ out_of_memory("md4 sum");
+ if (remote_version < 21) {
+@@ -703,7 +704,7 @@ struct file_struct *make_file(int f, cha
+ if (verbose > 2)
+ rprintf(FINFO, "make_file(%d,%s)\n", f, fname);
+
+- file = (struct file_struct *) malloc(sizeof(*file));
++ file = new(struct file_struct);
+ if (!file)
+ out_of_memory("make_file");
+ memset((char *) file, 0, sizeof(*file));
+@@ -1051,15 +1052,13 @@ struct file_list *recv_file_list(int f)
+
+ start_read = stats.total_read;
+
+- flist = (struct file_list *) malloc(sizeof(flist[0]));
++ flist = new(struct file_list);
+ if (!flist)
+ goto oom;
+
+ flist->count = 0;
+ flist->malloced = 1000;
+- flist->files =
+- (struct file_struct **) malloc(sizeof(flist->files[0]) *
+- flist->malloced);
++ flist->files = new_array(struct file_struct *, flist->malloced);
+ if (!flist->files)
+ goto oom;
+
+@@ -1201,7 +1200,7 @@ struct file_list *flist_new(void)
+ {
+ struct file_list *flist;
+
+- flist = (struct file_list *) malloc(sizeof(flist[0]));
++ flist = new(struct file_list);
+ if (!flist)
+ out_of_memory("send_file_list");
+
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/hlink.c rsync-2.5.7/hlink.c
+--- hlink.c.orig 2002-03-25 18:07:03.000000000 +1100
++++ hlink.c 2003-12-04 15:23:29.000000000 +1100
+@@ -57,9 +57,7 @@ void init_hard_links(struct file_list *f
+ if (hlink_list)
+ free(hlink_list);
+
+- if (!(hlink_list =
+- (struct file_struct *) malloc(sizeof(hlink_list[0]) *
+- flist->count)))
++ if (!(hlink_list = new_array(struct file_struct, flist->count)))
+ out_of_memory("init_hard_links");
+
+ for (i = 0; i < flist->count; i++)
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/io.c rsync-2.5.7/io.c
+--- io.c.orig 2002-04-11 12:11:50.000000000 +1000
++++ io.c 2003-12-04 15:23:29.000000000 +1100
+@@ -535,7 +535,7 @@ void io_start_buffering(int fd)
+ {
+ if (io_buffer) return;
+ multiplex_out_fd = fd;
+- io_buffer = (char *)malloc(IO_BUFFER_SIZE);
++ io_buffer = new_array(char, IO_BUFFER_SIZE);
+ if (!io_buffer) out_of_memory("writefd");
+ io_buffer_count = 0;
+ }
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/loadparm.c rsync-2.5.7/loadparm.c
+--- loadparm.c.orig 2002-08-31 09:27:26.000000000 +1000
++++ loadparm.c 2003-12-04 15:23:29.000000000 +1100
+@@ -442,10 +442,10 @@ static int add_a_service(service *pservi
+
+ i = iNumServices;
+
+- ServicePtrs = (service **)Realloc(ServicePtrs,sizeof(service *)*num_to_alloc);
++ ServicePtrs = realloc_array(ServicePtrs, service *, num_to_alloc);
+
+ if (ServicePtrs)
+- pSERVICE(iNumServices) = (service *)malloc(sizeof(service));
++ pSERVICE(iNumServices) = new(service);
+
+ if (!ServicePtrs || !pSERVICE(iNumServices))
+ return(-1);
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/log.c rsync-2.5.7/log.c
+--- log.c.orig 2002-12-24 18:42:04.000000000 +1100
++++ log.c 2003-12-04 15:23:29.000000000 +1100
+@@ -90,10 +90,10 @@ static struct err_list *err_list_tail;
+ static void err_list_add(int code, char *buf, int len)
+ {
+ struct err_list *el;
+- el = (struct err_list *)malloc(sizeof(*el));
++ el = new(struct err_list);
+ if (!el) exit_cleanup(RERR_MALLOC);
+ el->next = NULL;
+- el->buf = malloc(len+4);
++ el->buf = new_array(char, len+4);
+ if (!el->buf) exit_cleanup(RERR_MALLOC);
+ memcpy(el->buf+4, buf, len);
+ SIVAL(el->buf, 0, ((code+MPLEX_BASE)<<24) | len);
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/match.c rsync-2.5.7/match.c
+--- match.c.orig 2002-04-09 16:11:06.000000000 +1000
++++ match.c 2003-12-04 15:23:29.000000000 +1100
+@@ -65,9 +65,9 @@ static void build_hash_table(struct sum_
+ int i;
+
+ if (!tag_table)
+- tag_table = (int *)malloc(sizeof(tag_table[0])*TABLESIZE);
++ tag_table = new_array(int, TABLESIZE);
+
+- targets = (struct target *)malloc(sizeof(targets[0])*s->count);
++ targets = new_array(struct target, s->count);
+ if (!tag_table || !targets)
+ out_of_memory("build_hash_table");
+
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/params.c rsync-2.5.7/params.c
+--- params.c.orig 2003-01-27 07:07:55.000000000 +1100
++++ params.c 2003-12-04 15:23:30.000000000 +1100
+@@ -207,7 +207,7 @@ static BOOL Section( FILE *InFile, BOOL
+ if( i > (bSize - 2) )
+ {
+ bSize += BUFR_INC;
+- bufr = Realloc( bufr, bSize );
++ bufr = realloc_array( bufr, char, bSize );
+ if( NULL == bufr )
+ {
+ rprintf(FERROR, "%s Memory re-allocation failure.", func);
+@@ -301,7 +301,7 @@ static BOOL Parameter( FILE *InFile, BOO
+ if( i > (bSize - 2) ) /* Ensure there's space for next char. */
+ {
+ bSize += BUFR_INC;
+- bufr = Realloc( bufr, bSize );
++ bufr = realloc_array( bufr, char, bSize );
+ if( NULL == bufr )
+ {
+ rprintf(FERROR, "%s Memory re-allocation failure.", func) ;
+@@ -366,7 +366,7 @@ static BOOL Parameter( FILE *InFile, BOO
+ if( i > (bSize - 2) ) /* Make sure there's enough room. */
+ {
+ bSize += BUFR_INC;
+- bufr = Realloc( bufr, bSize );
++ bufr = realloc_array( bufr, char, bSize );
+ if( NULL == bufr )
+ {
+ rprintf(FERROR, "%s Memory re-allocation failure.", func) ;
+@@ -530,7 +530,7 @@ BOOL pm_process( char *FileName,
+ else /* If we don't have a buffer */
+ { /* allocate one, then parse, */
+ bSize = BUFR_INC; /* then free. */
+- bufr = (char *)malloc( bSize );
++ bufr = new_array( char, bSize );
+ if( NULL == bufr )
+ {
+ rprintf(FERROR,"%s memory allocation failure.\n", func);
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/proto.h rsync-2.5.7/proto.h
+--- proto.h.orig 2003-01-27 14:35:09.000000000 +1100
++++ proto.h 2003-12-04 15:23:30.000000000 +1100
+@@ -254,7 +254,6 @@ int name_to_gid(char *name, gid_t *gid);
+ int lock_range(int fd, int offset, int len);
+ void glob_expand(char *base1, char **argv, int *argc, int maxargs);
+ void strlower(char *s);
+-void *Realloc(void *p, int size);
+ void clean_fname(char *name);
+ void sanitize_path(char *p, char *reldir);
+ char *push_dir(char *dir, int save);
+@@ -265,4 +264,6 @@ char *timestring(time_t t);
+ int msleep(int t);
+ int cmp_modtime(time_t file1, time_t file2);
+ int _Insure_trap_error(int a1, int a2, int a3, int a4, int a5, int a6);
++void *_new_array(unsigned int size, unsigned long num);
++void *_realloc_array(void *ptr, unsigned int size, unsigned long num);
+ int sys_gettimeofday(struct timeval *tv);
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/receiver.c rsync-2.5.7/receiver.c
+--- receiver.c.orig 2003-01-21 10:32:17.000000000 +1100
++++ receiver.c 2003-12-04 15:23:30.000000000 +1100
+@@ -67,7 +67,8 @@ static void add_delete_entry(struct file
+ {
+ if (dlist_len == dlist_alloc_len) {
+ dlist_alloc_len += 1024;
+- delete_list = (struct delete_list *)Realloc(delete_list,
sizeof(delete_list[0])*dlist_alloc_len);
++ delete_list = realloc_array(delete_list, struct delete_list,
++ dlist_alloc_len);
+ if (!delete_list) out_of_memory("add_delete_entry");
+ }
+
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/rsync.c rsync-2.5.7/rsync.c
+--- rsync.c.orig 2001-12-21 02:33:13.000000000 +1100
++++ rsync.c 2003-12-04 15:23:30.000000000 +1100
+@@ -124,7 +124,7 @@ static int is_in_group(gid_t gid)
+ /* treat failure (-1) as if not member of any group */
+ ngroups = getgroups(0, 0);
+ if (ngroups > 0) {
+- gidset = (GETGROUPS_T *) malloc(ngroups * sizeof(GETGROUPS_T));
++ gidset = new_array(GETGROUPS_T, ngroups);
+ ngroups = getgroups(ngroups, gidset);
+ }
+ }
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/rsync.h rsync-2.5.7/rsync.h
+--- rsync.h.orig 2003-01-27 07:11:16.000000000 +1100
++++ rsync.h 2003-12-04 15:23:30.000000000 +1100
+@@ -579,6 +579,10 @@ extern int errno;
+
+ #endif
+
++/* Convenient wrappers for malloc and realloc. Use them. */
++#define new(type) ((type *)malloc(sizeof(type)))
++#define new_array(type, num) ((type *)_new_array(sizeof(type), (num)))
++#define realloc_array(ptr, type, num) ((type *)_realloc_array((ptr), sizeof(type),
(num)))
+
+ /* use magic gcc attributes to catch format errors */
+ void rprintf(enum logcode , const char *, ...)
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/sender.c rsync-2.5.7/sender.c
+--- sender.c.orig 2002-04-09 16:03:50.000000000 +1000
++++ sender.c 2003-12-04 15:23:30.000000000 +1100
+@@ -46,7 +46,7 @@ static struct sum_struct *receive_sums(i
+ int i;
+ OFF_T offset = 0;
+
+- s = (struct sum_struct *)malloc(sizeof(*s));
++ s = new(struct sum_struct);
+ if (!s) out_of_memory("receive_sums");
+
+ s->count = read_int(f);
+@@ -61,7 +61,7 @@ static struct sum_struct *receive_sums(i
+ if (s->count == 0)
+ return(s);
+
+- s->sums = (struct sum_buf *)malloc(sizeof(s->sums[0])*s->count);
++ s->sums = new_array(struct sum_buf, s->count);
+ if (!s->sums) out_of_memory("receive_sums");
+
+ for (i=0; i < (int) s->count;i++) {
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/token.c rsync-2.5.7/token.c
+--- token.c.orig 2002-04-08 18:35:30.000000000 +1000
++++ token.c 2003-12-04 15:23:30.000000000 +1100
+@@ -68,7 +68,7 @@ static int simple_recv_token(int f,char
+ int n;
+
+ if (!buf) {
+- buf = (char *)malloc(CHUNK_SIZE);
++ buf = new_array(char, CHUNK_SIZE);
+ if (!buf) out_of_memory("simple_recv_token");
+ }
+
+@@ -160,7 +160,7 @@ send_deflated_token(int f, int token,
+ rprintf(FERROR, "compression init failed\n");
+ exit_cleanup(RERR_STREAMIO);
+ }
+- if ((obuf = malloc(MAX_DATA_COUNT+2)) == NULL)
++ if ((obuf = new_array(char, MAX_DATA_COUNT+2)) == NULL)
+ out_of_memory("send_deflated_token");
+ init_done = 1;
+ } else
+@@ -322,8 +322,8 @@ recv_deflated_token(int f, char **data)
+ rprintf(FERROR, "inflate init failed\n");
+ exit_cleanup(RERR_STREAMIO);
+ }
+- if ((cbuf = malloc(MAX_DATA_COUNT)) == NULL
+- || (dbuf = malloc(CHUNK_SIZE)) == NULL)
++ if (!(cbuf = new_array(char, MAX_DATA_COUNT))
++ || !(dbuf = new_array(char, CHUNK_SIZE)))
+ out_of_memory("recv_deflated_token");
+ init_done = 1;
+ } else {
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/uidlist.c rsync-2.5.7/uidlist.c
+--- uidlist.c.orig 1999-03-02 08:16:50.000000000 +1100
++++ uidlist.c 2003-12-04 15:23:30.000000000 +1100
+@@ -41,7 +41,7 @@ static struct idlist *gidlist;
+
+ static struct idlist *add_list(int id, char *name)
+ {
+- struct idlist *list = (struct idlist *)malloc(sizeof(list[0]));
++ struct idlist *list = new(struct idlist);
+ if (!list) out_of_memory("add_list");
+ list->next = NULL;
+ list->name = strdup(name);
+@@ -241,7 +241,7 @@ void recv_uid_list(int f, struct file_li
+ id = read_int(f);
+ while (id != 0) {
+ int len = read_byte(f);
+- name = (char *)malloc(len+1);
++ name = new_array(char, len+1);
+ if (!name) out_of_memory("recv_uid_list");
+ read_sbuf(f, name, len);
+ if (!list) {
+@@ -264,7 +264,7 @@ void recv_uid_list(int f, struct file_li
+ id = read_int(f);
+ while (id != 0) {
+ int len = read_byte(f);
+- name = (char *)malloc(len+1);
++ name = new_array(char, len+1);
+ if (!name) out_of_memory("recv_uid_list");
+ read_sbuf(f, name, len);
+ if (!list) {
+diff -x '*tmpl' -x .cvsignore -r -x cvs.log -x CVS -x config.log -upd -N
rsync-2.5.6/util.c rsync-2.5.7/util.c
+--- util.c.orig 2003-01-20 08:37:11.000000000 +1100
++++ util.c 2003-12-04 15:23:30.000000000 +1100
+@@ -538,13 +538,6 @@ void strlower(char *s)
+ }
+ }
+
+-void *Realloc(void *p, int size)
+-{
+- if (!p) return (void *)malloc(size);
+- return (void *)realloc(p, size);
+-}
+-
+-
+ void clean_fname(char *name)
+ {
+ char *p;
+@@ -941,3 +934,23 @@ int _Insure_trap_error(int a1, int a2, i
+ return ret;
+ }
+ #endif
++
++
++#define MALLOC_MAX 0x40000000
++
++void *_new_array(unsigned int size, unsigned long num)
++{
++ if (num >= MALLOC_MAX/size)
++ return NULL;
++ return malloc(size * num);
++}
++
++void *_realloc_array(void *ptr, unsigned int size, unsigned long num)
++{
++ if (num >= MALLOC_MAX/size)
++ return NULL;
++ /* No realloc should need this, but just in case... */
++ if (!ptr)
++ return malloc(size * num);
++ return realloc(ptr, size * num);
++}
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/rsync/rsync.spec
============================================================================
$ cvs diff -u -r1.39.2.3.2.1 -r1.39.2.3.2.2 rsync.spec
--- openpkg-src/rsync/rsync.spec 29 Jul 2003 15:01:21 -0000 1.39.2.3.2.1
+++ openpkg-src/rsync/rsync.spec 4 Dec 2003 15:41:42 -0000 1.39.2.3.2.2
@@ -33,7 +33,7 @@
Group: Filesystem
License: GPL
Version: 2.5.6
-Release: 1.3.0
+Release: 1.3.1
# list of sources
Source0: http://rsync.samba.org/ftp/rsync/rsync-%{version}.tar.gz
@@ .
patch -p0 <<'@@ .'
Index: openpkg-web/news.txt
============================================================================
$ cvs diff -u -r1.7664 -r1.7665 news.txt
--- openpkg-web/news.txt 4 Dec 2003 15:32:24 -0000 1.7664
+++ openpkg-web/news.txt 4 Dec 2003 15:41:40 -0000 1.7665
@@ -1,3 +1,4 @@
+04-Dec-2003: Upgraded package: P<rsync-2.5.6-1.3.1>
04-Dec-2003: Upgraded package: P<subversion-0.34.0-20031204>
04-Dec-2003: Upgraded package: P<uvscan-4.24+4307-20031204>
04-Dec-2003: Upgraded package: P<blender-2.31a-20031204>
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [EMAIL PROTECTED]