Index: src/import.c =================================================================== RCS file: /home/ncvs/src/contrib/cvs/src/import.c,v retrieving revision 1.12 diff -u -r1.12 import.c --- src/import.c 15 Apr 2004 01:17:27 -0000 1.12 +++ src/import.c 27 May 2008 21:42:02 -0000 @@ -208,6 +208,10 @@ argv[0]); } + if ((cp = strstr(current_parsed_root->directory, "/ncvs")) != NULL) { + error (1, 0, "cvs imports are disabled for ncvs. see developers email. %s", current_parsed_root->directory); + exit(1); + } /* * Consistency checks on the specified vendor branch. It must be * composed of only numbers and dots ('.'). Also, for now we only Index: src/rcs.c =================================================================== RCS file: /home/ncvs/src/contrib/cvs/src/rcs.c,v retrieving revision 1.28 diff -u -r1.28 rcs.c --- src/rcs.c 22 Apr 2005 17:58:25 -0000 1.28 +++ src/rcs.c 27 May 2008 19:31:13 -0000 @@ -4997,6 +4997,8 @@ int status, checkin_quiet; struct tm *ftm; time_t modtime; + time_t limit = 0; + char *cvs_timestamp; int adding_branch = 0; char *workfile = xstrdup (workfile_in); #ifdef PRESERVE_PERMISSIONS_SUPPORT @@ -5050,6 +5052,13 @@ } else (void) time (&modtime); + cvs_timestamp = getenv("CVS_TIMESTAMP"); + if (cvs_timestamp) { + limit = strtol(cvs_timestamp, NULL, 0); + if (limit != 0 && limit != -1) { + modtime = limit; + } + } ftm = gmtime (&modtime); delta->date = (char *) xmalloc (MAXDATELEN); (void) sprintf (delta->date, DATEFORM, Index: src/subr.c =================================================================== RCS file: /home/ncvs/src/contrib/cvs/src/subr.c,v retrieving revision 1.1.1.13 diff -u -r1.1.1.13 subr.c --- src/subr.c 10 Jun 2004 19:05:38 -0000 1.1.1.13 +++ src/subr.c 27 May 2008 19:27:57 -0000 @@ -376,6 +376,15 @@ if (cache != NULL) return cache; + { + char *name; + + name = getenv("CVS_AUTHOR"); + if (name) { + cache = strdup(name); + return cache; + } + } uid = getuid (); if (uid == (uid_t) 0) {