/contrib/cvs/src/ChangeLog-96

https://bitbucket.org/freebsd/freebsd-head/ · #! · 4434 lines · 3324 code · 1110 blank · 0 comment · 0 complexity · 41a7434c0f28d95ff0a2b81613b9fc09 MD5 · raw file

Large files are truncated click here to view the full file

  1. Mon Dec 30 15:43:48 1996 Abe Feldman <feldman@harvey.cyclic.com>
  2. * checkout.c (build_dirs_and_chdir): Reproduced block containing
  3. Create_Admin, placing it before Subdir_Register.
  4. * sanity.sh (basicb): Added tests 1a and 9a to test above changes
  5. to the checkout command.
  6. Mon Dec 30 13:29:14 1996 uz@wuschel.ibb.schwaben.com (Ullrich von Bassewitz)
  7. and Jim Kingdon <kingdon@harvey.cyclic.com>
  8. * cvs.h (CVSEDITPREFIXLEN): New define.
  9. * logmsg.c (do_editor): Use CVSEDITPREFIXLEN when deciding whether
  10. to strip off CVSEDITPREFIX and when telling the user what we will
  11. strip off.
  12. Sun Dec 22 22:06:49 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  13. * logmsg.c (do_verify): If noexec, skip the verification *without*
  14. printing a message. Use cvs_output not printf. Skip verification
  15. for client_active.
  16. Wed Dec 18 12:27:35 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  17. * repos.c (Name_Repository): Add comment regarding wording of
  18. "*PANIC*" error message.
  19. 1996-12-18 Jim Kingdon
  20. * client.c (call_in_directory): If the directory we are about
  21. to create is the same as CVSADM as seen by fncmp (for example,
  22. it is "cvs" and filenames are case-insensitive), then give a
  23. fatal error.
  24. Tue Dec 17 13:14:22 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  25. * options.h.in: Add comments about SETXID security holes.
  26. * logmsg.c (do_verify): Reindent comments. Check errno if return
  27. code from run_exec is -1, not if it is 1.
  28. * sanity.sh (info): Move tests info-4 and info-8 to end and rename
  29. them. Add verifymsg tests. Instead of forcibly removing loginfo,
  30. remove it nicely (test info-11).
  31. Tue Dec 17 12:45:32 1996 Abe Feldman <feldman@cyclic.com>
  32. * commit.c, import.c: Call do_verify as well as do_editor.
  33. * cvs.h (CVSROOTADM_VERIFYMSG): Define.
  34. * logmsg.c, cvs.h (do_verify, verifymsg_proc): New functions.
  35. (verifymsg_script): New variable.
  36. * mkmodules.c (filelist): Add CVSROOTADM_VERIFYMSG.
  37. Mon Dec 16 13:24:47 1996 Ian Lance Taylor <ian@cygnus.com>
  38. * lock.c (remove_locks): New static function, copied from part of
  39. Lock_Cleanup.
  40. (Lock_Cleanup): Call remove_locks.
  41. (Writer_Lock): Call remove_locks rather than Lock_Cleanup when
  42. waiting for a lock.
  43. Thu Dec 12 10:36:37 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  44. * login.c (get_cvs_password): If CVS_PASSWORD is set, print a
  45. warning (and then proceed to ignore it). It was a documented
  46. feature, so we should point people who were using it to the
  47. replacement.
  48. Mon Dec 9 12:35:43 1996 Ian Lance Taylor <ian@cygnus.com>
  49. * server.c (server_updated): Change comment to only worry about
  50. umask in the rsh case.
  51. (server): Create the temporary directory, and change the mode to
  52. S_IRWXU.
  53. (switch_to_user): Set the umask to 0, not 077.
  54. Mon Dec 9 10:58:28 1996 Jim Blandy <jimb@floss.cyclic.com>
  55. * login.c (get_cvs_password): Remove code to check for value of
  56. CVS_PASSWORD. Keeping cleartext passwords in environment
  57. variables is a really bad idea on Unix, since anyone can print
  58. out a processes' environment using 'ps' (on BSD variants
  59. anyway). Update help message.
  60. Fri Dec 6 15:59:40 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  61. * sanity.sh: When matching "use .cvs commit. to remove this file
  62. permanently" messages, change "cvs" to "${PROG}".
  63. (rdiff, binfiles): Likewise.
  64. This fixes testing a program named something other than "cvs", e.g.
  65. $ cp cvs cvs-test
  66. $ /bin/sh <srcdir>/sanity.sh `pwd`/cvs-test
  67. 1996-12-02 Jim Kingdon
  68. * client.c: In comment saying that socket buffers don't
  69. implement the blocking routine, say they are blocking.
  70. * buffer.h (struct buffer): In description of input function,
  71. describe blocking, non-blocking, and NEED more fully. Say
  72. what happens if we read a nonzero amount less than NEED and
  73. then get end of file.
  74. * client.c (socket_buffer_input): If NEED == 0, still call
  75. recv (once). Handle the case where recv returns 0.
  76. Sat Nov 30 15:10:07 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  77. * subr.c, cvs.h (file_has_markers): New function.
  78. * rcs.h (RCS_MERGE_PAT): Now a fixed string not a regexp.
  79. * options.h.in (GREP): Removed; no longer used.
  80. * update.c (update_fileproc), commit.c (check_fileproc): Call
  81. file_has_markers rather than GREP.
  82. * rcscmds.c (RCS_merge): Just give a fatal error in the case where
  83. we had been calling GREP. I suspect noone is using this code
  84. any more.
  85. * sanity.sh (conflicts): Rewrite tests 131, 132, and 133 to use
  86. dotest; tests that the above changes didn't break anything.
  87. Fri Nov 29 09:06:41 1996 fnf@ninemoons.com (Fred Fish)
  88. and Jim Kingdon <kingdon@harvey.cyclic.com>
  89. * checkout.c (safe_location): Only call readlink if HAVE_READLINK.
  90. * run.c (piped_child, filter_stream_through_program): If
  91. HAVE_VFORK, call vfork not fork.
  92. * run.c (run_exec): Add comment about why we use vfork.
  93. Mon Nov 25 12:48:31 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  94. * release.c (release): Don't return after processing the first
  95. argument; that kind of defeats the purpose of having a loop, eh?
  96. For client, close the connection after we've processed them all.
  97. * sanity.sh: Remove workaround for modules2-8 test; tests for
  98. above fix. Adjust modules2-6 test to answer both questions.
  99. * login.c: Reindent (all of get_cvs_password, a handful of lines
  100. elsewhere).
  101. Cleanups to release, mostly cosmetic:
  102. * release.c (release_server): New function; breaks out server code
  103. from the release function.
  104. * release.c: Move delete_flag inside the release function.
  105. * release.c (release): Reindent. Rewrite comments about how the
  106. implementation could be improved. Don't declare variables as
  107. "register". Include errno in error message. Don't cast result of
  108. printf to void. Remove unused variable srepos.
  109. * release.c: Remove comments at top of file about what it does.
  110. They were not particularly coherent and they were also out of date
  111. (I think). Likewise for comment in release function about "if we
  112. are in a repository".
  113. * release.c: Change "module" to "directory" in a few messages
  114. since that is what is meant.
  115. * sanity.sh: In tests ignore-195 and ignore-193, change expected
  116. message accordingly.
  117. Sun Nov 24 11:30:55 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  118. * sanity.sh: Clarify a few items in the todo list.
  119. * log.c (log_parse_date): Use the "end" of the epoch not "next
  120. week" as the time which means "no end time".
  121. * sanity.sh (rcs): New test, tests dates and importing RCS files.
  122. 1996-11-19 Jim Kingdon
  123. Visual C++ lint:
  124. * hash.c: Declare qsort_comp.
  125. * update.c: Declare isremoved.
  126. 1996-11-19 Jim Kingdon <kingdon@harvey.cyclic.com>
  127. * root.c, repos.c, modules.c, create_adm.c: Change all calls to
  128. strip_path to strip_trailing_slashes. Basically strip_path is
  129. just an unneeded complication (we should keep the pathname the way
  130. the user specifies it, and the system can worry about things like
  131. consecutive /'s if it wants to). Stripping trailing slashes is
  132. potentially dubious for the same reason, but it is a somewhat
  133. different case which I won't try to tackle now.
  134. * cvs.h (strip_path): Remove declaration.
  135. Tue Nov 19 15:18:13 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  136. There are a lot of details to this change, but the concept is
  137. relatively simple: make it so that for every CVSLCK lock that we
  138. might take out, there is a flag which is set iff we have created
  139. the CVSLCK directory.
  140. * lock.c (struct lock): New structure.
  141. * lock.c: Remove static variables repository and cleanup_lckdir.
  142. They are replaced by global_readlock.repository and
  143. global_readlock.have_lckdir, respectively (except insofar as the
  144. rest of these changes change the concept of cleanup_lckdir).
  145. New static variable global_readlock.
  146. (Reader_Lock, Lock_Cleanup): Use global_readlock in place of
  147. repository.
  148. (lock_simple_remove, set_lock, clear_lock, write_lock): Take a
  149. struct lock * instead of just a repository. Set/clear
  150. lock->have_lckdir instead of cleanup_lckdir.
  151. (set_writelock_proc, unlock_proc): Pass ->data, not ->key, to
  152. write_lock or lock_simple_remove.
  153. (lock_filesdoneproc,lock_dir_for_write): Allocate a struct lock,
  154. put it in the ->data field, and fill in its fields.
  155. (lock_simple_remove): Use lock->have_lckdir as the sole test for
  156. whether the CVSLCK directory needs to be removed. Add
  157. comments about why readlock and writelock variables don't tell us
  158. for sure whether locks exist.
  159. (lock_simple_remove, clear_lock): Use SIG_beginCrSect and
  160. SIG_endCrSect to ensure that ->have_lckdir is set to 0 iff the
  161. CVSLCK directory was really removed.
  162. (lock_simple_remove): Check for errors removing CVSLCK directory.
  163. (lock_simple_remove, Check_Owner, set_lock): Remove all code which
  164. checks userids (including all of Check_Owner and all the AFCVS
  165. code). It was bogus if several CVS processes with the same userid
  166. were running (common if several users share a userid; a common
  167. practice with remote CVS), and with the rest of the changes here
  168. should not be needed.
  169. 1996-11-16 Paul Eggert <eggert@twinsun.com>
  170. * rcs.c (RCS_deltas): Fix unintended trigraphs.
  171. Fri Nov 15 13:06:03 1996 Tom Hageman <tom@basil.icce.rug.nl>
  172. * diff.c (diff_fileproc): In printing error messages, use the
  173. correct filename for which the error occurred.
  174. Sun Nov 10 21:13:38 1996 Paul Sanders <p.sanders@dial.pipex.com>
  175. and Jim Kingdon <kingdon@harvey.cyclic.com>
  176. * server.c: Use all the right cruft which goes along with
  177. including sys/time.h.
  178. * server.c: Include a "copyright" notice.
  179. * server.c: If HAVE_WINSOCK_H, include winsock.h.
  180. * server.c (server): Only set a handler for SIGHUP if it is
  181. defined. Likewise for all the other signals.
  182. * server.c (do_cvs_command): Use DEVNULL not /dev/null.
  183. Fri Nov 08 12:14:20 1996 Jim Kingdon
  184. IBM ICC (OS/2) lint:
  185. * add.c (add): Only declare begin_added_files if
  186. SERVER_SUPPORT.
  187. * client.c (init_sockaddr): Change port argument from
  188. unsigned short to unsigned int. Change hostname
  189. argument from const char * to char *.
  190. Sun Nov 3 18:24:28 1996 Noel Cragg <noel@gargle.rain.org>
  191. * sanity.sh (info): add new tests that check behavior of format
  192. string substitution in loginfo file.
  193. Sat Nov 2 09:39:09 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  194. * client.c (do_deferred_progs): Don't access memory once it is
  195. freed (we already did it right for checkin_progs; do the same
  196. thing for update_progs).
  197. * update.c, client.c, classify.c, client.h, diff.c, commit.c,
  198. create_adm.c: Nuke more PATH_MAX.
  199. Fri Nov 1 18:22:32 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  200. * error.h: Define PROTO if it is not defined.
  201. Wed Oct 30 08:53:20 1996 jalving@ibm.net
  202. * patch.c (patch_fileproc): Set line1 and line2 to NULL up-front
  203. (before the first "goto out") so we don't try to free them.
  204. Wed Oct 30 08:53:20 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  205. * commit.c (remove_file, commit_filesdoneproc), run.c (run_print,
  206. run_exec), modules.c (open_module, cat_module, do_module), update.c
  207. (update_dirleave_proc), tag.c (tag_fileproc): Call cvs_out* rather
  208. than stdio.
  209. * server.c (serve_expand_modules): Remove comment about do_module
  210. writing to stdout/stderr; above changes should fix this.
  211. Tue Oct 29 17:23:59 1996 Ian Lance Taylor <ian@cygnus.com>
  212. * status.c (tag_list_proc): When printing the tag name, don't
  213. truncate it to 25 characters.
  214. Tue Oct 29 12:49:07 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  215. * add.c, checkin.c, checkout.c, filesubr.c: Nuke arbitrary limit
  216. of PATH_MAX. Many more such limits surely remain.
  217. * fileattr.c (fileattr_set): Set attrs_modified *after* we might
  218. call fileattr_read, because fileattr_read clears it.
  219. * sanity.sh (devcom2): New tests, test for above fix and other
  220. behaviors I discovered in the process of looking into it.
  221. Mon Oct 28 08:55:57 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  222. The following changes are to ensure that SYSTEM_CLEANUP is always
  223. called.
  224. * error.c, cvs.h, main.c: Remove error_set_cleanup and related
  225. machinery. It was for a time when error.c was intended to be
  226. shared with other programs, but that is no longer true.
  227. * error.c, error.h (error_exit): New function; like error_cleanup
  228. from main.c but also calls SYSTEM_CLEANUP and exit (EXIT_FAILURE).
  229. * error.c (error, fperror): Call error_exit instead of doing it
  230. ourself.
  231. * server.c (server, serve_valid_responses, switch_to_user,
  232. check_password, pserver_authenticate_connection,
  233. kserver_authenticate_connection): Call SYSTEM_CLEANUP before exit.
  234. * add.c, client.c, import.c, main.c, mkmodules.c, modules.c,
  235. recurse.c, server.c, tag.c, update.c: Call error_exit ()
  236. instead of exit (EXIT_FAILURE).
  237. Sun Oct 27 08:34:16 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  238. * sanity.sh (conflicts): New test 128.5 tests "cvs co -p" in an empty
  239. directory (like 126.5), but when the file has nonempty contents.
  240. * rcs.c (RCS_checkout): If writing to stdout, use cvs_output
  241. rather than fwrite.
  242. * update.c (checkout_file): Call cvs_stderr not fprintf.
  243. These changes should fix some out-of-order bugs which show up in
  244. situations like conflicts-126.5 and conflicts-128.5.
  245. * mkmodules.c (checkout_file): Call RCS_checkout rather than
  246. run_exec on RCS_CO.
  247. Sat Oct 26 18:29:46 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  248. * sanity.sh (rdiff): cd out of testimport directory and remove it
  249. when done.
  250. * sanity.sh (info): Adjust tests to reflect fact that loginfo was
  251. created by cvs init.
  252. * sanity.sh (ignore): Change test 187a1 to allow any number of
  253. files in CVSROOT, not just modules.
  254. * sanity.sh (modules): In tests 148a0 and 148a1, don't expect a
  255. module which defines CVSROOT to itself, since we don't define one
  256. any more. Also change test to rewrite modules rather than append
  257. to it (in case any previous tests are changed to do something with
  258. modules). Change test 155b to allow any number of files in
  259. CVSROOT, not just modules.
  260. * add.c (add_directory): Set rev_old and rev_new fields of struct
  261. logfile_info to NULL (prevents us from trying to free them later).
  262. * commit.c (find_fileproc), import.c (import): Likewise.
  263. * sanity.sh (crerepos): New tests, to test alternate ways of
  264. creating a repository and related matters.
  265. * sanity.sh: Remove tests 1 through 3 and related cruft; replace
  266. them with a new test 1 which merely tests "cvs init". By doing
  267. the obscure stuff in crerepos we avoid having to do all this stuff
  268. any time we run any single test.
  269. Sat Oct 26 16:19:48 1996 Jim Blandy <jimb@totoro.cyclic.com>
  270. * main.c (main): If HAVE_TZSET is #defined, call tzset. This is
  271. harmless on all systems I know of, and required on some.
  272. Fri Oct 25 13:20:44 1996 Ian Lance Taylor <ian@cygnus.com>
  273. * diff.c (diff_file_nodiff): When setting use_rev1, only return
  274. DIFF_SAME if empty_file is DIFF_DIFFERENT and ts_user is not
  275. NULL. Don't get confused by a vn_user field of "0" or one
  276. starting with '-'.
  277. * sanity.sh (death2): Add new death2-diff-{1,2,7,8} tests for
  278. above patch. Renumber existing death2-diff tests to make room.
  279. Fri Oct 25 12:38:29 1996 Jim Wilson <wilson@cygnus.com>
  280. * sanity.sh (death2): In tests death2-diff-{2,4,6,8,10}, allow "_"
  281. in temp file names. The system (tmpnam or whatever) generates
  282. these names so they vary from system to system.
  283. Fri Oct 25 07:52:44 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  284. * logmsg.c (logfile_write): Give an error for several cases which
  285. should not be legal. Adjust comments accordingly.
  286. * mkmodules.c (loginfo_contents): Make description of loginfo much
  287. more concise. This should be a reminder, not full documentation.
  288. Tue Oct 22 10:37:37 1996 Noel Cragg <noel@gargle.rain.org>
  289. * commit.c (update_delproc): free structure members rev_old and
  290. rev_new if they have been allocated.
  291. * mkmodules.c: change loginfo_contents to include a description of
  292. the new format string.
  293. * logmsg.c (logfile_write): change syntax of format string.
  294. Sat Oct 19 16:09:55 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  295. For reference, this takes CVS's text segment from 348348 bytes to
  296. 347420 bytes.
  297. * server.c (requests): Change Directory to rq_essential
  298. per change in doc/cvsclient.texi.
  299. * client.c: Remove use_directory and all code which executed if
  300. it wasn't set. This includes the get_short_pathname function.
  301. * server.c: Likewise, for use_dir_and_repos.
  302. (serve_repository): Give a fatal error.
  303. * server.c (requests): Remove Lost. Change Unchanged to rq_essential.
  304. (serve_lost): Removed.
  305. * server.c, server.h, client.c, vers_ts.c: Remove use_unchanged,
  306. code to set it, and all code which executed if it wasn't set.
  307. Sat Oct 19 12:44:08 1996 J. Richard Sladkey <jrs@world.std.com>
  308. and Jim Kingdon <kingdon@harvey.cyclic.com>
  309. * hash.c (sortlist, new function qsort_comp): Rewrite to use qsort
  310. instead of insert sort. Changes algorithm from n^2 to n log n
  311. (assuming qsort is implemented with quicksort or similar).
  312. Sat Oct 19 12:44:08 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  313. * sanity.sh (basic2): In test basic2-64, use -x and specify types
  314. which exclude E; the test is not built to deal with E (or any
  315. other new types).
  316. Sat Oct 19 12:00:00 1996 Mark Mitchell <mmitchell@usa.net>
  317. and Jim Kingdon <kingdon@harvey.cyclic.com>
  318. * update.c (isemptydir, new function isremoved): Avoid pruning
  319. directories that contain files marked for removal but not
  320. comitted.
  321. * update.c, update.h (isemptydir): Now extern, not static.
  322. * update.c (isemptydir): New parameter might_not_exist handles
  323. difference in functionality from old client_isemptydir. Bring
  324. over the improved error checking from client_isemptydir.
  325. * client.c (client_isemptydir): Removed; isemptydir now suffices.
  326. * update.c (update_dirleave_proc), client.c
  327. (process_prune_candidates): Update callers.
  328. * sanity.sh (deep): Add tests deep-rm* for above fix.
  329. Fri Oct 18 15:53:41 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  330. * sanity.sh (devcom): Add tests devcom-some* to test watching just
  331. a single file.
  332. * root.c (Name_Root): Use isabsolute to test whether a pathname is
  333. absolute instead of checking for the first character being '/'.
  334. (Reported by Antoine P. Brusseau <brusseau@jprc.com>).
  335. * commit.c (checkaddfile): Free rev only if it is non-NULL (thanks
  336. to cwong@world.std.com (Christopher Wong) for diagnosing this; the
  337. death2-15 test in sanity.sh hits it).
  338. Thu Oct 17 15:21:56 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  339. * sanity.sh: Reenable rdiff tests. Delete rdiff-9 test to reflect
  340. the fact that the change to add a -K option has not been
  341. incorporated. Adjust rdiff-8 test to reflect the fact that the
  342. change to change the default keyword expansion for the first
  343. revision has not been incorporated.
  344. * patch.c (patch_fileproc): Pass the symbolic revision to
  345. RCS_checkout so that Name can be expanded correctly. Reinstates
  346. one of the 30 Sep 96 changes and fixes a bug which the sanity.sh
  347. rdiff test tests for.
  348. Reinstate change from 30 Sep 96:
  349. * patch.c (patch): CLIENT_SUPPORT: send '-f' if NOT force_tag_match
  350. * client.c (process_prune_candidates): Do not ignore errors from
  351. unlink_file_dir.
  352. * filesubr.c (deep_remove_dir): If rmdir returns an error other
  353. than ENOTEMPTY or EEXIST, return -1 not 0. Add workaround for AIX
  354. header bug.
  355. Tue Apr 30 08:21:27 1996 Mike Sutton <mike_sutton@dayton.saic.com>
  356. * checkout.c, history.c: added logging/reporting of cvs export
  357. command
  358. Wed Oct 16 10:16:57 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  359. * sanity.sh: Remove tests 4, 4.5, and 4.75; this functionality is
  360. already tested by 45, 45.5 and other tests.
  361. (ignore): New tests ignore-192, ignore-193, ignore-194, and
  362. ignore-195 test output from "cvs release".
  363. (modules2): New tests modules2-6, modules2-7, and modules2-8 test
  364. ability of cvs release to handle multiple arguments. Since it
  365. currently doesn't, the tests are kludged.
  366. * server.c, cvs.h (cvs_flushout): New function.
  367. * recurse.c (do_file_proc): Call it.
  368. * server.c (cvs_outerr): Call fflush (stdout) in non-server case.
  369. * main.c (main): Don't call setvbuf. The code was incorrectly
  370. checking for "patch" (it really is "rdiff"); the concern about
  371. slowing down large amounts of output is not specific to rdiff
  372. (it applies to "log" for example); and the above changes should
  373. meet the need.
  374. Tue Oct 15 10:22:10 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  375. This is intended to facilitate some future cleanups to the
  376. locking, but by itself it is a simple, conversative rearrangement:
  377. * tag.c (locked_dir, locked_list): Move from here...
  378. * lock.c: ...to here.
  379. * lock.c (Lock_Cleanup): If locked_dir is set clean it up too.
  380. * tag.c (tag_unlockdir): Removed; with the above change
  381. Lock_Cleanup suffices.
  382. * tag.c (tag_lockdir): Move from here...
  383. * lock.c (lock_dir_for_write): ...to here.
  384. * tag.c (tag_fileproc), rtag.c (rtag_fileproc): Update callers.
  385. Move comments concerning why we are locking what we are from
  386. tag_lockdir to here.
  387. * tag.c (tag_filesdoneproc), rtag.c (rtag_filesdoneproc):
  388. Update callers.
  389. * lock.c (Writer_Lock): Made static.
  390. * cvs.h: Update declarations.
  391. * server.c (server_notify): Call lock_dir_for_write rather than
  392. calling Writer_Lock ourselves.
  393. This is intended to facilitate some future cleanups to the
  394. locking, but by itself it is a simple, conversative rearrangement:
  395. * lock.c (Lock_Cleanup): Also dellist (lock_tree_list).
  396. * lock.c, cvs.h (lock_tree_cleanup): Removed; with the above change
  397. Lock_Cleanup suffices.
  398. * commit.c, edit.c, watch.c: Change callers.
  399. Sat Oct 12 21:41:46 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  400. * sanity.sh (deep): Add comment about whether the deep-4b behavior
  401. is considered desirable.
  402. Sat Oct 12 20:36:36 1996 Ian Lance Taylor <ian@cygnus.com>
  403. * client.c (client_send_expansions): Add build_dirs parameter.
  404. Change all callers.
  405. (send_dirent_proc): Get build_dirs from callerdat; if it is
  406. zero, don't send a nonexistent directory to the server.
  407. (send_files): Add build_dirs parameter. Change all callers.
  408. * client.h (send_files): Update prototype.
  409. (send_files_contents): Remove prototype for nonexistent function.
  410. (client_send_expansions): Update prototype.
  411. * sanity.sh (deep): Add deep-4b test for above patch.
  412. Fri Oct 11 14:07:12 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  413. gcc -Wall lint:
  414. * logmsg.c (title_proc): Remove unused variables title and comma.
  415. * sanity.sh (modules2): Don't be picky about whether we are
  416. checking in 1.3 or 1.2 of modules; it depends on whether we are
  417. running all the tests or just some.
  418. Thu Oct 10 14:52:06 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  419. * server.c, server.h (server_dir): New variable.
  420. (output_dir): If it is set, send it before the directory name.
  421. * modules.c (do_module): Set it, in the case of & modules, and
  422. restore it when done.
  423. * sanity.sh (modules): Don't clean up first-dir before starting;
  424. tests now clean up for themselves at the end.
  425. (modules2): New tests, for above fix.
  426. Wed Oct 9 15:52:34 1996 Jim Blandy <jimb@totoro.cyclic.com>
  427. * sanity.sh: Barf immediately if run as root.
  428. * rcs.c (RCS_getrevtime): When giving a date to get_date, use the full
  429. year, not the year - 1900, so that dates after 1999 are parsed
  430. correctly. (Change thanks to Paul Eggert.)
  431. Wed Oct 9 10:59:11 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  432. Clean up gcc -Wmissing-prototypes lint:
  433. * cvs.h (admin, add, checkout, commit, diff, history, import,
  434. cvslog, login, patch, release, cvsremove, rtag, status, tag):
  435. Declare.
  436. * server.c, main.c: Don't declare them here. Don't declare update
  437. either (which is already declared in cvs.h).
  438. * tag.c, cvs.h, main.c, server.c: Rename tag to cvstag to avoid
  439. name conflicts.
  440. * client.c (init_sockaddr, auth_server_port_number), entries.c
  441. (Entnode_Create, Entnode_Destroy), hash.c (nodetypestring),
  442. login.c (construct_cvspass_filename), server.c
  443. (supported_response), wrapper.c (wrap_matching_entry): Make static;
  444. prototype.
  445. * hash.c (printlist): Prototype.
  446. * myndbm.c (mydbm_load_file): Change declaration to prototype.
  447. Tue Oct 8 22:35:34 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  448. * sanity.sh (log2): Re-add these tests; they were deleted for 1.9
  449. (because they were thought to be destabilizing and/or due to
  450. confusion/accident), but they can be put back now.
  451. * sanity.sh (death2): In tests death2-diff-{2,4,6,8,10}, allow "-"
  452. or "%" in temp file names. The system (tmpnam or whatever)
  453. generates these names so they vary from system to system.
  454. Tue Oct 8 12:37:09 1996 Ian Lance Taylor <ian@cygnus.com>
  455. * options.h.in (HAD_RCS4): Remove; no longer used.
  456. Sun Oct 6 15:58:11 1996 Noel Cragg <noel@gargle.rain.org>
  457. * The following changes address problem #56 in the GNATS database
  458. on harvey.cyclic.com:
  459. * logmsg.c (str_list_format): new global -- contains the format
  460. for items to be placed in str_list.
  461. (Update_Logfile): move code that creates the "title" string...
  462. (logfile_write): ...to here. Pull apart the filter program and
  463. look for a format string, extracting it if there is one.
  464. (title_proc): write a given filename/value based on the format
  465. string.
  466. * commit.c (classify_file_internal): new routine, old code (needed
  467. to use the code in more than one place). Determines the status
  468. and version information about a file.
  469. (check_fileproc): use classify_file_internal. Fill in the rev_old
  470. field for the struct logfile_info.
  471. (commit_fileproc): Fill in the rev_new field.
  472. * cvs.h (struct logfile_info): add two new fields -- rev_old and
  473. rev_new -- that keep track of revision numbers across commits.
  474. Fri Sep 27 15:21:47 1996 Peter Wemm <peter@spinner.dialix.com>
  475. * logmsg.c (do_editor): Do not use editinfo if running on the client.
  476. Fri Oct 4 15:11:46 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  477. * server.c (server_cleanup): Temporarily clear noexec when calling
  478. unlink_file_dir. This is so we clean up the temp directory even
  479. when the -n global option is specified.
  480. Wed Oct 2 10:47:33 1996 Norbert Kiesel <nk@col.sw-ley.de>
  481. * client.c (send_repository): initialize some variables before
  482. first usage
  483. Tue Oct 1 13:01:24 1996 Jim Blandy <jimb@floss.cyclic.com>
  484. Revert some of Greg's changes; they're welcome later, but we're
  485. trying to keep CVS stable for pre-release testing at the moment.
  486. * checkin.c, commit.c, cvs.h, diff.c, import.c, main.c, no_diff.c,
  487. options.h.in, patch.c, rcs.c, rcs.h, rcscmds.c, sanity.sh, update.c:
  488. Revert changes of Sep 29 and 30.
  489. Tue Oct 1 13:17:31 1996 Ian Lance Taylor <ian@cygnus.com>
  490. Make sure the server temporary directory is removed even if
  491. Max-dotdot is used.
  492. * server.c (orig_server_temp_dir): New static variable.
  493. (serve_max_dotdot): Don't free server_temp_dir if it is the same
  494. as orig_server_temp_dir.
  495. (do_cvs_command): Use orig_server_temp_dir in error message.
  496. (server_cleanup): Remove orig_server_temp_dir.
  497. (server): Set orig_server_temp_dir. Remove incorrect indentation
  498. of error message.
  499. * import.c (update_rcs_file): Restore new argument to
  500. RCS_checkout, removed in last patch.
  501. Tue Oct 1 00:32:55 1996 Jim Blandy <jimb@floss.cyclic.com>
  502. * import.c: Revert Greg Woods' changes of Sep 30. We may want
  503. them later, but not before 1.9.
  504. Mon Sep 30 23:31:01 1996 Jim Blandy <jimb@floss.cyclic.com>
  505. * log.c (log_fileproc): Now that we might actually find a "desc"
  506. node in rcsfile->other, thanks to Ian's change below, we had
  507. better deal correctly if we find a null pointer in it.
  508. Mon Sep 30 13:55:03 1996 Greg A. Woods <woods@most.weird.com>
  509. * main.c (main): don't set need_to_create_root for "cvs init"
  510. either, just in case it's run from within a valid working
  511. directory.
  512. * sanity.sh (testcvs): oops, forgot to comment out test version I
  513. was using...
  514. * diff.c (diff_fileproc): use Diffbin instead of DIFF (3).
  515. * patch.c (patch_fileproc): use Diffbin instead of DIFF.
  516. * commit.c (check_fileproc): use Grepbin instead of GREP.
  517. * rcscmds.c (RCS_merge): use Grepbin instead of GREP.
  518. * update.c (patch_file): use Diffbin instead of DIFF.
  519. (update_fileproc): use Grepbin instead of GREP.
  520. * cvs.h (Diffbin): new declaration.
  521. (Grepbin): new declaration.
  522. (DIFFBIN_ENV): new manifest to name DIFFBIN environ var.
  523. (GREPBIN_ENV): new manifest to name GREPBIN environ var.
  524. * option.h.in (DIFFBIN_DFLT): renamed from DIFF.
  525. (GREPBIN_DFLT): renamed from GREP.
  526. * main.c (main): new variables diffbin_update_env and
  527. grepbin_update_inv, ala rcsbin_update_env.
  528. (main): new options -D diffbin and -g grepbin
  529. (usg): describe new options -D diffbin and -g grepbin.
  530. (Diffbin): new global variable for DIFF path.
  531. (Grepfbin): new global variable for GREP path.
  532. * options.h.in (RCSBIN_DFLT): mention this needs to be set if
  533. your PATH isn't set properly by rshd.
  534. * sanity.sh (rdiff): re-do Jim's change, but with the original
  535. keywords I had intended (should be a bit more like real life), and
  536. Jim's better RCS date and user matching form.
  537. [I guess that's what I get for checking things in at 3am! ;-)]
  538. Mon Sep 30 17:00:20 1996 Ian Lance Taylor <ian@cygnus.com>
  539. * rcs.c (RCS_reparsercsfile): Store desc field value in main RCS
  540. node data, not in version specific data.
  541. * sanity.sh: Enable log2 test (for local CVS only).
  542. Mon Sep 30 13:01:45 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  543. * sanity.sh (log2): New test, tests cvs add -m. Not yet enabled
  544. in "tests" because CVS currently flunks this test.
  545. * sanity.sh (rdiff, basic2): Allow "cvs server" as well as "cvs
  546. checkout" and friends in messages. In testing output of cvs
  547. status, don't require a tab which isn't there for remote. Skip
  548. test rdiff-9 for remote. In test basic2-64, add missing slash in
  549. the pattern which gets used for remote.
  550. * sanity.sh (rdiff): Fix strings we were matching against which
  551. got keyword-expanded in checking in sanity.sh.
  552. Mon Sep 30 03:21:37 1996 Greg A. Woods <woods@most.weird.com>
  553. * sanity.sh: change all regexpr literal '.' to '\.'
  554. (basic2): why are tests 34 & 42 commented out (because
  555. of 'diff -u'?)?
  556. add tests 56[abc], 57a, and 58a to test import to the main
  557. branch (i.e. branch '1').
  558. (rdiff): new test section for rdiff -K, etc.
  559. (dotest): remove dotest.ex? before running a new test.
  560. (dotest_fail): remove dotest.ex? before running a new test.
  561. (dotest_internal): write expected output to dotest.exp, or if $4
  562. also used, to dotest.ex1 and dotest.ex2.
  563. (patch): renamed this test to 'serverpatch'.
  564. (dotest_lit): rename dotest.res to dotest.exp ala dotest().
  565. remove dotest.ex? before running a new test.
  566. (DOTSTAR): mention the bug exists up to 1.12
  567. (ENDANCHOR): mention the bug exists up to 1.12
  568. (dotest_all_in_one): new function for debugging.
  569. (dotest_line_by_line): new function for debugging.
  570. (dotest_internal_debug): new function for debugging.
  571. (dotest_internal): stop emulating the ancient tests and don't spew
  572. the dotest.tmp contents onto $LOGFILE -- it's just too much
  573. meaningless noise. Only do this if the test fails. Many tests
  574. don't use dotest() yet, so this isn't quite so helpful as it might
  575. otherwise be.
  576. (TODO): mention CVS/* files, especially CVS/Root.
  577. * main.c (main): add a commented out piece of code to suggest that
  578. there should be a function lookup_command_attribute() that could
  579. tell us various things about internal commands, such as whether
  580. they use CVS/Root, or if they're repository-only, or if they need
  581. a working directory, etc....
  582. (main): don't set need_to_create_root if command doesn't use a
  583. local working directory.
  584. * patch.c (patch): CLIENT_SUPPORT: send '-f' if NOT force_tag_match
  585. * error.c (fperror): protect declaration for un-defined __STDC__
  586. * import.c (import): permit imports to a branch with zero dots,
  587. i.e. the trunk.
  588. (update_rcs_file): don't detect conflicts if importing to the
  589. trunk.
  590. (import): add hint that we should allow a module name, instead of
  591. just a pathname relative to $CVSROOT.
  592. (add_rcs_file): if importing to trunk, do it with ci(1).
  593. * import.c: XXX the following are all #if 0'ed out until a full
  594. implementation can be designed....
  595. (cbranch): new variable to support conflict detection on another
  596. branch set by -c.
  597. (import): truncate -b and -c optarg if to fit in static storage.
  598. (import_usage): describe -c
  599. * rcscmds.c (RCS_checkout): add new argument 'rcsver'. If rcsver
  600. is set, turn on 'keywords' to force call to RCS_exec_checkout.
  601. * rcs.c (RCS_exec_checkout): add new argument 'rcsver'. Pass
  602. 'rcsver' to "co" with run_arg().
  603. * cvs.h: (RCS_checkout): add new argument 'rcsver' to prototype.
  604. (RCS_exec_checkout): add new argument 'rcsver' to prototype.
  605. * commit.c (remove_file): supply new argument to RCS_checkout.
  606. * checkin.c (Checkin): supply new argument to RCS_checkout.
  607. * diff.c (diff_fileproc): supply new argument to RCS_checkout.
  608. (diff_file_nodiff): supply new argument to RCS_checkout.
  609. * no_diff.c (No_Difference): supply new argument to RCS_checkout.
  610. * update.c (checkout_file): supply new argument to RCS_checkout.
  611. (patch_file): supply new argument to RCS_checkout.
  612. (join_file): supply new argument to RCS_checkout.
  613. * patch.c: (o_options): new variable for -K
  614. (rcsver): new variable for -V.
  615. (patch): add -K flag which sets o_options, change -V to set
  616. rcsver, send o_options and rcsver if in client mode.
  617. (patch_fileproc): use RCS_checkout instead of RCS_fast_checkout in
  618. order to ensure $Name is expanded, use o_options if set, or
  619. options if set, or by default "-ko" when getting "old" file.
  620. Sun Sep 29 16:43:28 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  621. * rcscmds.c: Replace comment at top of file concerning RCS library
  622. with a reworded version based on discussion between me, Ian, Paul
  623. Eggert, and JimB.
  624. Sun Sep 29 13:09:45 1996 Noel Cragg <noel@kiva.rain.org>
  625. * main.c (main): don't create/update CVS/Root when doing the "cvs
  626. login" command. Consider: if the user executes "cvs login" with
  627. the working directory inside an already checked out module, we'd
  628. incorrectly change the CVS/Root file to reflect the CVSROOT of the
  629. "cvs login" command.
  630. * login.c (login): if we're re-logging into a server for which a
  631. .cvspass entry already exists, copy the temporary file to its home
  632. location rather than renaming. Renaming doesn't work between
  633. filesystems. After copying, unlink the temporary file.
  634. Fri Sep 27 05:24:56 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  635. * diff.c: Add comment about --brief option.
  636. * README-rm-add: Removed; the information which was here is now in
  637. cvs.texinfo.
  638. * Makefile.in (DISTFILES): Remove README-rm-add.
  639. Wed Sep 25 10:00:00 1996 Larry Jones <larry.jones@sdrc.com>
  640. * Makefile.in (cvsbug): Add dependency on version.c.
  641. Wed Sep 25 09:01:48 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  642. * filesubr.c (get_homedir), update.c (update): Reindent.
  643. Wed Sep 25 04:44:54 1996 Jim Blandy <jimb@totoro.cyclic.com>
  644. * version.c (version_string): Bump to 1.8.86.
  645. Wed Sep 25 05:17:50 1996 Jim Blandy <jimb@floss.cyclic.com>
  646. * update.c (update): Don't neglect to pass the -kmumble options
  647. to the server.
  648. * sanity.sh (binfiles-sticky): New tests for above.
  649. * cvsrc.c (read_cvsrc): Deal correctly with lines that specify a
  650. command, but no options; don't corrupt argv.
  651. * sanity.sh: When testing rsh, use the program specified by
  652. the CVS_RSH environment variable, if it's set. Move test to top
  653. of file, so it runs before all other tests (it's really a
  654. meta-test).
  655. * filesubr.c (get_homedir): Use getpwuid to find the home
  656. directory, if the HOME environment variable isn't set.
  657. * ignore.c (ign_add_file): Call get_homedir to find the user's
  658. home directory; this is more portable than calling getpwuid.
  659. Tue Sep 24 09:08:17 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  660. * log.c (log_tree): When walking through branches, follow the
  661. ->prev field rather than following ->next which insures that the
  662. loop only executes once and we only see the last branch.
  663. * sanity.sh (multibranch): Test "cvs log" too; tests for above fix.
  664. Mon Sep 23 09:55:22 1996 Norbert Kiesel <nk@col.sw-ley.de>
  665. * options.h.in: Fixed some typos in the comments and reindented
  666. them.
  667. Sat Sep 21 02:33:26 1996 Jim Blandy <jimb@totoro.cyclic.com>
  668. * sanity.sh: If we're testing remote CVS, make sure rsh itself is
  669. working before running any tests. It's confusing when basica-1
  670. fails just because you don't have the local host in your .rhosts
  671. file.
  672. * version.c (version_string): Bump to 1.8.85.
  673. Thu Sep 19 09:15:41 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  674. * options.h.in: Define SERVER_FLOWCONTROL, SERVER_HI_WATER,
  675. SERVER_LO_WATER. Several large sites (FreeBSD, Cygnus) have been
  676. pounding on this code without problems, and it doesn't seem to
  677. have any significant downsides.
  678. Tue Sep 17 01:13:41 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  679. * status.c (status_fileproc): Instead of a default case, set sstat
  680. before the switch. This way gcc -Wall can detect a missed case.
  681. Add explicit T_TITLE case.
  682. Tue Sep 17 00:09:44 1996 Assar Westerlund <assar@pdc.kth.se>
  683. * login.c (login): Print usage if argc < 0.
  684. Tue Sep 17 00:09:44 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  685. * lock.c: In comment, mention one more function of readlocks
  686. (fileattr not updated atomically). Note similarity between
  687. solutions #2 and #5.
  688. * checkout.c (safe_location): Do not reject a location merely
  689. because it textually starts with hardpath; insist that it be
  690. hardpath or a subdirectory thereof.
  691. Mon Sep 16 11:46:36 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  692. * server.c (server_cleanup): Add comment about ignoring errors
  693. from unlink_file_dir.
  694. Mon Sep 16 10:31:48 1996 Norbert Kiesel <nk@col.sw-ley.de>
  695. * main.c: Add support for -T <tmpdir> command line option. This
  696. is needed for servers started via inetd.
  697. (usg): Added line for -T. Improved -z documentation.
  698. (main): Read default for tmpdir from the environment. Test for 'T'
  699. in getopt loop. Use '/tmp' as ultimative fallback. Update
  700. environment if possible.
  701. * cvs.h (TMPDIR_ENV): Added for -T <tmpdir> command line option.
  702. * options.h.in: Add TMPDIR_DFLT
  703. * import.c (update_rcs_file): Use global variable Tmpdir instead
  704. of reading the environment.
  705. * server.c (server_cleanup): Use global variable Tmpdir instead of
  706. reading the environment. Also, replace system("rm -rf") with
  707. unlink_file_dir.
  708. (server): Use global variable Tmpdir instead of reading the
  709. environment.
  710. Thu Sep 12 1996 Jim Kingdon <kingdon@cyclic.com>
  711. * main.c (main): If ARGV0_NOT_PROGRAM_NAME, then just set
  712. program_name to "cvs" rather than argv[0].
  713. Thu Sep 12 12:06:56 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  714. * client.c (update_entries): If we can't write the file, don't
  715. make it a fatal error.
  716. Wed Sep 11 12:46:23 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  717. * client.c (start_server): Move START_SERVER_RETURNS_SOCKET code
  718. so that it is only run for server_method. It is wrong for
  719. pserver_method (in which connect_to_pserver sets server_sock).
  720. * login.c (construct_cvspass_filename): If NO_SLASH_AFTER_HOME,
  721. don't put a '/' between $HOME and .cvspass. Reindent function.
  722. * build_src.com: Add zlib.c, login.c, and scramble.c.
  723. * rcs.c (RCS_deltas): When looking for our branch in ->branches,
  724. check the branch number.
  725. * sanity.sh (multibranch): New tests test for above fix.
  726. * commit.c (precommit_list_proc): Fix typo in last change
  727. (->status to ->type).
  728. Tue Sep 10 23:05:41 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  729. * Makefile.in (DISTFILES): Add build_src.com.
  730. * build_src.com: Add buffer.c, buffer.obj, and zlib.olb.
  731. Tue Sep 10 20:35:23 1996 Juergen Renz <renz@conware.de>
  732. and Jim Kingdon <kingdon@harvey.cyclic.com>
  733. * commit.c (precommit_list_proc): Update to reflect Jul 22 change
  734. in which p->data was changed from a Ctype to a struct
  735. logfile_info *. This means that commitinfo scripts again get
  736. passed the file list like they should.
  737. Tue Sep 10 20:35:23 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  738. * client.c (auth_server_port_number): Change name of service from
  739. "cvs" to "cvspserver". The latter is what the manual has always
  740. recommended, and it is also officially registered with IANA.
  741. Tue Sep 10 11:12:42 1996 Mark A. Solinski <markso@mcs.com>
  742. and Jim Kingdon <kingdon@harvey.cyclic.com>
  743. * client.c (socket_buffer_output): Change ifdef VMS to ifdef
  744. SEND_NEVER_PARTIAL.
  745. (start_server): Change ifdef VMS to ifdef START_SERVER_RETURNS_SOCKET.
  746. Tue Sep 10 17:15:21 1996 Jim Blandy <jimb@totoro.cyclic.com>
  747. * client.c (auth_server_port_number): Look up "cvs" in the
  748. services database, and use the value it returns; fall back to
  749. CVS_AUTH_PORT if no entry is present.
  750. (connect_to_pserver): Use the correct port number in any error
  751. messages.
  752. Tue Sep 10 11:12:42 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  753. * sanity.sh (newb): New test newb-123j0 tests for another "cvs
  754. status" case.
  755. Sun Sep 8 15:20:37 1996 Ian Lance Taylor <ian@cygnus.com>
  756. * rcs.c (RCS_checkout): Clarify handling of options parameter.
  757. * rcs.c (RCS_checkout): Free buffer allocated by RCS_deltas.
  758. Sat Sep 7 21:28:27 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  759. * main.c (struct cmd): Add comment concerning recognizing unique
  760. abbreviations.
  761. Fri Sep 6 22:31:52 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  762. * rcs.c (RCS_checkout): Fix indentation.
  763. Fri Sep 6 11:48:08 1996 Ian Lance Taylor <ian@cygnus.com>
  764. * rcs.c (RCS_checkout): Replace tag parameter with rev and nametag
  765. parameters. Change all callers.
  766. * rcs.h (RCS_checkout): Update declaration.
  767. * rcs.c (RCS_getversion): Replace return_both parameter with
  768. simple_tag. Change all callers.
  769. (RCS_gettag): Likewise.
  770. * rcs.h (RCS_getversion, RCS_gettag): Update declarations.
  771. * vers_ts.c (Version_TS): Simplify vn_tag initialization using new
  772. simple_tag rather than old return_both.
  773. * cvs.h (struct vers_ts): Clarify vn_tag comment a bit.
  774. * main.c (usg): Only mention -x if ENCRYPTION is defined.
  775. (main): Mention ENCRYPTION define in comment for -x.
  776. * client.h (krb_encrypt_buffer_initialize): Only declare if
  777. ENCRYPTION is defined.
  778. * client.c (start_server): Only encrypt if ENCRYPTION is defined.
  779. * server.c (serve_kerberos_encrypt): Only define if ENCRYPTION is
  780. defined.
  781. (requests): Only include Kerberos-encrypt is ENCRYPTION is
  782. defined.
  783. (krb_encrypt_*): Only define if ENCRYPTION is defined.
  784. Thu Sep 5 17:32:39 1996 Ian Lance Taylor <ian@cygnus.com>
  785. * sanity.sh: When testing remote, use :ext: instead of :server: to
  786. match change made earlier today.
  787. Thu Sep 5 13:57:47 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  788. * client.c (start_tcp_server): Don't allow :kserver: to mean
  789. "direct tcp" (root.c already takes care of this, but I want to
  790. make it clear what is intended, and not intended, here).
  791. (start_server): Handle ext_method (external rsh program) and
  792. server_method (internal rsh client) separately.
  793. * client.c: Take rsh_pid and start_rsh_server out of
  794. RSH_NOT_TRANSPARENT ifdefs. It is useful for things like SSH on NT.
  795. * cvs.h (CVSmethod), root.c (method_names): Add ext_method.
  796. * root.c (parse_cvsroot): Recognize "ext" access method.
  797. If access method is not specified and CVSROOT contains a colon,
  798. use either ext_method or server_method depending on
  799. RSH_NOT_TRANSPARENT.
  800. Thu Sep 5 00:09:49 1996 Ian Lance Taylor <ian@cygnus.com>
  801. * rcs.c (RCS_checkout): Remove flags parameter, which was not
  802. serving any useful purpose. Change all callers.
  803. * rcscmds.c (RCS_exec_checkout): Likewise.
  804. * rcscmds.c (RCS_exec_checkout): Rename from RCS_checkout. Change
  805. all callers.
  806. * rcs.c (RCS_checkout): Rename from RCS_fast_checkout. Change all
  807. callers.
  808. Wed Sep 4 14:42:28 1996 Ian Lance Taylor <ian@cygnus.com>
  809. * rcs.c (RCS_fast_checkout): If tracing, output a message. If
  810. noexec, and workfile is not NULL, just return immediately. Assert
  811. that sout is RUN_TTY or workfile is NULL, rather than using it as
  812. a conditional. Replace found variable with two variables--gothead
  813. and keywords--reflecting what it actually means.
  814. * rcs.c (RCS_fast_checkout): Don't handle the case of workfile set
  815. to "".
  816. * rcscmds.c (RCS_checkout): Likewise.
  817. * checkin.c (Checkin): Pass explicit file name, not "", to
  818. RCS_fast_checkout.
  819. * update.c (join_file): Likewise.
  820. * commit.c (remove_file): Pass explicit file name to
  821. RCS_fast_checkout and RCS_checkin.
  822. * rcs.c (RCS_reparsercsfile): Always continue after seeing
  823. RCSSYMBOLS, even if the value is NULL. Clear the NODELTA flag
  824. after setting delta_pos.
  825. (free_rcsnode_contents): New static function.
  826. (freercsnode): Call free_rcsnode_contents.
  827. (RCS_fast_checkout): If NODELTA is set, reparse the RCS file.
  828. (RCS_settag): New function. Change all callers to old function.
  829. (RCS_deltag, RCS_setbranch): Likewise.
  830. (RCS_lock, RCS_unlock): Likewise.
  831. (RCS_deltas): If NODELTA is set, reparse the RCS file.
  832. * rcs.h (NODELTA): Define.
  833. (RCS_settag, RCS_deltag, RCS_setbranch): Declare.
  834. (RCS_lock, RCS_unlock): Declare.
  835. * rcscmds.c (RCS_exec_settag): Rename from RCS_settag. Don't
  836. check tag against BASE or HEAD (now done in new RCS_settag).
  837. (RCS_exec_deltag): Rename from RCS_deltag.
  838. (RCS_exec_setbranch): Rename from RCS_setbranch.
  839. (RCS_exec_lock): Rename from RCS_lock.
  840. (RCS_exec_unlock): Rename from RCS_unlock.
  841. * cvs.h: Update declarations of renamed functions.
  842. * checkin.c (Checkin): Remove rcscopy variable (no longer needed
  843. because of change in RCS_unlock call).
  844. * commit.c: Include <assert.h>.
  845. (remove_file): Update RCSNode path if the file is renamed.
  846. (unblockrcs): Change rcs parameter to RCSNode. Change all
  847. callers.
  848. (fixbranch): Likewise.
  849. (lock_RCS): Likewise. Don't call RCS_parsercsfile.
  850. (checkaddfile): Update RCSNode path if the file is renamed. After
  851. creating a new file, call RCS_parse. When stubbing a branch, use
  852. the passed in RCSNode if there is one, rather than calling
  853. RCS_Parse. Don't call RCS_Parse again after calling RCS_settag.
  854. Free head and magicrev even if RCS_settag fails.
  855. * import.c (add_rev): Change rcs parameter to RCSNode. Change all
  856. callers.
  857. (add_tag): Likewise.
  858. * rcs.c (RCS_fast_checkout): Amend last patch: if workfile is
  859. NULL, but sout is not NULL, use sout in error message.
  860. Wed Sep 4 13:35:09 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  861. * version.c: Increment version number to 1.8.8.
  862. * Version 1.8.7.
  863. Wed Sep 4 1996 Jim Kingdon <kingdon@cyclic.com>
  864. * client.c (send_file_names): Look for the name to send in
  865. Entries even if the file doesn't exist; we should send the
  866. name as it appears in Entries in the "rm foo; cvs update FOO"
  867. case.
  868. Tue Sep 3 20:50:11 1996 William A. Hoffman <hoffman@albirio.crd.ge.com>
  869. * rcs.c (RCS_fast_checkout): If workfile is NULL, don't try to
  870. include it in error message.
  871. Mon Aug 26 12:27:38 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  872. * mkmodules.c (mkdir_if_needed): Move from here ...
  873. * filesubr.c, cvs.h (mkdir_if_needed): ... to here. Have it
  874. return a value saying whether the directory was created.
  875. * client.c (call_in_directory), edit.c (edit_fileproc): Call it.
  876. Fri Aug 23 19:19:44 1996 Ian Lance Taylor <ian@cygnus.com>
  877. * checkin.c (Checkin): Copy rcs parameter in case it is freed when
  878. finfo->rcs is freed.
  879. Fri Aug 23 14:55:41 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  880. * remove.c (remove_fileproc): Revert change of 23 Aug to print
  881. getwd and finfo->file in message. The latter is redundant with
  882. fullname and the former is redundant with fullname and the working
  883. directory when CVS was invoked. The implementation was also
  884. lacking as the getwd call could overflow the buffer.
  885. Fri Aug 23 18:40:35 1996 Norbert Kiesel <nk@col.sw-ley.de>
  886. * remove.c (cvsremove): fix remove -f for client/server
  887. Fri Aug 23 11:28:27 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  888. * wrapper.c, cvs.h: Remove conflictHook field of WrapperEntry,
  889. WRAP_CONFLICT in WrapMergeHas, and 'c' option in wrap_add; they
  890. are never used.
  891. Fri Aug 23 11:41:46 1996 Norbert Kiesel <nk@col.sw-ley.de>
  892. * server.c (switch_to_user): use #ifdef SETXID_SUPPORT instead of
  893. #if SETXID_SUPPORT
  894. Thu Aug 22 14:18:43 1996 Ian Lance Taylor <ian@cygnus.com>
  895. * checkin.c (Checkin): Remove local variable xfinfo. Reparse the
  896. RCS file after the checkin. Call RCS_fast_checkout rather than
  897. RCS_checkout.
  898. * cvs.h (RCS_FLAGS_LOCK): Don't define.
  899. (RCS_FLAGS_*): Adjust values to fill in hole left by removal of
  900. RCS_FLAGS_LOCK.
  901. * rcs.c (RCS_fast_checkout): Don't check for RCS_FLAGS_LOCK.
  902. * rcscmds.c (RCS_checkout): Likewise.
  903. * commit.c (commit_fileproc): Remove rcs local variable. If
  904. status is T_MODIFIED, require that finfo->rcs be set, call
  905. Lock_RCS directly, and don't call locate_rcs. If adding to a tag,
  906. require that finfo->rcs be set, and don't call locate_rcs.
  907. (remove_file): Remove rcs local variable. Require that finfo->rcs
  908. be set. Don't call locate_rcs. Don't pass RCS_FLAGS_LOCK to
  909. RCS_checkout; use RCS_lock instead. Call RCS_fast_checkout rather
  910. than RCS_checkout.
  911. (unlockrcs): Use a single rcs parameter rather than two parameters
  912. for file and repository. Change all callers. Don't call
  913. locate_rcs.
  914. (fixbranch): Likewise.
  915. (lockrcsfile): Remove; no more callers.
  916. Tue Aug 20 10:13:59 1996 Jim Kingdon <kingdon@harvey.cyclic.com>
  917. * buffer.c, rcs.c: Don't use inline. It wasn't being used in a
  918. loop or any such place where it would matter for performance, and
  919. it was a (minor) portability hassle.
  920. * server.c (server): Change "Dummy argument 0" to "cvs server" and
  921. add comment explaining why.
  922. * rcs.c (linevector_add): Add comment regarding changing \n to \0.
  923. Tue Aug 20 09:19:19 1996 Norbert Kiesel <nk@col.sw-ley.de>
  924. * checkout.c (checkout_proc): Call RCS_parse to get the default
  925. options from the RCS file.
  926. * sanity.sh (binfiles): Add tests 5.5b0 and 5.5b1 for the above fix
  927. Mon Aug 19 18:13:32 1996 Ian Lance Taylor <ian@cygnus.com>
  928. * rcs.c (linevector_init): Make inline. Set lines_alloced to 0,
  929. not 10. Set vector to NULL.
  930. (linevector_add): Remove assertion that lines_alloced is greater
  931. than zero…