2005-02-17	Claudio Fontana <claudio@gnu.org>

	imported gnulib module socklen and dependencies
	
	* lib/socket_.h: new file from gnulib
	* m4/socklen.m4: new file from gnulib
	* m4/sys_socket_h.m4: new file from gnulib
	

2005-02-02	Claudio Fontana <claudio@gnu.org>

	* [all_sources]: set this project name to jugtail, as a modified
	  version, to avoid any trademark issues; autotoolized package.
	
2005-06-26	Claudio Fontana <claudio@gnu.org>
	
	* [all_sources]:
	  Changed license and copyright preamble to GPL
	
	  Changed 'Routine' comments in real and proper
	  function prototypes, to be included #ifdef USEPROTOTYPES

	  Reindented with indent using GNU style.
	
	* ChangeLog: created ChangeLog from information scattered
	  in each source file comments.
	
	* configure: modify check for stdarg.h and varargs.h to assume
	  stdarg.h is available even if not found in /usr/include/ .
	  This solves compilation break with some GNU/Linux distributions.

	* AUTHORS: created AUTHORS file
	* COPYING: include a copy of the GPL v2 license
	
	* about.jughead: renamed to ABOUT, updated all references
	* jughead.changes: renamed to NEWS, updated all references
	* jughead.readme: renamed to README, updated all references
	* jughead.faq: renamed to FAQ, updated all references 

	* Makefile.dist:
	  Fixed and updated tar target, removed reference
	  to non-existant file jughead.todo

	  Added new 'dist' target, which mimics 'tar' target, but
	  creates a .tar.gz release

1994-11-19	Rhett "Jonzy" Jones 
	* configure:
	  Some script cleaning up, and even better support for SCO.
	* sockets.c:
	  with code changes submitted by: paul@openage.com
	  Yipes!  Logic preprocessor error fixed.

1994-11-16	Rhett "Jonzy" Jones 
	* sockets.c:
	  with code changes submitted by: paul@openage.com
	  Added support for SCO compilation.
	* jughead.c: likewise

1994-11-15	Rhett "Jonzy" Jones with assistance
	* configure:
	  from paul@openage.com.  Gave better support for SCO.

1994-11-14	Rhett "Jonzy" Jones 
	* configure:
	  Fixed an introduced problem when configuring for the NeXT.
	  Thanks patrick@nightingale.nurs.utah.edu for letting me
	  use your machine, and scottv@amhrt.org and
	  troesch@malahat.library.uvic.ca for bringing the problem
	  to my attention.

1994-10-9	Rhett "Jonzy" Jones 
	* jugheadVctl.c:
	  Replaced the call to unlink() with Unlink() to ensure
	  core won't dump if the file to unlink does not exist.

	* jughead.c: likewise

1994-9-27	Rhett "Jonzy" Jones 
	* search.c: Removed all use of rm.
	* jughead.h: likewise
	* configure: likewise
	* jugheadVctl.c: likewise
	* jughead.c: likewise
	* jughead.conf: likewise
	* jugheadConf.c: likewise
	* jughead.conf.h.dist: likewise

1994-9-27	Rhett "Jonzy" Jones 
	* jugheadConf.c:
	  Added the routine HandleVeronicaToken() to parse the
	  veronica.ctl token values slightly different than the
	  jughead.conf values.

1994-9-26	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Added the "jughead.conf.5 and "veronica.ctl.5" man page
	  to the distribution.

	  Added the target "make installconf".  Slight changes
	  to some of the targets.
	
1994-9-25	Rhett "Jonzy" Jones 
	* jughead.c:
	  Added the ControlCAbort() routine and appropriate signal
	  handling to ensure the temporary file is discarded prior
	  to termination if SIGINT (control-c) is encountered.
	
1994-4-26	Rhett "Jonzy" Jones 
	* dirTree.c:
	  with code from Maes@elec.ucl.ac.BE
	  Added the -DLOCALE to the CFLAGS to support
	  the ISO-8859-1 character set for the European Community.

	* Makefile.dist: likewise
	
1994-9-25	Rhett "Jonzy" Jones 
	* configure:
	  Commented out the use of "&& test -x $i" when attempting to
	  locate cat, rm, sort, and touch.
	
1994-9-24	Rhett "Jonzy" Jones 
	* sockets.c:
	  Made TooMuchTime4Read() and env be static
	  so they can exist with the same names in other
	  files, and thus handle taking too long to read
	  when playing a client.

	* jugheadVctl.c:
	  Added code to prevent waiting for ever for a server reply,
	  which includes the TooMuchTime4Read() routine.

	* jughead.c:
	  Altered the parameters to the system call sort() and
	  SpankDuplicateEntries(), now make the system call to rm(),
	  and no longer call rename().  rename() does not work
	  across mounted devices.  Hello I'm awake.
	  Added code to prevent waiting for ever for a server reply,
	  which includes the TooMuchTime4Read() routine.

1994-9-23	Rhett "Jonzy" Jones 
	* jugheadConf.c:
	  Fixed a problem in ParseLine() where a pound sign '#' in
	  double quotes for a value in the configuration file was
	  interpreted incorrectly as a comment.  Yipes!
	  Added some better error testing, and now give warnings
	  when things look a little strange.

	* jughead.conf:
	  Just documented the ability to use "Disallow:"
	  directives like that found in the 'veronica.ctl' file.
	  This is just a pleasant side effect of jughead now
	  parsing the 'veronica.ctl' file to give better veronica
	  support.
	
	* jugheadVctl.c:
	  Added PrintTheList() for debugging assistance.

