History log of /openbsd-current/usr.bin/cvs/cmd.c
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.69 16-Jan-2015 deraadt

Replace <sys/param.h> with <limits.h> and other less dirty headers where
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)


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.68 03-Feb-2008 tobias

Added rdiff support. In order to do this, some output and option fixes
had to be done for diff, too.

OK joris@


# 1.67 01-Feb-2008 tobias

Added rannotate support

OK xsa@


# 1.66 21-Jan-2008 tobias

Fixed cvs_findcmd I broke last time: cvs_findcmd is called during .cvsrc
parsing and must have a local cmdp variable.

> Spotted by Pierre Riteau.


# 1.65 10-Jan-2008 tobias

Added support for rtag in local and remote setups (with interoperability
with GNU cvs). Basically we already had rtag in place as tag is supposed
to work with revisions in working directory, but our implementation was
wrong. Fixed that on the fly as well.


# 1.64 10-Jan-2008 tobias

Simply the use of cmdp and cvs_command by zapping cvs_command and working
solely with cmdp. This remedies some reliability issues with invalid
commands supplied and also fixes a GNU cvs style incompatibility with
release command.

> Based on patch from Igor Zinovik


# 1.63 25-Sep-2007 chl

remove unused extern variable

ok joris@


# 1.62 04-Sep-2007 tobias

Removed dead code.

OK joris@, ray@


Revision tags: OPENBSD_4_2_BASE
# 1.61 27-Jun-2007 xsa

Remove last bits about login and logout commands, which will never be
implemented anyway. OK ray@ niallo@.


# 1.60 26-Jun-2007 xsa

Bring back the release command. More work to be done though.
OK joris@ niallo@.


# 1.59 26-Jun-2007 niallo

add support for cvs rlog.
from Mickey.

ok joris@ ray@


# 1.58 18-Jun-2007 joris

first stab at history stuff for opencvs, currently only writes
to CVSROOT/history but cannot parse it yet with the 'history' command.

"Commit it." ray@


Revision tags: OPENBSD_4_1_BASE
# 1.57 22-Feb-2007 otto

general includes cleanup sweep. ok joris@ niallo@


# 1.56 19-Feb-2007 otto

Fix const inconsistencies, void pointer artithmetic and a few other
things. now gcc -Wall and lint are more happy. ok joris@ xsa@


# 1.55 27-Nov-2006 xsa

client-side of the annotate command is usable, build it too.


# 1.54 14-Nov-2006 xsa

Bring back version command. Still needs tweaks to make the
gnu cvs client<->opencvs server setup work. Rest works fine.


# 1.53 13-Nov-2006 xsa

Add server-side bits for admin command.


Revision tags: OPENBSD_4_0_BASE
# 1.52 07-Jul-2006 joris

first part of opencvs remote, fairly useable on existing trees
although i advise against using it on real development trees for now.

only a few commands work right so far:
- commit
- diff
- status
- log
- update (partially working)

if you feel like testing remote and run into bugs feel free to
contact me, and please include a full trace (-t).


# 1.51 12-Jun-2006 xsa

