Re: The dangers of static buffers in rsync code

2004-01-03 Thread Wayne Davison
On Mon, Dec 29, 2003 at 04:55:19PM -0500, Cristian Gafton wrote: > [...] f_name(file) results in problems handling hardlinks - and > possibly other issues as well This is fixed in the CVS version. Feel free to try it out. For those that don't like to use CVS, you can always rsync the latest unpa

Re: The dangers of static buffers in rsync code

2004-01-01 Thread Wayne Davison
On Mon, Dec 29, 2003 at 06:19:28PM -0800, Wayne Davison wrote: > Also, optimizing the string-compare case to avoid copying would > probably be a win as well. FYI, I've done some simple speed tests on my changes, and it cuts the user-CPU-seconds in half for a good-sized transfer (~50K files) where

Re: The dangers of static buffers in rsync code

2003-12-29 Thread Jim Salter
Fie on you, sir (although I mean that in the nicest possible way) - I'd like to see 2.6.0 get its head out the door. =) Jim Salter > Cristian Gafton wrote: It is a nasty trap, and if you agree that it should get fixed, I think it is better done as part of the 2.6.0 rollout than at some minor re

Re: The dangers of static buffers in rsync code

2003-12-29 Thread Cristian Gafton
On Mon, 29 Dec 2003, jw schultz wrote: > How about an even smaller hammer. > In recv_generator do a strlcpy of arg1 to an automatic. That would work for this aprticular case I explained - however, the fact is that f_name() can change the value of the arguments passed around inhigher level funct

Re: The dangers of static buffers in rsync code

2003-12-29 Thread Wayne Davison
On Mon, Dec 29, 2003 at 04:55:19PM -0500, Cristian Gafton wrote: > I have been trying for quite a while now to understand why is the > flist.c:f_name() function implemented using static buffers. Anyone > care to comment? It's fairly handy for short-lived stuff, such as a printf() statement that ne

Re: The dangers of static buffers in rsync code

2003-12-29 Thread jw schultz
On Mon, Dec 29, 2003 at 04:55:19PM -0500, Cristian Gafton wrote: > > I have been trying for quite a while now to understand why is the > flist.c:f_name() function implemented using static buffers. Anyone care to > comment? > > The immediate problem is that any call to f_name overrides the previ

The dangers of static buffers in rsync code

2003-12-29 Thread Cristian Gafton
I have been trying for quite a while now to understand why is the flist.c:f_name() function implemented using static buffers. Anyone care to comment? The immediate problem is that any call to f_name overrides the previous content (well, obvious). This, combined with the fact that several functi