1994-9-22	Rhett "Jonzy" Jones 
	* sockets.c:
	  Added to routine PostContactHostError() solely for
	  code consolidation.

	* sockets.h:
	  Added declaration of PostContactHostError().

	* searchCmnds.c:
	  Added the routine WhichFile(), which returns the name
	  of the veronica data file "data.veronica" if it exists
	  otherwise it returns the name of the data file "data".
	  and added use of the global variable 'veronica'.

	* search.c:
	  Minor change to report the name of the veronica file
	  when in debug mode, and slight change to the way
	  ReadConfFile() is called to support the "Disallow:"
	  directive.

	* jugheadConf.c:
	  Made ReadLine() no longer be static to help consolidate
	  routines.
	  Added the routine NullifyDisallowList() to prevent
	  jughead from eating memory when running as search engine
	  by constantly parsing the "Disallow:" directive from
	  'jughead.conf'.

	* jugheadVctl.c:
	  Finished up fixing the problem of determining end-of-file
	  with the veronica.ctl file.

	* jughead.c:
	  Add the routine SpankDuplicateEntries() to ensure there is
	  not a gopher0 and gopher+ item pointing to the same item.
	  This routine removed the gopher0 item.
	  Added the inclusion of <errno.h> and did some code
	  cleansing.
	  Altered the way ReadConfFile() gets called to the
	  "Disallow:" directive can be utilized in jughead.conf.

1994-9-20	Rhett "Jonzy" Jones 
	* jughead.h:
	  Gave support for the -V flag which is used in conjunction
	  with the -b flag to build a database file for veronica
	  which does not contain any "Disallow" gopher paths.

	* jughead.c: likewise
	* getargs.c: likewise
	* jugheadConf.c: likewise

1994-9-20	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Added "jugheadVctl.c" which now allows handing veronica
	  a database which does not contain any "Disallow" gopher
	  paths.

1994-9-17	Rhett "Jonzy" Jones 
	* configure:
	  If the system call "whereis" does not exist then assume
	  cat, rm, sort, and touch reside in /bin.  Implemented for
	  SCO system support.

1994-9-16	Rhett "Jonzy" Jones 
	* configure:
	  Gave better support for NeXT 3.0
	  Thank you pgr@ramandu.ext.vt.edu

1994-9-15	Rhett "Jonzy" Jones 
	* configure:
	  Added the ability for the script to continue if errors
	  were encountered and could not determine which libraries
	  to link to.

1994-9-14	Rhett "Jonzy" Jones 
	* jugheadConf.c:
	  Added token values and the respective strings to support
	  better error handling when parsing the veronica.ctl file.
	  Who knows, may want to use these in the future.
	
1994-9-13	Rhett "Jonzy" Jones 
	* search.c:
	  Added inclusion of <sys/errno.h> and <errno.h>,and modified
	  DoSearch() to support removal of the <defunct> process which
	  would exist until a connection was received.  Support for
	  this feature will only occur when "#define NODEFUNCT"
	  is not in comments or has been issued from the command line
	  with the "make NODEFUNCT=-DNODEFUNCT", or "make nodefunct"
	  command.

	* Makefile.dist:
	  Added "NODEFUNCT" to JFLAGS to support removal of the
	  <defunct> process which requires the following command:
	  make NODEFUNCT=-DNODEFUNCT, added the targets
	  "defunct" and "nodefunct" which remove search.o to
	  force a recompilation with NODEFUNCT defined where
	  appropriate.

1994-9-10	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Added the FAQ file to the distribution.

1994-8-20	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Added the veronica.ctl file to the distribution.

1994-8-16	Rhett "Jonzy" Jones 

	* Makefile.dist:
	  Removed all uses of POSIX_SOURCE and dependencies.
	
	* configure:
	  Commented out all checks for and references to _POSIX_SOURCE
	  which is are longer needed.

	* sockets.c:
	  Modified SendString() to utilize fputs() instead of
	  fprintf() depending on the appropriate #ifdef.

	* search.c:
	  Fixed a problem of not being able to SIGHUP jughead when
	  jughead was started via rc.local.
	  Thank you Kuypers@sri.ucl.ac.be for bringing this to my
	  attention, and thank you ldl@cs.utah.edu for finding the
	  errors of my ways.

1994-8-10	Rhett "Jonzy" Jones 
	* configure:
	  A/UX needs to have _POSIX_SOURCE defined so jughead won't
	  dump core using fprintf() by using fputs() instead.

1994-7-24	Rhett "Jonzy" Jones 
	* jugheadConf.c:
	  Added the routine MakeInt().

1994-7-24	Rhett "Jonzy" Jones 
	* search.c:
	  Added the following variables so all variables in
	  jughead.conf can be overrided via jughead.conf:
	  delimiters, defaultboolop, jugheadhelptitl, usagerror,
	  wildcarderr, tomnyprcserr, noforkerr, gtstrerr, readerr,
	  tmpfilename, catcommand, rmcommand, sortcommand, touchcommand,
	  port2use, maxprocs, maxitems2return.
	  Removed 'searchPort' as a parameter to DoSearch() because this
	  variable is now called 'port2use' and defined localy.
	  Renamed 'port2log' to 'port2use'.  Why did I name it 'port2log'?
	  Removed the InitSearchEngine() routine which now gets handled
	  via the call to ReadConfFile().

	* getargs.c: likewise
	* jughead.h: likewise
	* jughead.c: likewise

1994-7-24	Rhett "Jonzy" Jones 
	* sockets.c: Removed inclusion of jughead.conf.h.
	* searchCmnds.c: likewise
	* getargs.c: likewise
	* search.c: likewise

1994-7-23	Rhett "Jonzy" Jones 
	* jugheadConf.c:
	  Added support for the remaining defines in the jughead.conf.h
	  file.

	* sockets.c:
	  Added the routine SendBuffer() to support sending the
	  datafile to veronica.

	* sockets.h:
	  Added the forward declaration to SendBuffer().

1994-7-22	Rhett "Jonzy" Jones 
	* jughead.conf:
	  Gave support for remaining variables defined in
	  jughead.conf.h.  This file can now override any define
	  defined in jughead.conf.h.

	* jughead.conf.h.dist:
	  All variables in this file can now be overridden in the
	  jughead.conf file.  The variables in this file are all
	  UPPERcase while the variables in the jughead.conf file
	  are all lowercase.
	
1994-7-22	Rhett "Jonzy" Jones 
	* searchCmnds.c:
	  Added support for the special commands "?datafile" and
	  "?datasize" to in getting the datafile to veronica.
	  This includes the addition of the routines:
	  GetDateFileSize() and SendDataFile().

	* configure:
	  Fixed the the problem of using "echo -n" on machines
	  that do not support the -n flag but support the \c flag.
	  Thank you Alan.Thew@liverpool.ac.uk for letting me know
	  I need to fix the problem.