bring back a working version of the `cvs init' command. OK joris@.


# 1.50 07-Jun-2006 xsa

bring back tag command; basic tag addition/deletion available. OK joris@.


# 1.49 31-May-2006 joris

add support for the export command.

export does exactly the same as checkout except it does
not create any administrative (CVS/) directories.


# 1.48 30-May-2006 joris

hello import, only works for non-existing repositories right now,
but work is in progress for importing stuff into existing repositories.


# 1.47 29-May-2006 joris

add remove support, hacked by xsa@ but lots of modifications
from me to actually make it work properly.

commiting since xsa@ is not around and i want to move forward.
ray@ agrees.


# 1.46 28-May-2006 joris

add basic 'cvs log' support.


# 1.45 28-May-2006 joris

enable basic add command, only works on files right now.


# 1.44 27-May-2006 joris

commit the new opencvs code, i have been hacking on
this for the past 2 weeks now and it should go in at
the start of the hackathon so others can help out.

this code is a lot safer, smarter, faster and best of
all it is actually doing what it is suppose to do!

basic checkout, update, status, diff and commit are
working in local mode only.
there is no support for any remote setups now.


# 1.43 14-Apr-2006 deraadt

remove a metric buttload of excessive ()
no binary change; ok ray


Revision tags: OPENBSD_3_9_BASE
# 1.42 02-Jan-2006 xsa

#include's cleanup; ok joris@ niallo@.


# 1.41 30-Dec-2005 reyk

knf


# 1.40 30-Dec-2005 joris

major cleanup of the functions handling the remote cvs protocol.
makes the code a lot more readable and understandable.

ok xsa@ and niallo@


# 1.39 10-Dec-2005 joris

switch to xmalloc stuff, me and xsa@ agreed on this a long
time ago, but we were being held back by jfb. too bad for him.

next step is to use fatal() through out the code for unrecoverable
errors instead of trying to be all nice and fluffy and reach main() again.

ok niallo@ and xsa@


# 1.38 03-Dec-2005 joris

add very basic support for the following stuff:

- checkout in local mode (example: /cvs)
- update in local and server mode (example: /cvs and user@host:/cvs)
- import in local and server mode (example: /cvs and user@host:/cvs)

what remains to be done:

- not all options are supported yet, and update cannot pick up newly
added files yet. these things are pending and will be commited
real soon.

- checkout only works locally right now.

- fix rcs parsing code so that we don't fucking hog 100% cpu
on really BIG BIG BIG ass trees.

mainly tested by pedro@ and myself, thanks a lot pedro!

"go for it" niallo@


# 1.37 22-Oct-2005 joris

- don't check for admin files when running init;
- don't pass the Entry for newly added files to cvs_date_parse()
- in rcs_rev_add don't bother looking for the previous rev if we
are creating the RCS file.

from PR 4575


# 1.36 07-Oct-2005 reyk

knf and spacing, ok joris@


# 1.35 13-Sep-2005 joris

unbreak opencvs server
ok xsa@


# 1.34 07-Sep-2005 joris

make sure the administrative files that the commands depend on are
present before we try to continue.

ok xsa@


Revision tags: OPENBSD_3_8_BASE
# 1.33 26-Jul-2005 xsa

move trace message before calling cvs_connect();


# 1.32 25-Jul-2005 xsa

KNF;


# 1.31 23-Jul-2005 joris

rewrite of the file code. the previous one was just
a mess and not clean.
this code is much cleaner, faster, and uses less memory overall.

tested by xsa@, brad@, Michael Knudsen, and myself.
okay xsa@


# 1.30 21-Jul-2005 xsa

<sys/param.h> is already included in "cvs.h", no need to duplicate;


# 1.29 08-Jul-2005 joris

don't try to run the pruning function on server side.


# 1.28 07-Jul-2005 joris

remove trailing whitespaces

from deraadt@


# 1.27 04-Jul-2005 xsa

enable all commands; ok joris@.


# 1.26 14-Jun-2005 joris

finish pruning support, this has been sitting
in my tree since c2k5

ok xsa@


# 1.25 13-Jun-2005 xsa

move the CVSROOT check earlier in the process, this way we get the
CVSROOT checked before the commands are run ... ok joris@.


# 1.24 07-Jun-2005 joris

don't forget to call cvs_disconnect() at the end
of a remote connection.

ok xsa@


# 1.23 02-Jun-2005 joris

handle commands which do not have any init callback a bit
better, eliminates the use of dummy functions.

OK jfb@


# 1.22 31-May-2005 xsa

headers ordering (alphabetically) and cleanup, from mbalmer@ and myself;


# 1.21 25-May-2005 jfb

no need to check cvs_trace before outputting a trace, the log code
does it for us


# 1.20 24-May-2005 jfb

remove debugging messages


# 1.19 24-May-2005 jfb

Merge the cvs_cmd and cvs_cmd_info structures and add the necessary
fields to hook local versions of the commands. This needs to go in
before it gets any bigger

ok joris


# 1.18 23-May-2005 xsa

add some logging for `cvs -t' option use; ok joris@


# 1.17 20-May-2005 joris

execute the command callback at the same time we are building
the in-memory filelist. cuts down on execution time for larger trees.

"put it in!" jfb@


# 1.16 25-Apr-2005 joris

first part of file API changes:

- fix our behaviour regarding directories or files in a different
directory than we currently are as arguments to commands, this
allows stuff like "cvs status sys/arch/i386/Makefile" to work.

- when parsing a pathname only load the needed nodes of the path
instead of loading *everything* in memory.

the next step in this is to merge the collection and callback
execution together.

ok jfb@, xsa@


# 1.15 25-Apr-2005 jfb

* add missing 'R' flag in diff synopsis
* add the CVS_EX_BADROOT return code to indicate that there was no
CVSROOT given or it was invalid

ok joris, xsa


# 1.14 18-Apr-2005 jfb

remove debugging leftovers


# 1.13 18-Apr-2005 jfb

Modify the CVSFILE structure using a union to keep information about
both files and directories. We can now keep the revision number for
regular files, and don't need to fetch the appropriate entry in the
command callbacks. This saves a huge amount of parsing on Entries
files.

ok joris@


# 1.12 13-Apr-2005 joris

cmd_helper() returns error codes > 0 or 0 on success.


# 1.11 12-Apr-2005 joris

use the new CVS_EX_* error codes here as well.


# 1.10 12-Apr-2005 joris

introduce our own set of error codes used by the commands to report
what exactly went wrong in case of an error.

ok jfb@


# 1.9 11-Apr-2005 joris

don't include sysexits.h now we don't use those error codes
anymore.


# 1.8 11-Apr-2005 joris

remove EX_USAGE error codes

ok jfb@


# 1.7 03-Apr-2005 xsa

first round of EX_* exit codes removal; ok joris@.


# 1.6 01-Apr-2005 joris

make sure we don't do unneeded things for the version command.


# 1.5 31-Mar-2005 joris

make sure the server command can still be reached with the
new framework.

ok xsa@


# 1.4 31-Mar-2005 joris

- as long as we are using the sysexits.h error codes make sure
we handle them.
- handle cmd_sendflags() when it fails.


# 1.3 29-Mar-2005 joris

allow cmd_options to be NULL, so that commands which
have no options will work fine.


# 1.2 28-Mar-2005 joris

fix argument count in cvs_startcmd()

ok jfb@


# 1.1 24-Mar-2005 joris

add the first pieces of our new command framework.

ok jfb@