summaryrefslogtreecommitdiff
path: root/usr.bin/cvs/file.c
AgeCommit message (Collapse)Author
2006-05-27commit the new opencvs code, i have been hacking onJoris Vink
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.
2006-04-14remove a metric buttload of excessive ()Theo de Raadt
no binary change; ok ray
2006-04-05Use variable names for sizeof, remove casts in front of xmalloc,Ray Lai
use xcalloc and xstrdup where appropriate, and other stuff. OK joris@
2006-04-02spacing;Joris Vink
2006-01-02#include's cleanup; ok joris@ niallo@.Xavier Santolaria
2005-12-12only xfree() cf->cf_dir when it's not NULL;Joris Vink
2005-12-10switch to xmalloc stuff, me and xsa@ agreed on this a longJoris Vink
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@
2005-12-04more code cleanup, remove useless flags and parts of codeJoris Vink
that never got used in the first place;
2005-12-03fix date handling in opencvs, this was broken since the very start.Joris Vink
now, when you checkout a tree with gnu cvs, opencvs no longer sees all the files as modified, and visa versa. this actually makes gnu cvs and opencvs dance together in working copies.
2005-12-03remove unused and useless functions, they just get in the way;Joris Vink
2005-12-03add very basic support for the following stuff:Joris Vink
- 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@
2005-11-12- remove strtab stuff. serves no useful purpose.Niall O'Higgins
diff is from joris@, committing on his behalf because his net connection is very dodgy right now.
2005-10-27if cvs_file_loadinfo fails, return failure to the caller insteadJoris Vink
of acting like everything went fine. this fixes eternal loops in the client which waits for data from the server while the server waits for data from the client. problem found and fixed by Nuno Morgadinho, thanks!
2005-10-16less 'pirates of the carribean' like error message;Joris Vink
2005-10-07knf and spacing, ok joris@Reyk Floeter
2005-09-15strip trailing slashes from any arguments passed to opencvs.Joris Vink
ok xsa@
2005-09-15check in cvs_mkadmin() wether we need to create or not theXavier Santolaria
CVS/Tag file. Sync the rest of the code accordingly; OK joris@.
2005-09-14knfJoris Vink
2005-09-13fix conditions when the base directory should be passed to the commandJoris Vink
callback. fixes local commands with directories as arguments (like 'add'). problem found and OK xsa@
2005-09-11only remove and free a cvsroot struct if it has been added inJoris Vink
cvsroot_parse(). fixes segfaults opencvs has been receiving when cvsroot_parse() fails. "go ahead" xsa@
2005-09-06more bits for the local remove command support; OK joris@.Xavier Santolaria
2005-09-06Make sure entries do not go away when we run through them in the file code.Joris Vink
Fixes corrupt Entry files. Problem found by Mike Pechkin, thanks.
2005-08-19do not close the entries file until all files depending on it haveJoris Vink
been passed to the callback. ok xsa@
2005-08-17keep a pointer to the CVSENTRIES in the CVSFILE structure.Joris Vink
ok xsa@
2005-08-17trailing whitespaces ...Xavier Santolaria
2005-08-14missing casts; ok jorisXavier Santolaria
2005-08-11fgets() expects the 2nd arg to be an int.Xavier Santolaria
2005-08-03check only once for the HOME environment variable and reuseXavier Santolaria
its value (if any) to check for the .cvsrc and .cvsignore files; ok jfb@ joris@.
2005-07-30o remove a call to cvs_ent_open() from cvs_file_create(),Moritz Jodeit
since cvs_mkadmin() already does this for us. o don't deref NULL ptr when cvs_ent_open() fails. o fix format string in cvs_log(). ok joris@
2005-07-29minor KNF;Xavier Santolaria
2005-07-29make more use of error codes in the file code.Joris Vink
ok xsa@
2005-07-29correctly build the repository path in cvs_load_dirinfo() so we do notJoris Vink
end up with a totally messed up repopath when there are no admin files present. problems reported by mpech@ and Nuno Margadinho. tested by Nuno Margadinho, thanks a lot!
2005-07-27rename cvs_remove_dir() to cvs_rmdir() because it might be confusingXavier Santolaria
with the `remove' command local functions. ok joris@.
2005-07-25make it compile without warningsJoris Vink
2005-07-25KNF;Xavier Santolaria
2005-07-24do not bail out in client mode if the file is not on disk at all.Joris Vink
noticed and ok xsa@
2005-07-24"cvslog.*" should really be "cvslog*"Joris Vink
2005-07-24add "cvslog.*" to the ignore listJoris Vink
noticed by xsa@
2005-07-23rewrite of the file code. the previous one was justJoris Vink
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@
2005-07-22use the cf_name field of the CVSFILE struct instead of using the oldJoris Vink
CVS_FILE_NAME macro. This macro used to be nifty because of all the referencing for the names, but since we don't do that anymore and use cf_name directly... byebye CVS_FILE_NAME() okay xsa@
2005-07-18oops, last commit broke a few thingsJoris Vink
2005-07-18let it compile without any warningsJoris Vink
2005-07-15if the file has been added but is not on disk make sure we can pick it upJoris Vink
as being "added". fixes the log command on our server-side for added files. tested & ok xsa@
2005-07-07do not run the callback for "." twice.Joris Vink
ok xsa@
2005-07-07add a field to CVSFILE which holds the timestamp from the Entries file.Joris Vink
usefull for some commands. ok xsa@
2005-07-07remove trailing whitespacesJoris Vink
from deraadt@
2005-07-05if we can't stat the file and there is no entry for it, don't failJoris Vink
but assume it is a regular file and it is in unknown state. ok xsa@
2005-07-01- plug memleak in cvs_file_getdir().Joris Vink
- fix behaviour regarding unknown directories. ok xsa@
2005-06-17correctly build a temporary copy of the client its repositoryJoris Vink
localy, so the server can execute the local commands on it and pipe the output to the client. with this diff in, our server is now working, please note that we currently don't have support for all commands yet, but you can expect this soon. ok xsa@
2005-06-17when pruning don't try to remove any directories outsideJoris Vink
the actual repository. reported by david@, ok xsa@