1994-7-6	Rhett "Jonzy" Jones 
	* configure:
	  fixed a bug when configuring for NeXT 3.1 and added support
	  for NeXT 3.2.

1994-7-2	Rhett "Jonzy" Jones 
	* configure:
	  When determining the pathway to cat, rm, sort, and touch,
	  the man page is no longer considered an option.  This was
	  added to ensure the man page is not used for sites that
	  have the execution bit set on the man page.  Hmm.

1994-6-29	Rhett "Jonzy" Jones 
	* configure:
	  This file now creates jughead.conf.h from jughead.conf.h.dist
	  with properly configured values for CATCOMMAND, RMCOMMAND,
	  SORTCOMMAND, and TOUCHCOMMAND.  configure now has less
	  things the user must do port jughead.
	
	* Makefile.dist:
	  Added jughead.conf.h.dist which is now the basis for
	  configure to create jughead.conf.h to lessen the things
	  the user needs to do to port jughead.

1994-6-28	Rhett "Jonzy" Jones 
	* configure:
	  Added support for Linux.

	* sockets.c:
	  Added #ifndef LINUX #include <sys/socketvar.h> to support
	  linux compilation

1994-6-24	Rhett "Jonzy" Jones 
	* configure:
	  Added the test to determine if /bin/touch exists and inform
	  the user if it resides in a different location.

	* search.c:
	  Modified HangUpSignal() to touch /usr/local/etc/jughead.pid
	  to allow a make script to run via cron and a dependency
	  will exist to SIGHUP jughead.

	* jughead.conf.h.dist:
	  Added TOUCHCOMMAND to support the ability to run a make
	  script via cron such that a target dependency is in place
	  to SIGHUP jughead if the database is too new.

1994-6-18	Rhett "Jonzy" Jones 
	* getargs.c:
	  Fixed the most embarassing bug.  Changed "if (logFile)"
	  to "if (*logFile)" in GetArguments().  I have no idea how
	  I missed this, nor how long this potential disaster has
	  even existed.

1994-6-17	Rhett "Jonzy" Jones 
	* configure:
	  Mucho changes to support NeXT versions 2.1 and 3.1
	  Thank you patrick@nightingale.nurs.utah.edu for giving me
	  access to your NeXT machines.
	
	* tree.c:
	  Added #ifdef MAX to undefine it for use on the NeXT.
	  This was done to prevent the warning message and to
	  ensure my MAX() definition gets used on all platforms.

	* search.c:
	  Added the #ifdef NEXT in MakeDaemon() to support
	  NeXT system version 2.1.

	* getargs.c:
	  Added the #ifndef NEXT include <unistd.h> to support
	  NeXT system version 2.1.

1994-6-16	Rhett "Jonzy" Jones 
	* configure:
	  IRIX cannot use -lsocket as a link flag, and if the currnet
	  version of IRIX is 4.? the -cckr compiler flag is required.
	  Thank you steve@cs.utah.edu for your assistance.

1994-6-15	Rhett "Jonzy" Jones 
	* configure:
	  Found I might not be able to use stdarg.h if both stdarg.h
	  and varargs.h exist.  Added code to compile sample code
	  using both includes to determine which include to use.
	  IRIX had to have the includes in a certain order.
	  Thank you sbrown@cs.utah.edu for your assistance.

	* Makefile.dist:
	  IRIX does NOT like "if's" in a Makefile.  What a drag.

1994-6-12	Rhett "Jonzy" Jones 
	* configure:
	  More changes to support BSD.

1994-6-11	Rhett "Jonzy" Jones 
	* configure:
	  Major implemenatation change to support AIX.
	* Makefile.dist: likewise

1994-6-11	Rhett "Jonzy" Jones 

	* dirTree.c: Added #ifdef NEED_MALLOC_H to give support for BSD.
	* getargs.c: likewise
	* path.c: likewise
	* jughead.c: likewise

	* search.c: Added #ifndef BSD to give support for BSD.

1994-6-9	Rhett "Jonzy" Jones 
	* configure:
	  Maes@elec.ucl.ac.be suggested checking for the major
	  release when attempting to determine if we need to
	  define -DSOLARIS2 and -DSVR4, so thats what I did.

	* Makefile.dist:
	  Gave support for "make help" to display all the make options

1994-6-8	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Major rewrite to support automatic dependency configuration.
	  Moved everything I previously moved into Makefile.config
	  back to Makefile.  Makefile now gets created on the fly
	  via automatic configuration.
	  Changed make realclean to make clobber, make clean to
	  make realclean, and make semiclean to make clean.

1994-6-7	Rhett "Jonzy" Jones 
	* jughead.conf.h.dist:
	  The values HOSTDOMAIN, JUGHEADHELP, and ERRORHOST can now
	  be altered via use of the jughead.conf file.
	  If the file $(DESTDIR)/jughead.conf exits and contains
	  values for hostname, jugheadhelp, and errorhost these
	  values will be used.  Otherwise the defaults get used.
	  I should mention these values will be reread upon jughead
	  receiving the SIGHUP signal.

1994-6-7	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Added the jugheadConf.c file for use in dealing with the
	  new jughead.conf file when acting as a search engine.

	* search.c:
	  Many changes to support the jughead.conf file and reading
	  this file, which contains variables, at SIGHUP.

	* utils.c:
	  Modified Mysprint() to make it somewhat cleaner.

	* sockets.c:
	  Modified GetHostName() to acquire the name in malloc space.
	  Changed ERRORHOST to errorhost to support the new
	  jughead.conf file.  Added use of 'hostname'.

	* searchCmnds.c:
	  Changed JUGHEADHELP to jugheadhelp to support the new
	  jughead.conf file.

	* jugheadConf.c:
	  Forgot to add support for new-line '\n',
	  carriage-return '\r', and tab '\t'.  Oops.
	
1994-6-3	Rhett "Jonzy" Jones 
	* utils.c:
	  Added the include sprint.h which is built via "make config"
	  to assist in local configuration.
	* Makefile.dist: likewise

