11998-11-09  Michael A. Cooper  <mcooper@magnicomp.com>
2
3	* Version 6.1.5-RELEASE
4
5	* Update copyright messages.
6
71998-06-13  Michael A. Cooper  <mcooper@magnicomp.com>
8
9	* doc/rdist.man (are): Add more info about -P and rsh/ssh usage.
10
111998-03-23  Michael A. Cooper  <MCooper@MagniComp.Com>
12
13	* Version 6.1.4 RELEASE.
14
15	* include/paths.h: Renamed to rdistpaths.h to avoid conflicts.
16
17	* support/bsdinst.sh: Revamp to not use OS provided "install".
18
19	* src/expand.c (matchdir): Use stat() instead of fstat() for portability.
20
21Sun Mar 15 14:27:31 1998  Michael A. Cooper  <mcooper@magnicomp.com>
22
23	* src/Makefile.real: Use BIN_OWNER instead of "root" for install.
24
25	* config/*hpux*: Split *hpux* into *hpux9* and *hpux10*.
26
27	* config/*aix4*: Add support for AIX 4.x.
28
29	* Packaging changes to support binary distributions.
30
31Fri Jul 19 09:48:47 1996  Michael A. Cooper
32
33	* Version 6.1.3 RELEASE.
34
35	* message.c (fatalerr): Fix possible user input over running
36	sprintf() buffer.
37
38	* lookup.c (lookup): Fixed bug that allowed user input to over run
39	an sprintf() buffer.
40
41Tue Mar 12 14:55:43 1996  Michael A. Cooper
42
43	* server.c (recvit): Fix type problem that caused SEGV on IRIX 6.x
44	for -a and -A.
45
46Thu Feb 22 11:30:11 1996  Michael A. Cooper
47
48	* child.c (waitup): Add SELECT_FD_TYPE define for select(2) arg types.
49
50Tue Feb 20 12:53:26 1996  Michael A. Cooper
51
52	* server.c (recvfile): Allow rdist of directory -> file.
53
54Thu Feb 15 12:35:48 1996  Michael A. Cooper
55
56	* Version 6.1.2 RELEASE.
57
58Tue Feb  6 09:59:46 1996  Michael A. Cooper
59
60	* Version 6.1.2-beta1 released.
61
62	* os-sunos4.h: Define NEED_UNISTD_H so we get define for SEEK_CUR.
63
64Mon Feb  5 11:19:23 1996  Michael A. Cooper
65
66	* Version 6.1.2-beta0 released.
67
68Thu Feb  1 15:48:47 1996  Michael A. Cooper
69
70	* Fix installation directories for IRIX.
71
72Mon Jan 29 13:51:38 1996  Michael A. Cooper
73
74	* Fix core dump on ^C bug due to bad longjmp() parameter. (Andreas
75	Stolcke <stolcke@speech.sri.com>)
76
77	* filesys.c (is_nfs_mounted): Filesystem type "cachefs" (in
78	Solaris 2.x) is now treated just like any other NFS mount
79	point. (Michael Platoff <map@scr.siemens.com>)
80
81	* Add support for sparse files (-osparse).
82	(Neal.Becker@comsat.com (Neal Becker))
83
84	* mf.osf1 (INSTALL): Use INSTALL=../support/bsdinst.sh
85
86	* client.c (senddir): Fix problem where rdist and rdistd can get
87	out of sync when opendir() fails.  (Tor Lillqvist
88	<tml@hemuli.tte.vtt.fi>)
89
90	* server.c (fchog): Fix uid caching problem. (Rein Tollevik
91	<Rein.Tollevik@si.sintef.no>)
92
93Wed Jan 17 13:02:49 1996  Michael A. Cooper
94
95	* Version 6.1.1 RELEASE.
96
97	* filesys-os.c (getmountent): Fix casting problem. "Anthony
98	D'Atri" <aad@nwnet.net>
99
100Tue Jan  2 13:09:34 1996  Michael A. Cooper
101
102	* Version 6.1.1 beta1.
103
104	* server.c (fchog): Another group caching fix.
105
106Fri Dec 22 15:33:47 1995  Michael A. Cooper
107
108	* Version 6.1.1 beta0.
109
110Thu Dec 14 15:22:40 1995  Michael A. Cooper
111
112	* Distribution files now contain rdist-$VERSION.* in the filenames.
113
114Wed Dec 13 14:04:47 1995  Michael A. Cooper
115
116	* Add support for IRIX 6.x.
117
118Tue Dec 12 16:58:02 1995  Michael A. Cooper
119
120	* Add WRITE_RETURN_T and WRITE_AMT_T to some config/os-*.h files.
121
122	* mf.irix5 (LIB_SYS): Remove -lsun as it doesn't appear to be
123	needed in irix 5.x and doesn't exist on some systems.
124
125	* filesys-os.c: Fix non-portable pointer code. (Dale
126	Talcott <aeh@quest.cc.purdue.edu>)
127
128	* Makefile (SHELL): Set $(SHELL) = /bin/sh to insure we get sh.
129
130	* common.c (init): Fix "host.domain: host" problem in messages.
131
132	* os-unicos.h: Define MNTTAB. (btp424@btp4x6.phy.uni-bayreuth.de
133	(Axel Rossberg))
134
135	* mf.linux (INSTALL): Use the rdist bsdinst.sh for $(INSTALL).
136
137Mon Dec 11 15:38:51 1995  Michael A. Cooper
138
139	* os-osf1.h: Set buffering type to SETBUF_SETVBUF to fix gcc
140	compilation problem. (karl@owl.HQ.ileaf.com (Karl Berry))
141
142	* Add BSDi/OS 2.0 support. (Murray S. Kucherawy
143	<mskucher@vertex.tor.hookup.net>)
144
145	* Change basename() to xbasename() to avoid libc conflicts.
146
147	* Add FreeBSD 2.x support. (deborah@microunity.com (Deborah Gronke
148	Bennett))
149
150	* server.c (fchog): Save gr->gr_name and pw->pw_name between calls
151	as those memory areas may be overwritten by other system library
152	calls.  This is true on IRIX 5.x.  (Reported by e07@nikhef.nl
153	(Eric Wassenaar))
154
155	* Add fix for partial write()'s (under Linux) which often leads to
156	hung rdist sessions.  This is basically the "rdist-6.1.0-linuxpl2"
157	patch with a bunch of changes to implement a cleaner, fuller fix.
158	(Mark Eichin <eichin@cygnus.com> and Tatu Ylonen <ylo@cs.hut.fi>)
159
160Wed Nov 16 15:43:59 1994  Michael A. Cooper
161
162	* config/mf.hpux: Disable `-g' since default
163	HPUX /bin/cc doesn't support it.
164
165Mon Aug 15 13:19:59 1994  Michael A. Cooper
166
167	* src/common.c (getversion): Add distribution status field to
168	version information.
169
170	* src/filesys.c (find_file): Fix problem with determining location
171	of mount points for symlinked files.
172
173Mon May  2 10:53:11 1994  Michael A. Cooper
174
175	* Version 6.1 released.
176
177Tue Apr 26 09:55:27 1994  Michael A. Cooper
178
179	* config/os-type (OS): Add dgux fix.  <graigmch@dis2qvarsa.er.usgs.gov>
180
181	* src/docmd.c (checkcmd): Avoid dereferencing if cmd->c_name is
182	zero length.  <costales@ICSI.Berkeley.EDU>
183
184	* config/os-type (OS): Add fix for HP-UX 8.x  <rflaniga@arl.army.mil>
185
186	* src/docmd.c (doarrow): Initialize 'isadir'.  <leres@ee.lbl.gov>
187
188	* src/lookup.c (define): Initialize 'value'.  <leres@ee.lbl.gov>
189
190	* src/distopt.c (getondistoptlist): Declare opts param.
191	<leres@ee.lbl.gov>
192
193	* src/server.c (recvfile): Initialize 'olderrno'.  <leres@ee.lbl.gov>
194
195	* src/rdist.c (docmdargs): Initialize 'files'.  <leres@ee.lbl.gov>
196
197	* src/rshrcmd.c (rshrcmd): Fix typos in comments.  <leres@ee.lbl.gov>
198
199	* doc/rdist.man (are): Fix typos with -o.  <leres@ee.lbl.gov>
200
201Fri Apr 22 10:12:53 1994  Michael A. Cooper
202
203	* Version 6.1beta.6
204
205	* src/rshrcmd.c (rshrcmd): Use our local getsocketpair() call to
206	call socketpair().
207
208Wed Apr 20 10:53:45 1994  Michael A. Cooper
209
210	* src/common.c: Cast GID_T and UID_T assignments.
211
212	* config/os-hpux.h (SETBUF_TYPE): set SETBUF_TYPE.
213
214	* config/os-linux.h (SETBUF_TYPE): set SETBUF_TYPE.
215
216	* src/message.c (getnotifyfile): Fix problem with spewing error
217	messages about "cannot open" files named "..../rdistXXXXX".
218	<stssram@st.unocal.com>
219
220Fri Apr 15 10:28:36 1994  Michael A. Cooper
221
222	* Version 6.1beta.5
223
224Mon Apr 11 16:19:32 1994  Michael A. Cooper
225
226	* src/client.c (senddir): Prevent changing targets of '/' into
227	'//'.  <jay@Princeton.EDU>
228
229	* src/common.c: Make option variables opt_t (long).
230	(getusername): Fix caching bug in getusername() and getgroupname()
231	that caused options to be incorrectly set.
232
233	* include/defs.h: Move type info to new "types.h".
234
235Fri Apr  1 15:41:30 1994  Michael A. Cooper
236
237	* src/docmd.c (checkcmd): Avoid NULL deref.
238	<costales@ICSI.Berkeley.EDU>
239
240	* src/client.c (sendfile): Fix problem of getting out of sync on
241	"File changed size" error.  paulr@umbc.edu
242
243Wed Mar 30 16:44:23 1994  Michael A. Cooper
244
245	* config/os-svr4.h: Changes for generic SVR4 system.
246	<fino@xdnc1.ICO.OLIVETTI.CO>
247
248	* More linux port updates. <neal@ctd.comsat.com>
249
250Fri Mar 18 17:07:36 1994  Michael A. Cooper
251
252	* Version 6.1beta.4 release.
253
254Thu Mar 17 16:31:20 1994  Michael A. Cooper
255
256	* config/mf.sunos5 (INSTALL): Set correct values for admin section
257	of man pages for Solaris 2.x.
258
259	* src/client.c: Fix bug with $FILES when used with cmdspecial
260	having files listed that were not updated.
261
262Wed Mar 16 14:50:11 1994  Michael A. Cooper
263
264	* src/child.c: Only include <sys/select.h> if NEED_SYS_SELECT_H is
265	defined instead of _POSIX_SOURCE.  This file is only known to be
266	needed by AIX 3.x.
267
268	* mf/Makefile.var (ConfigFiles): Add MtXinu 4.3BSD+NFS port.
269	<michael@cs.mun.ca>
270
271	* config/os-sunos4.h: Make test for whether to typedef pid_t
272	generic to 4.0.3.<michael@cs.mun.ca>.
273
274	* mf/Makefile.var (ConfigFiles): Add MIPSOS 5.x
275	port. <michael@cs.mun.ca>.
276
277	* config/os-type: Fix riscos uname output. <michael@cs.mun.ca>
278
279	* include/defs.h: Remove most OS specific #ifdef's for include files.
280
281	* config/os-osf1.h: Add better DEC OSF1
282		support. <mosedale@genome.Stanford.EDU>
283
284Mon Mar 14 10:40:22 1994  Michael A. Cooper
285
286	* src/rshrcmd.c (rshrcmd): If we are rdist'ing to "localhost" as
287		 the same user as we are, then avoid running remote
288		 shell for efficiency.  <jay@Princeton.EDU>
289
290	* src/expand.c (expstr): Fix bug introduced in 6.1beta.3 that
291	caused '$' to be removed from reg-ex's.
292
293	* mf/Makefile.var (ConfigFiles): Add Linux port.
294	<kent@mnementh.cs.mcgill.ca>
295
296	* Fix another hardlink bug.  <dbeusee@us.oracle.com>
297
298Thu Mar  3 16:23:41 1994  Michael A. Cooper
299
300	* Version 6.1beta.2 release.
301
302	* config/os-irix5.h: Define _PATH_REMSH.
303
304	* config/os-bsdi.h (_PATH_REMSH): Define _PATH_REMSH.
305
306	* src/docmd.c (checkcmd): Add "-P <rsh-path>" option.
307
308Fri Feb 25 14:53:09 1994  Michael A. Cooper
309
310	* Print version info with debugging.
311
312	* Fix -D to do both "all" and "debug".
313
314	* Fix bug causing core dump/SIGPIPE when connection fails during
315	startup with new rshrcmd().
316
317	* Add BSDI port.  <jor@advtech.uswest.com>
318
319Thu Feb 24 14:47:08 1994  Michael A. Cooper
320
321	* Add check for valid 'cmd' parameter to avoid NULL de-ref in
322	docmd.c.
323
324Wed Feb 23 16:28:51 1994  Michael A. Cooper
325
326	* Fix problem with cmdspecial() always being run when doing a
327	binary compare (-b).
328
329	* Don't loop on ^C when running in non-forking mode.
330
331Tue Feb 22 15:50:20 1994  Michael A. Cooper
332
333	* Add FTX port.  <dbeusee@us.oracle.com>
334
335	* Fix os-type to work with dcosx uname.  <dbeusee@us.oracle.com>
336
337	* HPUX doesn't have setreuid().  <dbeusee@us.oracle.com>
338
339	* Add $BASEFILE to "special".  <dbeusee@us.oracle.com>
340
341	* Add pid_t typedef for sun386i.  <rouilj@claude.cs.umb.edu>
342
343Thu Feb 17 12:44:35 1994  Michael A. Cooper
344
345	* Break mf.next and os-next.h into nextstep2 and nextstep3 in
346	order to be able to handle differences in system include files.
347
348	* Rdist no longer needs to be setuid root _AT ALL_!  Thanks go to
349	Chris Siebenmann <cks@utcc.utoronto.ca> and John DiMarco
350	<jdd@cdf.toronto.edu> for coming up with a replacement for rcmd()
351	that uses the rsh (remote command) program to make the connection
352	to the remote host.
353
354	* Change config/mf.sunos5 to use /usr/ucb/install to avoid using
355	/usr/bin/install by mistake.  <jdd@cdf.toronto.edu>
356
357Mon Feb 14 10:24:33 1994  Michael A. Cooper
358
359	* Add LIBS_LOCAL support to Makefile.local.  Remove -lPW from
360	LIB_SYS for hpux and document need in Makefile.local.
361
362	* Change fatal() to fatalerr() to avoid duplicate symbol problem
363        with HPUX.
364
365	* Make "clean" a seperate target to avoid problems with buggy make's.
366
367	* Automatically enable debug messages to stdout (for rdist) if -D
368	is specified.
369
370	* Fix problem with "-o chksym" wedging and causing rdist to timeout.
371
372	* Change rdist?filter.pl to rdist?f.pl so filenames are < 14 bytes.
373
374	* Make "os-type" not print "OS appears to be" message.
375
376	* Log "updating host" messages to MT_VERBOSE which is disabled by
377	default.
378
379	* Create MT_VERBOSE message level.
380
381	* Make "Unexpected input" error say "Unexpected input from server:
382	..." for better clarity.
383
384	* Fix problem with multiple cmdspecial's in same target.
385
386Fri Feb 11 14:33:02 1994  Michael A. Cooper
387
388	* Fix config/runmake to specify Makefile.local in proper
389	order to allow overriding Makefile.real
390
391Thu Feb 10 16:42:29 1994  Michael A. Cooper
392
393	* Make -m list dynamically allocated.
394
395	* Fix -m to work if distfile host name contains user@host.
396
397	* Allow '-' in name lists.  <leres@ee.lbl.gov>
398
399Wed Feb  9 10:53:58 1994  Michael A. Cooper
400
401	* Add stdarg version of _setproctitle().
402
403	* Make $FILES available to cmdspecial commands.
404
405	* Set nochkgroup and nochkowner if userid is not root since normal
406	users cannot chown() files.
407
408Tue Feb  8 10:44:59 1994  Michael A. Cooper
409
410	* Fix return value bug in dostat().
411
412	* Add check for write() failure when writing to client in sendmail().
413
414	* Move alarm() timeout in sendfile() to be reset on each
415	read/write to client to avoid time outs when transfering large
416	files over slow links.
417
418	* Insure blank line between header and body in mail messages.
419	<Pierrck.Gachet@irisa.fr>
420
421	* Refuse to handle filenames that contain newline.  <jay@Princeton.EDU>
422
423	* Fix fchog() to avoid comparing and using "mode" if mode==-1.
424	This fixes problem with directories being mode 777 when rdist
425	is run by normal users.  <jay@Princeton.EDU>
426
427	* User should be able to fully override default message logging.
428	<jay@Princeton.EDU>
429
430	* Add IRIX 5.x support.  <lrr@Princeton.EDU>
431
432	* Allow negative gid and uid with numchkowner and numchkgroup.
433	<john@WPI.EDU>
434
435	* Recognize mach "fat" and little-endian binaries.
436	<Matt_Watson@NeXT.COM>
437
438	* Change BIN_MODE to {RDIST,RDISTD}_MODE in Makefile's.
439
440Mon Feb  7 12:53:18 1994  Michael A. Cooper
441
442	* Add -p opt to specify path to rdistd at runtime.
443	<pfps@research.att.com>
444
445	* Fix setuid() problem with SVR4 hosts.  <pfps@research.att.com>
446
447	* Make things 8-bit clean.  <obh@ifi.uio.no>
448
449	* Add HPUX isexec() support for HP9000/[34]00 machines.
450	<appelman@cs.unc.edu>
451
452	* Add missing arg to msgparseopts() to rdistd.c.  <stevea@lachman.com>
453
454	* Add DEFS_LOCAL support to Makefile.local and src/Makefile.real.
455	<todd@meaddata.com>
456
457	* Update os-tracebsd.h for current rdist release.  <wls@astro.UMD.EDU>
458
459	* Fix execl() of _PATH_OLDRDIST.  <dbeusee@us.oracle.com>
460
461	* pid_t is not defined by dynix.  <dbeusee@us.oracle.com>
462
463	* Add support for NCR SVR4.  <dbeusee@us.oracle.com>
464
465	* Fix casting problem in otoi() call.  <dbeusee@us.oracle.com>
466
467	* Add FORK_MISSES code to avoid problem with broken fork() in
468	certain OS's.  (dbeusee@us.oracle.com)
469
470	* Error "Unexpected input at startup" should not be fatal.
471
472Wed Dec  8 11:19:43 1993  Michael A. Cooper
473
474	* Fix arg type passed to hasmntopt().
475
476Mon Aug  2 14:20:14 1993  Michael A. Cooper
477
478	* Version 6.1beta.2
479
480Thu Jul 29 10:51:54 1993  Michael A. Cooper
481
482	* Fix problem that allowed any user with the proper knowledge to
483	gain root access using the backwards compat support for the old rdist.
484
485Tue Jul 27 16:27:56 1993  Michael A. Cooper
486
487	* Use "pid_t" for PID types in child.c.
488
489Fri Jul 16 13:32:07 1993  Michael A. Cooper
490
491	* Don't blow up if removal of a file fails due to ETXTBSY.
492	(Neal Becker)
493
494	* Don't run cmdspecial's in VERIFY mode.
495
496	* Increase size of message buffers to 32K.
497
498Thu Jul 15 12:53:48 1993  Michael A. Cooper
499
500	* Fix rdist man page typo's.  (Karl Berry)
501
502	* Take local Makefile's after Makefile.real.  (Eric Markwardt)
503
504	* Add support for new platforms: UNICOS, STELLIX, FPX4. (David O. Rich)
505
506	* Fix mf.irix4 and os-irix4.h.  (David O. Rich)
507
508	* Set POINTER to char for ultrix4.  (David O. Rich)
509
510	* Add Umax4.3 kludge to isexec.c.  (Howie Kaye)
511
512	* Cause compile time errors if SETFTIME_TYPE is not set.
513
514	* Declare hasmntopt().
515
516	* Add missing pieces to os-mipsos.h and os-irix4.h.  (Guessed values)
517
518Wed Jul 14 11:12:14 1993  Michael A. Cooper
519
520	* Add support for CX/UX.  (Done Beusee)
521
522	* Set SETFTIME_TYPE to SETFTIME_UTIMES for dynix.  (Don Beusee)
523
524	* Fix port to dynixptx.  (Don Beusee)
525
526	* Include <utime.h> if NEED_UTIME_H is defined instead of HPUX.
527
528	* Enable SETARGS on all platforms.
529
530	* Fix SETARGS so it should work on most platforms.
531
532	* Fix a number of pathing problems that occured in 6.1beta.1.
533	(Don Beusee)
534
535	* Use kill(PID, 0) instead of specific signal to test for a process.
536
537	* Fix value of MT_ALL to remove MT_DEBUG.  (Bruce Jerrick)
538
539	* Fix NULL deref in waitproc().  (F.W. ten Wolde)
540
541	* Define $(MAKE) for those platforms who don't.  (Don Beusee)
542
543	* Add include "filesys.h" to hasmntopt.c to fix compile time error.
544
545	* Fix NULL deref when no target specified.  (Don Beusee)
546
547Sat Mar 27 12:05:56 1993  Michael A. Cooper
548
549	* Version 6.1beta.1
550
551	* Add support for SGI IRIX 4.x and MIPSos 4.x.  (Eric Murray)
552
553	* Set $IFS when running popen() to avoid possible security whole.
554
555	* Don't print error when doing a savetarget for a new file.
556
557	* Add "nochkmode" option.
558
559	* Fix hardlink bug with relative path names.
560
561	* Upper case REMOTE ERROR and LOCAL ERROR.
562
563	* Handle ~ in hardlink paths.  (Hans Ranke)
564
565	* Disable SETARGS for Ultrix.  It breaks "notify".
566
567	* Fix problem with server hanging if mkdir fails.  (Hans Ranke)
568
569	* Add support for DEC OSF/1.  (Hans Ranke)
570
571Sat Mar 20 12:56:17 1993  Michael A. Cooper
572
573	* Destination is a directory if:
574	a) more than one name specified on left side of -> directive
575	b) basename of destination in "install" directive is "."
576	(Don Beusee)
577
578	* Dont print 'updating host...' for MT_DEBUG.  (Don Beusee)
579
580	* Add support for setting $REMFILE (remote file name) for
581	"special".  (Don Beusee)
582
583	* Fix problem with getting out of sync when "File changed size".
584
585	* Add test to see if a child proc is still running to avoid looping.
586
587	* Avoid bug in SunC which would cause dosetreuid() to never
588	display error on failure.
589
590Tue Mar 16 15:59:24 1993  Michael A. Cooper
591
592	* Fix security hole that allowed any user to write any file.
593
594Tue Mar  9 18:14:22 1993  Michael A. Cooper
595
596	* Fix problem with cmdspecial always being run.
597
598Tue Feb 23 16:00:33 1993  Michael A. Cooper
599
600	* Fix getmountent() code for SVR4 to use correct mntent member.
601
602Sat Feb 20 10:48:10 1993  Michael A. Cooper
603
604	* Remove extraneous LIB_* from config/mf.*.
605
606	* Fix filesystem freespace checking for 512block filesys.
607	(John P. Rouillard)
608
609	* Add initial POSIX support.
610
611	* Add support for '&' set operator.  (William L. Sebok)
612
613	* Add support for Multiflow tracebsd.  (William L. Sebok)
614
615	* Add support for DC/OSx, Dynix, Dynix/Ptx.  (Don Beusee)
616
617	* Remove unneeded gettimeofday() call in client.
618
619	* Only use fchown() if HAVE_FCHOWN is defined.
620
621	* Only use fchmod() if HAVE_FCHMOD is defined.
622
623	* Use new POINTER type for *alloc() declares.
624
625	* Typecast return of strlen().  (Don Beusee)
626
627	* Define set file time types (SETFTIME_*).
628
629	* In os-type, use uname if available.
630
631	* Consoladate the Elf and Coff isexec() code.
632
633	* Move all missing/*.c files to src/*.c in order to make it
634	possible to specify no missing files.
635
636Fri Feb 19 19:51:07 1993  Michael A. Cooper
637
638	* Redo makefiles again to use external "runmake" script to build
639	and run make.
640
641	* Set BIN_DIR to /usr/bin for sunos5.
642
643Mon Feb 15 11:16:27 1993  Michael A. Cooper
644
645	* Version 6.1beta.0.
646
647	* Add /*NOTREACHED*/ in coredump().  (Harald.Eikrem)
648
649	* Avoid referencing freed  CHILD structure when freeing children.
650	(Paul D. Smith)
651
652	* Avoid overflowing target buffer.  (Barbara Fraser)
653
654	* Fix spelling err in docmd.c. (Peter Kabal)
655
656	* Add support for checking file ownership based on numeric uid
657	and/or gid instead of the username or groupname.  (John P. Rouillard)
658
659	* Use proper types for uid's (UID_T), gid's (GID_T) in general and
660	for arguments to chown().
661
662	* Fix logic in setownership() to work with finicky compilers.
663
664	* Fix hardlink bug when dealing with hardlinks in subdirectories.
665	(Don Beusee)
666
667Wed Jan  6 19:04:34 1993  Michael A. Cooper
668
669	* Major overhaul of distribution configuration.  Will now
670	automatically configure OS dependencies whenever "make" is run.
671
672	* Major re-org of entire distribution into individual, seperate
673	directories.
674
675Tue Jan  5 13:28:50 1993  Michael A. Cooper
676
677	* Add #if !defined() around values in pathnames.h.
678
679	* Remove _PATH_OLDRDIST from pathnames.h.
680
681Mon Jan  4 16:01:18 1993  Michael A. Cooper
682
683	* Add Solaris 2.x (SVR4) support.  (Rainer Orth)
684
685	* Change support for HAVE_VARARGS to use ARG_TYPE.
686
687Thu Dec 31 13:31:05 1992  Michael A. Cooper
688
689	* Add support for POSIX_SIGNALS.  (Rainer Orth)
690
691	* Use environment variable TMPDIR in place of _PATH_TMP (/tmp) if
692	found.
693
694	* Add strtol.c and vsprintf.c.  (Mike Rendell)
695
696	* Update comments in Makefile regarding various platforms.  (Mike
697	Rendell)
698
699	* Remove obsolete itoa().  (Mike Rendell)
700
701	*  Make sure MOUNTED_FILE is not defined before defining.
702
703	* If chown fails, clear setuid and/or setgid bits before
704	chmod'ing.  (Mike Rendell)
705
706	* Don't print "updating of foo" messages with "-o quiet".  (Mike
707	Rendell)
708
709	* Add support for SGI's.  (Harlan Stenn)
710
711	* Make warning about missing links more informative. (Harlan Stenn)
712
713	* Change HAVE_STATFS to be STATFS_TYPE and define STATFS_BSD and
714	STATFS_SYSV.
715
716	* Make work with old style syslog()'s such as Ultrix.  (Harlan Stenn)
717
718	* Fix spelling errors in rdist.1.  (Harlan Stenn)
719
720	* Add DG/UX 5.4.x support.  (Paul D. Smith)
721
722	* Add ELF executable format support.  (Paul D. Smith)
723
724	* Fix portability problem with directory file name length
725	checking.  (Paul D. Smith)
726
727	* If EXE_TYPE is not defined, use fake _isexec() which always
728	returns FALSE.  (Paul D. Smith)
729
730	* Print cmdspecial "cmd" when running a cmdspecial.
731
732	* Only run "cmdspecial" when something is really updated.
733
734	* When removing files in a directory, don't abort when a single
735	file cannot be removed.
736
737    	* Try to avoid getting out of sync with master host when cleaning
738	directories.
739
740	* Avoid doing both fchown() and chown(), fchmod() and chmod().
741	Split chown and chmod code into seperate functions.
742
743	* Fix hardlink bug where hardlinking would fail when using
744	a target destination specified with "install".
745
746Wed Dec  2 14:46:18 1992  Michael A. Cooper
747
748	* Update rdistcfilter: More cleanup and minor speedups from Tom
749	Christiansen.
750
751	* Update rdistcfilter to remove truncation of hosts list when lots
752	of hosts are present. (tchrist)
753
754Sun Nov 29 13:35:42 1992  Michael A. Cooper
755
756	* Version 6.0.0
757
758	* Add more HPUX comments to README and Makefile.  (Allan Weber)
759
760	* Define NBIO_TYPE to be NBIO_FCNTL for HPUX.  (Allan Weber)
761
762Tue Nov 17 10:04:45 1992  Michael A. Cooper
763
764	* Version 6.0beta.10
765
766	* Update list of PLATFORMS in README.
767
768Thu Nov 12 10:52:54 1992  Michael A. Cooper
769
770	* Use E_SFILE in place of hardcoded "FILE".
771
772	* Fix ": is not an identifier" problem with special commands under
773	AIX and NeXT by disabling SETARGS.
774
775Wed Nov 11 10:42:27 1992  Michael A. Cooper
776
777	* When NOCHKOWNER and NOCHKGROUP are enabled, don't check
778	directory ownership.
779
780	* Make getmountent() work again for AIX.
781
782Tue Nov 10 15:09:59 1992  Michael A. Cooper
783
784	* Version 6.0beta.9
785
786Mon Nov  9 13:19:51 1992  Michael A. Cooper
787
788	* Use new *_TYPE defines for defining the types of interfaces
789	available for getting filesystem info, non-blocking I/O, wait()
790	function(), and directory routines.
791
792	* Modify rdistcfilter to wrap list of hosts instead of truncating.
793
794	* Clarify rdistd being in $PATH in rdist.1. (Mike Urban)
795
796	* Remove SIGPIPE as SIGCHLD equivilent.
797
798	* Add -ochksym option.  When enabled, this option will cause rdist
799	to act like the original version when dealing with rdisting
800	directories to symlinks.  The original rdist simple ignored the
801	condition where the target on a remote host was a symlink when the
802	target on the master was a directory.  The new rdist will
803	automatically make the target on the remote host be the same as
804	the master.  This option disables this behavior.
805
806	* Fix bug with notify failing with certain message level flags.
807
808	* Only send notify mail when things actually change.
809
810	* Add support for Sequent Dynix 3.1.2.  (Ken Dahl)
811
812	* Add BSDI support.  (Ken Dahl & Jonathan Cohn)
813
814	* Fix argument order to error() in client.c.
815
816Thu Oct 29 09:59:14 1992  Michael A. Cooper
817
818	* Version 6.0beta.8.
819
820Tue Oct 27 10:19:11 1992  Michael A. Cooper
821
822	* Add support for Multiflow Trace 4.3BSD. (wls)
823
824	* Make wait() configurable and add support for wait3().
825
826	* Include strcasecmp.c in distribution.
827
828	* Cleanup child handling based on code/suggestions from Neal
829	Becker, Rich Salz, and Chris Torek.
830
831	* Don't print hostname in "Response time out" message since
832	error() handles that.
833
834	* Add -onochkowner,nochkgroup options.  When enabled, no check of
835	a file's user (nochkowner) or group (nochkgroup) ownership is
836	performed.
837
838	* Prepend DO_ to dist option macros.
839
840	* Implement new -o<distopt> to replace all the -X options.
841
842	* Actually make error messages work by default.
843
844	* Change fchog() to always print unknown users.
845
846	* Change fchog() to always print name of target file for messages.
847
848Fri Oct 16 13:01:41 1992  Michael A. Cooper
849
850	* Version 6.0beta.7.
851
852	* Update rdist.1 to more fully describe new message handling system.
853
854	* Lower syslog logging levels to be mostly LOG_INFO.
855
856	* Don't explicitly call reap().  Let SIGCHLD call reap().  (Neal
857	Becker)
858
859	* Only call removechild() from reap(). (Neal Becker)
860
861	* Fix trivial child list-handling mistake.  (Neal Becker)
862
863	* Call cleanup() to remove /tmp/rdist* files.  (Neal Becker)
864
865	* Remove extraneous debugging info in getnlstr().
866
867	* Don't close distfile file descriptor if it's stdin.  (James
868	Tanis)
869
870	* Always strip '+' from hostnames to be consistant. (James Tanis)
871
872Thu Oct 15 10:59:14 1992  Michael A. Cooper
873
874	* Fix problem with buffer being overwritten in "chown from ..."
875	message.
876
877	* Modified rdistcfilter to lexically sort messages.
878
879	* Fix argument type mismatch in getmountent() which cause core
880	dump when filesystem free space checking was enabled.
881
882Wed Oct 14 11:17:45 1992  Michael A. Cooper
883
884	* Fix argument mismatch error in call to messae() which could
885	result in a core dump.
886
887	* Fix bug with directories almost always being reported with -y as
888	"remote copy is newer".
889
890	* Change message output format (again) to make both normal
891	messages and error messages consistant.
892
893	* Only check file mtime and size if file type is "regular".
894
895	* Fix mismatched parameters in call to debugmsg().  (Neal Becker)
896
897Tue Oct 13 15:07:56 1992  Michael A. Cooper
898
899	* Version 6.0beta.6.
900
901	* Fix possible stack overflow problem in expand code.
902
903Mon Oct 12 19:41:24 1992  Michael A. Cooper
904
905	* Fix long term problem with hardlink installations. (<luik@isa.de>
906	Andreas Luik)
907
908	* Slight performance improvement in reading directories.
909
910	* Add better checking/setting of directory ownership.
911
912	* Add another check to see if remote owner.group match local
913	owner.group.
914
915Fri Oct  9 13:01:23 1992  Michael A. Cooper
916
917	* All OS dependent filesystem routines moved from filesys.c to new
918	getmount.c.
919
920	* Add support for BSD386. (Ken Dahl)
921
922	* Move OS name definetions from config.h to new config-os.h.
923
924	* Change configdata.h to config-data.h and create config-os.h.
925
926	* Fix chkparent() to actually make directories when needed.
927
928Wed Oct  7 11:20:23 1992  Michael A. Cooper
929
930	* Use standard system and predefined values for open() and pipe().
931
932	* Children now exit with status "nerrs".
933
934	* Only log debugmsg() about exit status of child for legit children.
935
936	* Massive overhual of internal message handling system.  All
937	messages now pass through the message() function.  There are
938	different message facilities are configured to handle the
939	different message types.  The format of messages has also been
940	made more consistent.
941
942Thu Sep 24 11:11:19 1992  Michael A. Cooper
943
944	* Use new x*alloc() functions that do error checking.
945
946	* Major changes to use select() to read input from children.
947
948	* Major code cleanup of children related functions.
949
950	* Add Steve Romig's "compact-rdist-output" perl filter to the
951	distribution as "rdistcfilter.pl".  Also renamed rdistfilter.pl to
952	be rdistvfilter.pl.
953
954Thu Sep 17 13:13:35 1992  Michael A. Cooper
955
956	* Remove extraneous fclose(lfp) in doarrow().  (Bill Sebok)
957
958	* Fix botch with setfiletime() which set bogus file times.  (Bill
959	Sebok)
960
961	* Make :: work for special and cmdspecial.  (Bill Sebok)
962
963Wed Sep 16 16:49:13 1992  Michael A. Cooper
964
965	* Fix problem with tempfile (/tmp/rdistXXXXXX) being removed when
966	it shouldn't.
967
968Tue Sep 15 10:04:32 1992  Michael A. Cooper
969
970	* Version 6.0beta.5
971
972	* Fix core dump problem with list subtraction/addition. (Neal Becker)
973
974	* Fix problem with HPUX being defined after first #if check in defs.h.
975
976Mon Sep 14 12:52:32 1992  Michael A. Cooper
977
978	* Version 6.0beta.4
979
980	* Add note to README about AIX bsdcc stanza.
981
982	* Clarify -w description in rdist.1.
983
984	* Include target name in error msg "no files to be updated".
985
986Fri Sep 11 14:04:45 1992  Michael A. Cooper
987
988	* Fixed a bug in rdistd which caused set[ug]id bits to not be
989	cleared when they were suppose to be, even when it said it was
990	being cleared. The mode of a file/directory would also not be set
991	in certain cases. This bug looks to date back to the original version.
992
993	* Add support for macro list addition and subtraction (Rich Salz).
994
995	* Make having statfs() configurable with HAVE_STATFS (Rich Salz).
996
997	* Define HPUX if __hpux is defined and change things to use HPUX.
998
999	* Make the type of directory struct used configurable (Rich Salz).
1000
1001Tue Sep  1 14:46:00 1992  Michael A. Cooper
1002
1003	* Fix another case of setgid being stripped when the owner's
1004	primary (passwd) gid == file group owner.  (Ken Dahl)
1005
1006	* Change "Don't know how to rdist to ..." to be "Label ... is not
1007	defined in the distfile." for clarity.
1008
1009Mon Aug 31 15:08:26 1992  Michael A. Cooper
1010
1011	* Change "register char i" to "register int i" in docmd().
1012
1013	* Fixed another bug with "Don't know how to rdist to ...".  This
1014	time, a much simplier approach was taken to remove the "unused"
1015	stuff from the last fix.
1016
1017	* Save argc and argv from main() into realargc and realargv
1018	before setargs() overwrites.
1019
1020Fri Aug 28 16:36:34 1992  Michael A. Cooper
1021
1022	* The primary group of the owner of a file was not being checked
1023	in fchog(), which resulted in the setgid bit being cleared.
1024
1025Thu Aug 27 13:33:35 1992  Michael A. Cooper
1026
1027	* Fixed typo in config.h that disabled SETARGS.
1028
1029	* Make _PATH_OLDRDIST compatibility actually work.  Also do
1030	logging via logmsg() and fatal() for compat stuff.
1031
1032	* Fatal() error msgs are now logged to logmsg(LOG_ERR, ...) for rdistd
1033
1034	* Strip leading path of progname.
1035
1036Mon Aug 10 15:33:22 1992  Michael A. Cooper
1037
1038	* Update wording on old rcmd() bug in README. (Rich)
1039
1040Thu Aug  6 09:59:58 1992  Michael A. Cooper
1041
1042	* Fix ISEXEC define in isexec.c. (Neal Becker)
1043
1044Changes up to Release 6.0beta.3:
1045Wed Aug  5 14:10:22 1992  Michael A. Cooper
1046
1047	* Fix problem with ETXTBSY code not working.  (Neal Becker)
1048
1049	* Add support for HP 9000/[78]00 executable format.  (Neal Becker)
1050
1051	* Defining SETARGS breaks "special" command under HP/UX. (Neal Becker)
1052
1053	* Change #ifdef's of "hpux" to be "__hpux" for compability
1054	with both HP/UX 7.* and 8.* OS versions.  (Neal Becker & Allan Weber)
1055
1056	* Get rid of #define's in defs.h by compiling yacc with -d.
1057	Also change tokens like SM (';') to be real chars in the grammer
1058	instead of tokens for clarity. (Rich)
1059
1060	* Change ISDIR -> S_ISDIR, ISREG -> S_ISREG, ISLNK -> S_ISLNK
1061	to be POSIX compliant. (Rich)
1062
1063	* Document in rdist.1 how rdist runs rdistd.
1064
1065	* Replace ".in +5" with ".RS/.RE" in rdist.1. (Rich)
1066
1067	* Remove preprocessor support.  Use "m4 distfile | rdist -f -"
1068	for same effect without the ugly code. (Rich)
1069
1070	* Clarify -N and -O options in rdist.1 (Rich).
1071
1072	* Document that we can't use strchr() in place of any() because
1073	most systems strchr() can't handle some of the input we pass.
1074
1075Changes up to Release 6.0beta.2:
1076Tue Aug  4 15:20:46 1992  Michael A. Cooper
1077
1078	* Rename patchlevel.h to version.h and move VERSION define
1079	from config.h to version.h.
1080
1081Tue Aug  4 15:03:53 1992  Michael A. Cooper
1082
1083	* Cleanup comments about configuration and such in Makefile,
1084	config.h, pathnames.h, and README.
1085
1086Fri Jul 31 14:59:45 1992  Michael A. Cooper
1087
1088	* Fix to fix "Don't know how to make ..." fix.
1089
1090Thu Jul 30 14:34:46 1992  Michael A. Cooper
1091
1092	* Add -V options to rdist and rdistd to print version information.
1093
1094	* Portability changes and support for HP/UX from Allan Weber
1095	(weber@sipi.usc.edu).
1096
1097Changes up to 6.0alpha3:
1098Fri Jul 24 11:27:08 1992  Michael A. Cooper
1099
1100	* Fix bug with ^C of "rdist" resulting in a core dump.  An invalid
1101	jmpbuf was being used in a call to longjmp().
1102
1103	* Fix problem with modify time not being set on NeXT 2.1 machines.
1104	Also now set the access time of newly installed/updated file to
1105	be the current time instead of the atime from the source machine.
1106
1107Mon Jul 20 12:46:20 1992  Michael A. Cooper
1108
1109	* Fix misspelling of ${MISSINGOBJS} in Makefile.
1110
1111	* Fix problem with "Don't know how to rdist to ..." error being
1112	printed when it shouldn't be.
1113
1114
1115Thu Jul 16 10:58:09 1992  Michael A. Cooper
1116
1117	* Fix problem with hosts marked as + in the distfile having
1118	multiple child update the host simaltaneously, which causes race
1119	conditions when updating certain targets.
1120
1121
1122Changes up to 6.0alpha2:
1123Tue Jul 14 12:40:24 1992  Michael A. Cooper
1124
1125	* Cleanup and fix rdistfilter.
1126
1127Thu Jul  9 16:15:00 1992  Michael A. Cooper
1128
1129	* Back out reverse polling code to be clean and remove one source
1130	of possible bugs.
1131
1132Tue Jul  7 12:37:40 1992  Michael A. Cooper
1133
1134	* Port back to AIX/RS6000 (3.2), Alliant Concentrix 5.5,
1135	  Sun-386i (SunOS 4.0.1), DEC MIPS (Ultrix 4.2), NeXT <(Mach 2.1).
1136	  Mainly this was changes to config.h and creation of isexec.c
1137	  to make porting to new platforms more straigtforward.
1138
1139
1140Changes up through 6.0alpha
1141
1142      - The client and the server are now split into two seperate programs
1143	(rdist and rdistd).  The client (rdist) looks like older versions of
1144	rdist.  Instead of running "/usr/ucb/rdist" on a remote machine, it
1145	now runs "rdistd".  Notice that it doesn't run "/usr/ucb/rdistd"
1146	or use any explicit pathname.  This is to improve portability to
1147	various different platforms where "/usr/ucb" may not exist.  What
1148	this means is that the server must be somewhere in the user's default
1149	$PATH if the client is to successfully run rdistd.
1150
1151	This also means that the server no longer needs to be setuid root.
1152	Only the client still needs setuid root (because it uses priv'ed
1153	ports).  This should cut down a bit on potential security holes.
1154
1155	Because the server (rdistd) resides in normal user "bin" directories,
1156	it requires the -S option in order to run.  This is to avoid users
1157	accidentially typing "rdistd" instead of "rdist".
1158
1159      -	If the client (rdist) is started with the "-Server" option (which
1160	is the old rdist method of starting rdist in server mode), it
1161	will attempt to run the old version of rdist, if it was compiled
1162	with the name of that program.  This is for backwards compatibility
1163	and should allow this version of rdist to co-exist with older versions.
1164
1165      - Add support for running a pre-processor (m4 by default) over the
1166	distfile before processing.
1167
1168      - If a connection to a host fails, avoid trying to recontact host
1169	again.
1170
1171      - Use getopt() for command line option parsing.  I hate getopt(), but
1172	everybody wants to use it.  Sigh.
1173
1174      - A slew of new options.  See the man page for details.
1175
1176      - Add buffered remote read code from Chris Torek along with some other
1177	code cleanups.
1178
1179      -	Check free space and files on a filesystem before installing.
1180	This code will (optionally) check the amount of free space
1181	and files (inodes) on a filesystem before installing.  If the
1182	free space and/or files is less then specified by the initiator,
1183	then the target will not be installed and an error returned.
1184	This is useful for preventing rdist from filling up a remote
1185	filesystem.
1186
1187      -	Concurrent rdist processes.
1188	Update multiple hosts concurrently by fork'ing children
1189	with each child updating one host.  The number of
1190	children is limited to a given number (usually 4), but is
1191	controllable with a command line option (-M).
1192
1193      - Add "setargs" code to set process arguments to indicate what host
1194	we are talking to.  A protocol change was required for this.
1195
1196      -	If a remote target resides on a NFS or read-only filesystem,
1197	then don't try to update target on that host.  This elimates
1198	having to have millions of seperate lists and exceptions
1199	for hosts with certain parts NFS mounted or read-only mounted
1200	and hosts with everything mounted read-write.
1201
1202      - Set timeout alarms to avoid hanging when something happens
1203	to a server during a session.  Remove servers can sometimes
1204	get into a state either during startup or during a session
1205	where they will never send a response back to the local rdist
1206	master process.
1207
1208      - Add ability to rdist a symlink to a directory and vice-versa.
1209	Previously, this would fail.
1210
1211      - Add checking and setting of file modes.  If a file's mode is not
1212	what it should be, the entire file is updated in case there was
1213	any tampering.  If the target is a directory, then just the mode
1214	of the directory is updated.
1215
1216      - Major code cleanup and restructuring.  Major portions of the code
1217	has been re-written and/or restructured.
1218
1219      - Add config.h file for configuration related items.
1220
1221      - Fixed a security hole with setreuid().
1222
1223      - Add better error messages.  We now distinguish between LOCAL and
1224	REMOTE errors.
1225
1226RCS INFO
1227
1228$Id: ChangeLog,v 1.25 1998/03/15 22:28:31 mcooper Exp michaelc $
1229