Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
Input and OK ray@.
|
|
OK joris@.
|
|
|
|
from Tobias Stoeckmann
|
|
|
|
via henning@ with a twist by me
|
|
Matches GNU's behaviour. OK joris@.
|
|
input sources. Feedback and fixes from ray@ and fgsch@.
ok millert@ (six years ago) ray@ fgsch@
|
|
Matches GNU's behaviour. OK ray@.
|
|
OK markus@ and dtucker@.
|
|
|
|
When writing data into a buffer in the file_printf() function, the
length of the unused portion of the buffer is not correctly tracked,
resulting in a buffer overflow when processing certain files.
Adapted from FreeBSD's SA-07:04.file fix, with ok and some minor
tweaks from canacar@ and ray@.
|
|
|
|
|
|
|
|
|
|
and do for loops for real.
|
|
and matthieu@
This all revolves around putting ALL global variables into one single big
hash, and using flags. This removes some impossible to understand stuff,
like old varfind, and allows for some nice stuff.
- each time we reference a global variable, we create it, possibly as a dummy
variable.
- each time we go to the environment, we remember it, thus we no longer go
back to it.
Lists of dependant changes:
- isolate changes to oldVars and checkEnvFirst.
- remove VAR_CMD and VAR_GLOBAL contexts. The only distinction is in parsevar.
Split Parse_DoVar into Parse_DoVar and Parse_CmdlineVar
- rework var modules around obtain_global_var, observe flags in various
functions like Var_Value and Var_Seti.
- Var_Seti/Var_Appendi are almost the same code, use that internally.
- add magic to handle the very special SHELL variable.
- introduce Var_Definedi for the cases where we don't want the actual
value, to simplify tests.
- add keyword .poison, parse it and set global flags accordingly.
- do poison_checks where needed.
- document poison.
- in for loops, set variable temporarily, so that Var_SubstVar will also
substitute it in varmodifiers expressions.
|
|
no binary change
ok millert@
|
|
help/feedback from nick, krw, miod, todd, and deraadt
millert ok'd an earlier version of this diff
|
|
|
|
|
|
Previously, files in the 'Attic/' were linked into our filelist as being
'Attic/filename,v' this caused unneeded stress on certain functions
like cvs_file_classify() who had to do pointer voodoo to split out
the 'Attic/' part and do other very weird stuff to normalize the pathname
of these files.
Instead, we handle these files early in the start when we
build the fileslist in cvs_repository_getdir(). When encountering
the 'Attic/' directory, we recurse in it if required but instead of
using the 'Attic/' directory component as our base directory we stick
with the directory name where 'Attic/' resides in, resulting in the
correct filename while maintaining the correct RCSpath for the file.
This made the following things a lot easier:
(and in most cases actually fixed the below points)
- status with files in Attic/.
- checking out HEAD repositories with files in Attic/.
- checking out repositories with -rTAG.
- updating with -rTAG.
and as an added bonus the following now also works:
- correctly creating CVS/Tag in both local and remote mode thus
allowing update/status/and more to work correctly with the tagged tree.
(thanks to the correct handling of -rTAG cases).
- resetting tags with opencvs -A properly works too now.
This is a major step forward into the usability
of OpenCVS when it comes to maintaining multiple tagged trees, the next
logical step would be to fix commiting to branches.
enjoy you -stable cowards.
tested by myself, xsa, niallo and ckuethe
thanks guys!
|
|
OK joris@.
|
|
OK joris@
|
|
|
|
Simplifies further size tweaks if needed.
OK ray@.
|
|
|
|
|
|
OK joris and xsa.
|
|
Simplifies further size tweaks if needed.
OK niallo@ ray@.
|
|
the files based upon their entry in CVS/Entries instead of
using the local classifying code and trying to locate the RCSfile
on our local disks, which ofc does not work correctly.
OK niallo@
|
|
symbols from the table. This fixes the netstat issues some people reported.
OK henning@
|
|
|
|
- stone() and newcand() cannot return < 0, so don't check it.
- \r, \v, \f are also whitespace
OK joris
|
|
only required in server mode due to the fact we need to let the client
now its been removed, found this the hard way.
|
|
directory as <remote> instead of /tmp/cvs-serv<pid>
|
|
on the fingers. This was recently added to GNU sdiff:
http://www.nabble.com/sdiff-UI-enhancement-t3877253.html
Initial diff from Steven Kreuzer <skreuzer (at) exit2shell dot com>.
OK jmc, millert, sobrado, deraadt.
|
|
- prepare() only returns 0, so change it to void and remove code
that checks its return value.
- Rename diff_len[] to len[].
- Remove casts that made the code a no-op:
(size_t)filesize <= SIZE_MAX
OK xsa
|
|
from otto; ok millert
|
|
sends that need a 'Directory' request first, so we do not
end up with very weird and possibly insecure behaviour.
more soon!
ok niallo@ ray@ xsa@
|
|
implemented anyway. OK ray@ niallo@.
|
|
with GNU sdiff.
From Steven Kreuzer <skreuzer () exit2shell ! com>
|
|
noticed and "yes, that's much shinier" by ckuethe.
|
|
handle files that have been removed from the repository
correctly, which resulted in them still being in the working copy
after doing an update.
noticed and diff tested by ckuethe@.
|
|
- Fix a file descriptor leak.
- Print usage if -a and -c flags are passed a zero-length string.
OK millert and moritz
|
|
OK joris@ niallo@.
|