1994-5-29	Rhett "Jonzy" Jones 
	* search.c:
	  Changed use of HOSTDOMAIN to 'hostname' to assist in
	  porting the compiled jughead to similar machines.
	  Thanks speyer@mcc.com for the suggestion.

	* jughead.conf.h.dist:
	  Changed the HOSTNAME to HOSTDOMAIN to support porting
	  the compiled jughead to different but similar machines.
	  Thanks speyer@mcc.com for the suggestion.
	
	* sockets.c:
	  Added GetHostName() to support acquiring the name of
	  the machine jughead is running on to make jughead more
	  machine portable once compiled.
	  Thank you speyer@mcc.com for the suggestion.

	* sockets.h:
	  Added the forward declaration to GetHostName().

1994-5-24	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Added jughead.sample.csh to the distribution.

1994-5-23	Rhett "Jonzy" Jones 
	* utils.c:
	  Added support for writting to 'rptPtr', which points to
	  the logFile file, if need be.

	* sockets.c:
	  Modified ContactHost() to no longer print except when
	  debugging and altered the meaning of the return value.
	  Added use of 'rptPtr' to write to the report file if
	  need be.  Modified the returned value of SetUpReadNwriter()
	  such that 0 implies no error, anyother value is the type
	  of error.  Ensured we don't overwrite memory with use of
	  MemoryCaution().

	* tree.c:
	  Added use of rptPtr in PrintTree() and PrintHostTree()
	  to support use of the new -l logFile flag.
	  Modified PrintTree() and PrintHostTree() to print
	  four leading spaces prior to the data for readability.

	* dirTree.c:
	  Added use of 'rptPtr' in PrintDirTree() to support the
	  use of the -l logFile flag. 

	* search.c:
	  Added use of 'rptPtr' to write to this file instead of
	  stderr if the -r flag is used.  Ensured we don't
	  overwrite memory with the addition of MemoryCaution().

	* path.c:
	  Modified PushPath() to also process the selector string,
	  host string, and port string.

	* jughead.c:
	  Modifed the call to PrintTree() to prints the results to
	  'logFile` if the -l flag is given.  Cleaned up ProcessMenu()
	  so use of the -h or -H flags will hinder use of any other flags.
	  Cleaned up use of the -m flag as well.
	  Removed all use and occurances of PrintPath(), BuildPath(),
	  InitPath(), and DestroyPath() and variables path[] and
	  pathPrinted[] to support a cleaner version of PopPath(),
	  PrintPath(), and PushPath() which are defined in "path.c".
	  Now terminate if we're going to overwrite memory.

1994-5-23	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Added path.c for better error reporting.
	
1994-5-22	Rhett "Jonzy" Jones 
	
	* utils.c: Cleaned up the code for lint.
	* tree.c: likewise
	* sockets.c: likewise
	* searchCmnds.c: likewise
	* search.c: likewise
	* dirTree.c: likewise
	* getargs.c: likewise

1994-5-22	Rhett "Jonzy" Jones 
	* jughead.c:
	  A little bit of code cleaning.  Expanded use of the variable
	  'logFile' to generate a report to assist in logging
	  the results of building the datafile via a script for
	  use with cron.  Removed use of 'onlyDoHosts' and 'onlyDoHostsT',
	  and removed use of the 'list' variable in DoWeTraverse().
	  Cleaned up the code for lint.  Commented out the PrintPath(),
	  BuildPath(), InitPath(), and DestroyPath() routine definitions.

	* getargs.c: likewise

1994-5-20	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Added sockets.h for lint compatibility.

1994-5-10	Rhett "Jonzy" Jones 
	* jughead.conf.h.dist:
	  Added the defines WILDCARDERR, TOMNYPRCSERR, NOFORKERR,
	  GTSTRERR, and READERR to assist in the localization of
	  of jughead to a given language and or the ability to
	  change the item from an error item to a text item.

	* search.c: likewise
	* sockets.c: likewise

1994-5-10	Rhett "Jonzy" Jones 
	* search.c:
	  A whole slew of code cleansing.
	  Commented out VerifyDataBaseName(), because it needs some
	  cleaning up.

1994-5-9	Rhett "Jonzy" Jones 
	* jughead.conf.h.dist:
	  With input from Kuypers@sri.ucl.ac.BE eased the work
	  required to localize jughead to a given spoken language
	  by using the define JUGHEADHELPTITL, which is the
	  title of the jughead help document.
	  Added USAGERROR to localize the "usage error" string.

	* searchCmnds.c: likewise

1994-5-9	Rhett "Jonzy" Jones 
	* utils.c:
	  Fixed a bug that slipped by, and was reported along
	  with the fix by Maes@elec.ucl.ac.BE.  Pascal your a
	  life saver.  Thanks for your assistance.
	
	* search.c:
	  Added the routine WritePIDfile() to write the jughead.pid
	  file to assist in scripting and sending SIGHUP or starting
	  jughead.  Thank you Kuypers@sri.ucl.ac.BE for the idea.
	
	* jughead.c:
	  Added the routine GetCommandLine() to get a copy of the
	  command line prior to parsing it so we can write the
	  command line to the jughead.pid file to assist in starting
	  jughead.  A reminder as to how jughead was started as a
	  search engine.  The file also contains the process ID to
	  assist in scripting and sending SIGHUP to jughead.
	  Thank you Kuypers@sri.ucl.ac.BE for the idea.

1994-5-7	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  via notes from Maes@elec.ucl.ac.BE to clean up this Makefile for
	  portability.
	
1994-5-6	Rhett "Jonzy" Jones 
	
	* search.c:
	  Added use of #ifdef SOLARIS2 for better Solaris support/
	  Thanks Maes@elec.ucl.ac.BE.


1994-5-6	Rhett "Jonzy" Jones 
	
	* getargs.c: Changed the use of #ifdef NEXT_3.0 to #ifdef NEXT.
	* sockets.c: likewise

