$Id: CHANGES,v 1.7 2001/08/14 04:49:30 garbled Exp $

Added dvt and rvt..  an interactive form of dsh with xterms.

Fixed a bug in jsd and dsh where it would lock up running ssh waiting for
input.

Add a jsd dir, and move jsd.c from dsh to the jsd dir.  Add nearly complete
jsh program, and jcommon.[ch].

Add new common subdir and move a tonnage of crap in there.  Mainly
common.c, common.h and strsep.c.

Fix horrid bug in dsh where dsh | more would lock terminals up.  Still
need to fix in seq, run, probably pcp.

Add <netinet/if_ether.h> to barrierd.c to shut AIX C up.

Lots of minor bugfixes, mostly dealing with failures to open files, opening
0 byte clusters, etc etc..

Pcp was still using it's own code to parse strings and groups.  Fully rewrote
the back-end internals to use the new linked-list stuff, and utilize common.c.
Pcp's code is now virtually identical to dsh, whereas before it had diverged
significantly.

Error handling has finally graduated to where I no longer feel that it
"needs work".

Fix a place where malloced data was strcatted to without being bzeroed.

Group, exclusion and -w nodes are now dynamicly generated arrays.  Removes
the MAX_GROUPS restrictions.

The nodelist and grouplists are no longer maintained in any way similar to
the original setup.  Nodes are not stored in a flat array of nodes, with a
corresponding flat array of group names.  Nodes are now stores in a linked
list of machines to run on.  Nodes which are not to be run on, are not
included in this list, so the back-end routines only need to execute code
on every node they are handed in the linked list.  This is all handled in
common.c now.  This removes the all compile time restrictions on MAXNODES,
allowing the program to scale much more efficiently.

# changes since 1.3
* Release 1.3 *

Break dsh, run and seq's common code into a common.c and common.h file,
so I don't forget to add options to run and seq when fixing dsh.  Also, fix
some locations where run and seq were out of sync slightly.

Fix a bug in pdf where if the -m option was used, filesystems at 100%
would not be displayed.

Handle ^C's correctly.  If a remote process is hung, and it is the current
process being read, you may ^C it, and the interrupt will be sent to the
remote process.  This would be just like hitting ^C on the remote end, 
and will only affect the process you are currently reading from.

Added ability to pcp multiple files and wildcards to remote hosts.

Made pcp and dsh compile on an ANSI compiler (IBM C, SUN C)

Make output from dsh look nicer, and format well.

# changes since 1.2
* Release 1.2 *

Bug fixes in dsh to deal with the start of a fangroup, and
a race condition, where large output would cause it to hang
waiting for descriptors to die.

Fix a bug in dsh that caused it to lose data on AIX, and 
dump core when transitioning fangroups.

Added the rungroup, and exclusion commands to all the programs.

Fix pdf to work on a heterogeneous cluster.

Add concurrency to pcp, to eliminate startup latency lossage.

Take some of the work out of the main loop in pcp, and only do it
once.  This should speed up serial copies by small amount.

Fix seq, and run to actually work.  Use a semi-atomic test and set
to create the seq file, so it actually runs through the nodes, rather
than execute on the same one over and over.

* Release 1.1 *
#no data previous to 1.1.  Sorry.
