summaryrefslogtreecommitdiffstats
path: root/usr.bin/cvs/entries.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* rcsnum_free() -> free() cleanups. From Michael W. Bombardieri.fcambus2016-10-131-4/+3
| | | | OK millert@
* Remove xfree(), like already done for RCS. From Michael W Bombardieri,nicm2015-11-051-16/+15
| | | | ok mmcc
* Do not cast result of malloc/calloc/realloc* if stdlib.h is in scopederaadt2015-08-201-4/+4
| | | | ok krw millert
* Fix modified timestamp in output of opencvs status.stsp2015-04-041-1/+7
| | | | Patch by joris via tech@; reminded by tedu
* Replace <sys/param.h> with <limits.h> and other less dirty headers wherederaadt2015-01-161-8/+8
| | | | | | | | | possible. Annotate <sys/param.h> lines with their current reasons. Switch to PATH_MAX, NGROUPS_MAX, HOST_NAME_MAX+1, LOGIN_NAME_MAX, etc. Change MIN() and MAX() to local definitions of MINIMUM() and MAXIMUM() where sensible to avoid pulling in the pollution. These are the files confirmed through binary verification. ok guenther, millert, doug (helped with the verification protocol)
* properly register Questionable files using CVS/Entries server-sidejoris2009-03-191-5/+12
| | | | in order for them to show up as "? foobar" when opencvs is in server mode.
* we no longer push out Set-sticky to the client when writingjoris2009-02-231-4/+1
| | | | | | | | | | | | our Tag file on the server or in cvs_mkpath(), this caused problems for the "fast checkout" mechanism when a tag was supplied. instead, write out any directory sticky tag when we are checking out a file in that directory, this way we can use our "fast checkout" mechanism (no /tmp required) even for -r and -d without breaking working copies because they were missing CVS/Tag files. "looks good" tobias@
* unfuck CVS/Tag creation, karma sucks doesn't it.joris2008-06-141-2/+2
|
* Added support for sticky date set in CVS/Tag and CVS/Entries per directory.tobias2008-06-141-5/+10
| | | | ok joris
* don't always re-open the same CVS/Entries file, instead keep thejoris2008-06-141-9/+23
| | | | | | | | | | | | last opened CVS/Entries around to operate on and close it whenever we switch directory. gives us a small performance boost, obviously. while doing this, switch the way we write revisions to disk by using fwrite(3) so stuff can get written to disk in chunks instead of writing everything line by line, another win. with help from otto@ ok tobias@
* Avoid possible NULL pointer dereferences by using reentrant versionstobias2008-06-111-4/+4
| | | | | | of time functions. ok joris
* Properly handle merged files and conflicts which may arrise while merge.tobias2008-06-091-4/+8
| | | | | | | Instead of ignoring all files which contain possible conflict markers, only watch out for files which have actually been merged. With input by and ok joris.
* spacingderaadt2008-03-011-2/+2
|
* + #define CVS_DATE_FMT "%Y.%m.%d.%H.%M.%S"xsa2008-02-101-3/+3
| | | | ...and use it.
* - cvs_write_tagfile() is not responsible to remove CVS/Tag itselfjoris2008-02-101-3/+1
| | | | | | - construct right CVS/Repository paths in cvs_mkpath() fixes remote Issues;
* properly initialize cvs_specified_date so we dont end up withjoris2008-02-101-5/+6
| | | | random stuff going on
* parse any date tags set in CVS/Tag or CVS/Entries properly, and usejoris2008-02-101-5/+33
| | | | | | them for commands; with tobias@
* Introduce cvs_ent_line_str() - formats CVS/Entries lines.xsa2008-02-091-1/+20
| | | | OK tobias@.
* Support for checkout -D extended:tobias2008-02-091-3/+6
| | | | | | Properly write CVS/Tag and CVS/Entries on various combinations of -r and -D. OK joris@
* Stripped off 'nb', which was (or was supposed to be) used to distinguishtobias2008-02-041-3/+8
| | | | | | | between a named branch and a revision number supplied by -r. This can be done easier in cvs_write_tagfile directly. OK joris@
* Make CVS/Entries.Log look the same as GNU cvs'. This way interoperabilitytobias2008-02-041-4/+8
| | | | | | is possible. OK joris@
* xmalloc + memset -> xcalloctobias2008-01-101-3/+2
|
* CVS/Entries needs at least one line specifying a 'D'irectory. If thetobias2007-11-111-3/+11
| | | | | current directory has subdirectories, there is no need to apply another 'D' line. Sticks at GNU cvs behaviour.
* strcspn() changegilles2007-10-051-8/+3
| | | | was okay'd by pyr@ and ok by millert@
* missing header for strptimechl2007-09-251-1/+2
| | | | ok joris@
* better branching/sticky tag support, no branch commits yet though.joris2007-09-221-7/+16
|
* we no longer create a 0 sized file in our /tmp/cvs-serv<pid> serverjoris2007-09-221-3/+8
| | | | | | | directory when a client sends us info about a file that is up to date. instead, remember the file is up to date in our CVS/Entries. Saves us a lot of headaches on very big trees like src/
* Removed dead code.tobias2007-09-041-13/+1
| | | | OK joris@, ray@
* Rework the way opencvs works in relation to files in the Attic/:joris2007-07-031-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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!
* don't try to parse a server conflict message as a date.niallo2007-06-021-8/+10
| | | | | | makes cvs remote merging with conflicts work a bit better. ok joris@ xsa@
* Treat lines that start with "dummy timestamp from new-entry" as aray2007-05-261-2/+2
| | | | | | dummy timestamp, not just lines that match it exactly. OK xsa@.
* Figure out DST by setting tm_isdst element to -1.xsa2007-05-161-2/+3
| | | | From Tobias Stoeckmann. OK otto@.
* general includes cleanup sweep. ok joris@ niallo@otto2007-02-221-3/+4
|
* Fix const inconsistencies, void pointer artithmetic and a few otherotto2007-02-191-2/+2
| | | | things. now gcc -Wall and lint are more happy. ok joris@ xsa@
* cvs_path_cat() removal since we can now easily handle thatxsa2007-02-171-13/+11
| | | | | functionality w/ xsnprintf(); Initial diff started by thib@. OK thib@ joris@.
* dont bother trying to parse empty lines as dates.joris2007-02-041-6/+7
| | | | | | cuts away some cpu time. from Tobias Ulmer, thanks a million!
* mktime() produces local time, so add in tm_gmtoff to get UTC.otto2007-01-271-1/+2
| | | | ok xsa@ and joris@
* Handle CVS/Entries and file timestamp correctly so we dojoris2007-01-261-3/+8
| | | | | | | | | not mistakenly see a file as Modified while it is not. As a result, we can remove the very hackish cvs_hack_time() and GNU cvs and opencvs should almost get along now. lotsa help and okay The otto@
* use more stack allocations for fixed size buffers. ok xsa@ joris@otto2007-01-251-16/+7
|
* terminate CVS/Entries with a newline.pyr2007-01-241-1/+2
| | | | ok joris@, xsa@
* the ok from xsa was for another diff, rollback previous commit.pyr2007-01-241-2/+1
|
* put a newline at the end of the Entries file, this syncs withpyr2007-01-241-1/+2
| | | | | GNU cvs behavior and is easier on the eyes. ok xsa@
* and thou shalt not leak memory when removing entriesjoris2007-01-121-2/+5
|
* check for cvs_path_cat() return value.xsa2006-12-071-4/+13
|
* use errno where appropriate in error messages.xsa2006-12-071-8/+9
|
* Reuse len instead of calling strlen again.ray2006-10-241-3/+3
| | | | OK xsa@.
* more straightforward trace (-t) output, too much is just too noisy.joris2006-07-091-3/+5
|
* useless casts are so the 80sjoris2006-06-141-3/+3
|
* handle existing CVS/Tag file when adding new directories. OK joris@.xsa2006-06-141-1/+109
|
* add support for the -D option of update,joris2006-06-061-2/+2
| | | | | | | -D allows you to update a file to matching a specified date: opencvs up -D "1 hour ago" foobar will take the first matching revision that was commited 1 hour ago.