1994-5-6	Rhett "Jonzy" Jones 
	* searchCmnds.c:
	  Changed all calls to strcmp() to StrCmp() and strncmp()
	  to StrnCmp() to support both ASCII and ISO-XXXX-Y character sets.
	  Removed use of LOCALE, and no longer use strncoll().

	* search.c: likewise
	* utils.c: likewise
	* dirTree.c: likewise
	* tree.c: likewise
	* getargs.c: likewise
	* jughead.c: likewise

	* Makefile.dist:
	  No longer need iso8859-1.h and ISO-8859-1.NOTES.

1994-5-5	Rhett "Jonzy" Jones 
	* jughead.conf.h.dist:
	  Gave full pathways to the CATCOMMAND, RMCOMMAND, and
	  SORTCOMMAND defines, which are the cat, rm, and sort commands
	  respectively.
	
1994-5-5	Rhett "Jonzy" Jones 
	* search.c:
	  Added code to automagicly run jughead in the background
	  to detach itself from a tty, when not running with
	  debugging turned on.  Done with the MakeDaemon() routine.

1994-5-5	Rhett "Jonzy" Jones 
	* search.c:
	  Added support for Solaris compiler with use of #ifdef SVR4.
	  Thanks cudma@csv.warwick.ac.uk.

	* sockets.c: likewise

1994-5-5	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Modified the way tar does its job.  Now the results
	  are set up such that when you untar the file you get
	  the results placed in a directory.
	  Thank you hoymand@joe.uwex.edu for the suggestion.

1994-5-3	Rhett "Jonzy" Jones 
	* searchCmnds.c:
	  Moved many definitions from the Makefile into
	  jughead.conf.h and now include jughead.conf.h.
	* Makefile.dist: likewise
	* jughead.c: likewise
	* getargs.c: likewise
	
1994-5-3	Rhett "Jonzy" Jones 
	* utils.c:	
	  Maes@elec.ucl.ac.BE.  Added to the code strncoll()
	  to support the use of strncmp() in an ISO 8859-1
	  character set environment.
	
1994-5-3	Rhett "Jonzy" Jones 
	* search.c:
	  Moved the definition of DELIMITERS and MAXITEMS2RETURN
	  to jughead.conf.h and now include jughead.conf.h.
	  Optimized some of the code.  Aded the use of ERRORHOST
	  in GetAllPositions() and PostMsg2Socket().

	* sockets.c:
	  Added the use of ERRORHOST to ProcessRequest() and now
	  include jughead.conf.h.

1994-5-3	Rhett "Jonzy" Jones 
	
	* tree.c: Optimized some of the code.
	* utils.c: likewise
	* getargs.c: likewise
	* jughead.c: likewise

1994-5-2	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Split the README file into README,
	  NEWS, and jughead.todo.  Added the new files
	  to list of files to tar'ed up.  Did this solely for ease
	  of readability.  Split this file into Makefile and
	  Makefile.config.  Thus only Makefile.config needs to be
	  edited to complete the code port.
	
1994-5-1	Rhett "Jonzy" Jones 
	* search.c:
	  Cleaned up the code by changing asterikPos in GetAllPositions()
	  and PostPositions() from type size_t to an int.

	* tree.c:
	  Fixed a bug when looking for "a*", it would not find "a".
	  Thank you Kuypers@sri.ucl.ac.BE for pointing this out.
	  Also cleaned up the code by changing asterikPos in
	  BinarySearch() and numChars in LessOrEqual() from type
	  size_t to an int.

1994-4-30	Rhett "Jonzy" Jones with
	* utils.c:
	  code from Maes@elec.ucl.ac.BE which is a rewrite
	  of StrToLower() to make this routine ISO-8859-1 clean.
	  Thank you Maes@elec.ucl.ac.BE for the code.

	* jughead.c:
	  Maes@elec.ucl.ac.BE reported a typographical error on my
	  part in the call to setlocale().  Had to fix this one
	  real fast.  Oops.

1994-4-26	Rhett "Jonzy" Jones with
	* utils.c:
	  code from Maes@elec.ucl.ac.BE
	  Added the -DLOCALE to the CFLAGS to support
	  the ISO-8859-1 character set for the European Community.

	* tree.c: likewise
	* searchCmnds.c: likewise
	* search.c: likewise
	* getargs.c: likewise
	* jughead.c: likewise

1994-2-25	Rhett "Jonzy" Jones 
	* search.c:
	  Renamed and rewrote ChildProcess() to ReapChild() to support
	  maximum number of processes to fork off.
	  Added PostMsg2Socket() to send error messages back to the client.
	
1994-2-25	Rhett "Jonzy" Jones 
	* search.c:
	  Added the use of MAXPROCS and numProcs to support the maximum
	  number of forked jughead processes.

	* getargs.c: likewise
	* jughead.c: likewise
	* Makefile.dist: likewise

1993-12-8	Rhett "Jonzy" Jones 
	* search.c:
	  Fixed a problem, which frutig@cr-sp.rnp.br reported, that
	  resulted in an imcompatible database when using the -m flag
	  inconjuction with the -B flag.
	
1993-11-14	Rhett "Jonzy" Jones 
	* search.c:
	  Modified the code to support the 'm' flag when building
	  the hash tables.  This way no output will go to the screen
	  and can thus help speed up a lengthy process.
	  Support for this was requested by: doylej@liberty.uc.wlu.edu
	
	* getargs.c: likewise

1993-11-14	Rhett "Jonzy" Jones 
	* Makefile.dist: 	
	  Added use of "#ifdef NEXT_3.0" to support NeXT running 3.0.
	  This is now one of the DFLAGS and should be uncommented
	  if using a NeXT running 3.0.
	  Thank you hoymand@joe.uwex.edu for make the patches
	  available in the source.

	* getargs.c: likewise
	* sockets.c: likewise
	
1993-11-14	Rhett "Jonzy" Jones 
	* jughead.c:
	  Modified DoWeTraverse() to support wildcarding of any hosts not
	  to search with the -x flag.  The port is still required.
	  Thank you gopher@pereiii.uji.es for the patch.

	  Modified ProcessMenu() such that no gopher+ ASK block directory
	  will be searched.  Thank you doylej@liberty.uc.wlu.edu for
	  bringing this to my attention.

1993-5-24	Rhett "Jonzy" Jones 
	* search.c:
	  At the request of doylej@liberty.uc.wlu.edu gave support
	  for the "?range=start-stop what" special command.

1993-5-24	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Utermann@Uni-Augsburg.DE reported a problem with make
	  on a RS6000, so I tweeked the Makefile a bit, and added
	  the macro DFLAGS, which is the -D macros for use with
	  lint.

1993-5-23	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Added JUGHEADHELPDOC to supports some special commands
	  when jughead is a search engine.  Also added searchCmnds.c
	  as a dependency.  Added THEHOST, which should be the
	  fully qualified name of the machine running jughead.

1993-5-23	Rhett "Jonzy" Jones 
	* search.c:
	  Gave support for special commands.  For information on these
	  commands consult either "searchCmnds.c", the man page, or
	  "ABOUT".

1993-5-23	Rhett "Jonzy" Jones 
	* search.c:
	  At the request of doylej@liberty.uc.wlu.edu modified
	  PrintPositions() to return a link when there are more than
	  MAXITEMS2RETURN items.  The link has the form:
	  Name=xxx items found.  Please consolidate your request
	  Type=1
	  Port=the port number jughead was started under
	  Path=?all [the requested search]
	  Host=THEHOST as defined in the Makefile

1993-5-23 by Rhett "Jonzy" Jones 
	* searchCmnds.c:
	  Commented out the pathway stuff with #ifdef DO_PATHWAY
	  because this isn't ready yet.
	  Merged this routine into jughead.
	  Modified StillNeed2Parse() such that "?" gets mapped to
	  "?help".

	  At the request of doylej@liberty.uc.wlu.edu gave support
	  for the "range=start-stop what" special command.
	
1993-5-23	Rhett "Jonzy" Jones 
	* getargs.c:
	  Forgot to assign the correct value to 'initialHost', for use
	  with the -t flag.

1993-5-22	Rhett "Jonzy" Jones 
	* jughead.h:
	  Removed the external definitions for exceptionHost',
	  'exceptionPort', and 'exceptionSelStr', and added the
	  variable 'nogos' to support a list of exceptions.

1993-5-22	Rhett "Jonzy" Jones 
	* getargs.c:
	  Altered GetArguments() to work on a list of hosts and ports
	  or selection strings.

1993-5-22	Rhett "Jonzy" Jones 
	* jughead.c:
	  Removed the variables 'exceptionHost', 'exceptionPort', and
	  'exceptionSelStr', and the routine ValidSelStr(), added the
	  variable 'nogos' to support multiple exception items.  Thus
	  jughead now can support multiple hosts and ports not to traverse
	  as well as multiple selection strings to traverse.

1993-5-22	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Changed DEFAULTBOOLOP to DEFBOOLOP.  So the compiler
	  wouldn't get a null string.  Oops.  Thank you
	  doyle@liberty.uc.wlu.edu for informing of this problem.
	
1993-5-22	Rhett "Jonzy" Jones 
	* search.c:
	  Added DEFAULTBOOLOP, which is defined in the Makefile to
	  allow for an easy change of the default boolean operator
	  to use when no operator seperates word to search for.
	  Thank danj@welchgate.welch.jhu.edu for this one.	

	* Makefile.dist:
	  Added DEFAULTBOOLOP to the Makefile to allow one to alter
	  the default boolean operation if none is given seperating
	  words to search on.  

1993-5-21	Rhett "Jonzy" Jones 
	* getargs.c:
	  Had to fix the -m flag.  The menus would not be displayed
	  with or without this flag set.

1993-5-20	Rhett "Jonzy" Jones 
	* jughead.c:
	  Moved UsageError(), PrintVersion(), GetParamsFromStdin(), and
	  GetArguments() to getargs.c, due in part to rewritting some of
	  these routines.  Removed initialization of global variables at
	  the time of declaration, and added InitializeTheWorld() to
	  accommodate the initialization.  Added the variable username
	  to support -u username and allow jughead to act as a search
	  engine running with a uid of username.

1993-5-20	Rhett "Jonzy" Jones 
	* search.c:
	  Added the inclusion of sys/types.h, sys/socket.h, time.h,
	  and pwd.h.  Gave support for the -u username to change the
	  process uid when running jughead as a search engine.
	  Added the routine VerifyDataBaseName() to allow verification
	  of the database while allowing for the database to reside in
	  a directory other than jughead.  Thank you rzakon@mitre.org
	  for bringing this to my attention.

1993-5-20	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Included the source files getargs.c, and jughead.h.
	
1993-5-18	Rhett "Jonzy" Jones 
	* sockets.c:
	  Added the #ifdef _POSIX_SOURCE in SendString() to prevent
	  core dumps under A/UX.  Thank you hagberg@cumc.cornell.edu

1993-5-15	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Moved "$(NOWARNINGS)" from the macro CFLAGS to the target
	  jughead, and added "%.o:= CFLAGS += $(NOWARNINGS)" to support
	  the use of the lint target, which does not like -w.  This was
	  done so both the targets jughead and lint can utilize the
	  CFLAGS macro.  Added support for lint.  And attempted to give
	  better directions when porting the code.
	
1993-5-14	Rhett "Jonzy" Jones 
	* search.c:
	  doyle@liberty.uc.wlu.edu reported that "a and b" returns
	  'a' if 'b' did not exist.  I believe things are fixed now.

1993-5-14	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Changed some of the comments to assist those porting to
	  ultrix4.2.
	
1993-5-12	Rhett "Jonzy" Jones 
	* search.c:
	  doyle@liberty.uc.wlu.edu reported that "a and b" returns
	  'b' if 'a' did not exist, so ... back to the drawing board to
	  fix this one.

1993-5-11	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  make install now installs jughead and the manpage with 755
	  permissions.  make semiclean now removes anything ending in a
	  percent character, '%'.  This was done to support textedit on
	  a sun.

1993-5-10	Rhett "Jonzy" Jones 
	* search.c:
	  Modified PostPositions() to correct a problem of a search on
	  "a and b and c", where if "a and b" evaluated to nothing, the
	  result of anding this result with c produced c.  Example:
	  "a and b and c" was the same as "a and b or c" if "a and b"
	  evaluated to nothing.  Thanks doyle@liberty.uc.wlu.edu for
	  bringing this to my attention.
	  Changed the format of the logfile by altering the string
	  "jughead-Search ->" to now be "jughead(port#) ->", where
	  port# is the port jughead was started up with.  This change
	  was at the request of doyle@liberty.uc.wlu.edu to indentify
	  which jughead daemon did the logging when more than one
	  jughead is logging to the same log file.  Added the variable
	  'port2log' to support this feature.
	
1993-5-8	Rhett "Jonzy" Jones 
	* search.c:
	  Added the routine PrintList(), and defined BOOLOP_DEBUG to
	  assist in fixed a problem in PostPositions(), which gave
	  incorrect results of "a* b* not c*".  Thank you
	  doyle@liberty.uc.wlu.edu for bringing this to my attention.
	
1993-5-6	Rhett "Jonzy" Jones 
	* search.c:
	  Modified LogMessage() to return if neither logFile or debug is
	  true.  This was done for efficiency purposes only.
	  Changed the loop counter in CleanUp() from an int to a long.
	  Fixed a bug that caused a core dump if received the SIGHUP
	  signal more than once.  This was rectified by making
	  items[l].positions = NIL in CreateElements().  Oops!
	  Fixed a potential bug in CreateElements() by making sure
	  numElements
	  gets a long value instead of a short.
	  Added the #define SHOW_ITEMS_DURING_DEBUG to ease in debugging.
	  Did some code cleaning up.

1993-5-6	Rhett "Jonzy" Jones 
	* sockets.c:
	  Modifed ProcessRequest() to adhere to the gopher protocol
	  by sending error.host and -1 as the port if we encountered
	  an error.  Done solely to prevent clients from crashing.
	
1993-5-5	Rhett "Jonzy" Jones 
	* jughead.c:
	  Added support for -X which is a selector string to not traverse.
	  A quick hack to not traverse any selector strings that begin
	  with "ftp:".  Example: jughead soar.cc.utah.edu -X "ftp:*".
	  The variable used for this support is 'exceptionSelStr' and
	  does supports wildcarding.
	
1993-5-5	Rhett "Jonzy" Jones 
	* search.c:
	  Modified PostPositions(), and added GetAllPositions()
	  to support partial word searches.
	  Added the #define MAXITEMS2RETURN.

	* tree.c:
	  Modified LessOrEqual() and BinarySearch() to support
	  partial word searches.

	* tree.h:
	  Modified the prototyped forward declaration of BinarySearch()
	  to support partial word searches.
	
1993-5-3	Rhett "Jonzy" Jones 
	* jughead.c:
	  Modified LooksGood() to immediatly return false if we acquired
	  a null string.  This fixed a core dump when attempting to
	  retrieve an empty directory from a gopher+ server.  Thanks
	  lindner@boombox.micro.umn.edu for the bug report.

1993-4-29	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Added POSIXSOURCE for use when compiling under A/UX, and
	  commented what variables should be used for various operating
	  systems to assist in the porting of jughead.

1993-4-20	Rhett "Jonzy" Jones 
	* jughead.c:
	  Added LooksGood() to make sure we received a valid line of
	  of data from the server.  This routine was written because
	  it was found the PC Gopher Server did not follow gopher
	  protocol.  Added the variable menuFlag to prevent printing of
	  the menus when building the dataFile.  Fixed a bug that would
	  not correctly validate the port for the exceptions host, which
	  is the host and port to not traverse.

1993-4-4	Rhett "Jonzy" Jones 
	* search.c:
	  Added the variables elements2do, indexName, hashName, ifp, and
	  hfp, the routines GetPositions(), WriteHashTables(), and
	  MakeHashTables(),
	  to support giving the user some feed back as to the status of
	  the program when building the index tables and the use of a
	  secondary hash table to limit the amount of memory used, and
	  modified GetDisplayString(), CreateWordsTree()

	* utils.c:
	  Added the routine NumberOfLines().
	
1993-4-1	Rhett "Jonzy" Jones 
	* jughead.c:
	  Added support for the -t flag which prints the time required
	  to either read in the index table, build the data file, or
	  process a menu from a given gopher server.  Added support for
	  the -a and -A flags which print the dirTree with the number of
	  directories served or the directories served respectivly.
	  Made 'buildIndex' and 'doSearch' global variables instead of
	  local to main() and adjusted GetArguments() to reflect the
	  change.  No longer sort the datafile to datafile.sorted when
	  using the -b option.  Instead dataFile gets sorted into
	  dataFile.

	* dirTree.c:
	  Modified PrintDirTree() and added the routine NumberOfDirs() to
	  support the -a and -A options.

1993-3-31	Mic Kaczmarczik <mic@bongo.cc.utexas.edu>
	* jughead.c:
	  Added support for an optional -p port flag when running as a
	  search engine.  Added the variable 'searchPort', modified
	  UsageError(), GetArguments() and the call to DoSearch() in
	  main().

	* search.c:
	  Added support for an optional -p port flag when running as a
	  search engine .  Added the variable 'searchPort as a parameter
	  in DoSearch().

1993-3-30	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Added the ability for the user to specify the inclusion
	  of <varargs.h> if VARARGS is uncommented, otherwise <stdarg.h>
	  will be used.  Some compilers have vsprintf() return an int,
	  and others a char*, so depending on which VSPRINTTYPE is
	  is uncommented will determine which type is returned by this
	  routine.  Also allowed the ability to use prototypes by
	  uncommenting PROTOTYPES, the use of NOWARNINGS and the
	  OPTIMIZATION flags.
	
1993-3-30	Rhett "Jonzy" Jones 
	* utils.c:
	  Rewrote DoSystemCall() and added Mysprint().

	* utils.h:
	  Added the use of USEPROTOTYPES and added the
	  delcaration for Mysprint().
	  Added the declaration and prototype for NumberOfLines().
	
	* dirTree.c:
	  Added PrintDirTree().
	  Fixed that damn bug in BuildDirTree() that built the tree wrong.
	  'dTree' is NOT the same as 'node'...  dah!

	* dirTree.h:
	  Added PrintDirTree().

1993-3-28	Rhett "Jonzy" Jones 
	* Makefile.dist:
	  Now use THEVERSION as part of the compressed tar files
	  name.  Example: if THEVERSION = 0.3_beta the resultant
	  tar file will have the name jughead.0.3_beta.tar.Z

1993-3-28	Rhett "Jonzy" Jones 
	* jughead.c:
	  Added HandleIndention(), and modified DoWeTraverse() to print
	  "<< see line # >>" with the proper indention if we have seen
	  this directory before.  Added support for the -n flag.  If we
	  received a line from a server which did not have the host or
	  port string, the line is now not processed.  Fixed a problem of
	  not comparing the hosts correctly, which was fixed by converting
	  the incoming host name to lowercase.  If a menu path has been
	  traversed previously, it will no longer be traversed again and a
	  message stating what line to view will be printed with the
	  proper indention.  When not running to build the index table
	  as a search engine, jughead now prints a note if hosts were
	  encountered that could not be connected to, and just prior to
	  termination displays the hosts it could not connect to.

1993-3-28	Rhett "Jonzy" Jones 
	
	* utils.h: Added ifdef sun then don't use prototypes.
	* tree.h: likewise

	* search.c:
	  Added sun support with the inclusion of:
	  #ifdef sun include <unistd.h>.

1993-3-28	Rhett "Jonzy" Jones 
	* utils.c:
	  Added support for varargs.h, which is needed on a sun
	  and included modifying DoSystemCall().

1993-3-28	Rhett "Jonzy" Jones 
	* utils.c:
	  Fixed a problem using vsprintf() compiled on a sun.

1993-3-27	Rhett "Jonzy" Jones 
	* jughead.c:
	  Changed the name of DoWeRecurse() to DoWeTraverse().
	  Added CantGet2Host() nogoHead, and nogoTail to support the
	  ability of not attempting to connect to a host we could
	  not connect to previously.

1993-3-27	Rhett "Jonzy" Jones 
	* dirTree.c:
	  Made the local variable 'strs' global to this file to reduce
	  the amount of stack space used when calling recursive routines.
	  Swapped the values of SSTR and PSTR so the tree will now be
	  built with the port as the initial tree and the selector string
	  as the last tree.  This was done to reduce the amount of memory
	  used by the tree itself.
	
1993-3-27	Rhett "Jonzy" Jones 
	* Makefile.dist:
  	  Consolidated various #defines from the source files into
	  this Makefile to ease the portability of jughead.

	* search.c:
	  Moved the definition of PORT2USE to the Makefile.

	* jughead.c:
	  Moved the definitions of VERSION, CATCOMMAND, RMCOMMAND,
	  SORTCOMMAND, and TMPFILENAME to the Makefile.
	
1993-3-21	Rhett "Jonzy" Jones 
	* jughead.c:
	  GetParamsFromStdin() now only prints the message informing
	  the user to enter control-D when finished, only if we are
	  getting the information from stdin and not a file.

1993-3-20	Rhett "Jonzy" Jones 
	* utils.c:
	  Cleaned up some of the routines.
	
1993-3-18	Rhett "Jonzy" Jones 
	* jughead.c:
	  Added HostField2Lower() to make sure the host field gets
	  mapped to lowercase, which is needed when building the
	  index so that sort will eliminate all duplicates.
	  Fixed the system call to "sort" to only sort on the selector
	  string and beyond.  Also defined CATCOMMAND, RMCOMMAND, and
	  SORTCOMMAND for use when calling DoSystemCall().

1993-3-16	Rhett "Jonzy" Jones 
	* search.c:
	  PrintPositions() will only return the collected items if
	  the number of these items is less 1024.  Modified
	  PostPositions() to watch for the case where A and B and C
	  yeilds (A and B) = NIL, thus this result anded with C will
	  no longer print the entire list C.  Oversight in my part.

1993-3-16	Rhett "Jonzy" Jones 

	* tree.h: BinarySearch() now returns a long instead of a short.
	* tree.c: likewise
	
1993-3-15	Rhett "Jonzy" Jones 
	* jughead.c:
	  Relocated the changes made to BeenHereB4() to a new
	  routine EmptyStringCheck() so all occurances of "/",
	  "1/", and "1" get mapped to "".  I should mention I just
	  discovered "1" gets handled like "/", "1/", and "".  Hmm.

1993-3-15	Rhett "Jonzy" Jones 
	* search.c:
	  Added the ability to handle the -HUP interrupt.
	
1993-3-13	Rhett "Jonzy" Jones 
	* jughead.c:
	  Fixed some bugs, optimized some routines, and rewrote
	  DoSystemCall().  Removed Lowercase() and changed calls
	  to the routine to StrToLower(), which is defined in
	  "search.c".  Modified BeenHereB4() to handle the cases
	  where the selector string is "/" and "1/", which is the
	  same as "".

1993-3-13	Rhett "Jonzy" Jones 
	* tree.c:
	  Modified PrintTree(), so we can also print the host tree
	  in a more readable format, and added LongestStr2tab() and
	  PrintHostTree().
	
	* tree.h:
	  Altered the prototype for PrintTree() to now have the
	  'hostTree' flag.

1993-3-10	Rhett "Jonzy" Jones 
	* jughead.c:
	  Added support for the 'B' and 'l' flags.

	* tree.c:
	  Added BinarySearch(), LessOrEqual(), and NumberOfLeafs().

	* tree.h:
	  Added the typedef for Element, and prototypes for
	  BinarySearch() and NumberOfLeafs().
	
1993-3-9	Rhett "Jonzy" Jones 
	* tree.c:
	  Modified BuildList() and added DestroyList(), and
	  NumberOfListNodes().
	
1993-3-6	Rhett "Jonzy" Jones 
	* tree.c:
	  to support positions	adding InList() and BuildList().
	  Also altered CreateBranch(), BuildTree(), and PrintTree().

	* tree.h: to support positions.
	
1993-3-3	Rhett "Jonzy" Jones 
	* jughead.c:
	  Added support for the 'b' flag.
	
1993-2-27	Rhett "Jonzy" Jones 
	* jughead.c:
	  To support both the 'h' and 'v' flags, and to no longer
	  write recurrsivly to temporary files.  Now I only write
	  to a single temporary file.
