From: lindner@mudhoney (Paul Lindner)
Newsgroups: alt.gopher
Subject: Gopher 0.9 ready to roll...
Date: 8 Apr 92 22:40:17 GMT
Article-I.D.: mudhoney.199204082240.AA26434
Reply-To: lindner@boombox.micro.umn.edu.
Distribution: alt
Original-To: gopher-news@boombox.micro.umn.edu (Gopher News Mailing List)
X-Mailer: ELM [version 2.3 PL11]

Version 0.9 of the UNIX gopher distribution is now available in many
sundry forms.  You can use anonymous ftp to get it from

   boombox.micro.umn.edu 
as 
   /pub/gopher/Unix/gopher0.9.tar.Z

Or you can get it through gopher itself:

% gopher -p 1/gopher/Unix boombox.micro.umn.edu 70

works on the command line...

Here's a link file you can put on your server:

Name=gopher0.9.tar.Z
Type=9
Port=70
Path=9/gopher/Unix/gopher0.9.tar.Z
Host=boombox.micro.umn.edu

Okay, here is everything that's changed in this new release:

Changes from 0.8 to 0.9
------------------------

-===== Server ======-

Added code from Mike MacGavrin that restricts access based on load
average.  Right now it works on SunOS 4.1.1.  It may work on others
too.  To use this option look in the conf.h file and define
LOADRESTRICT.

Added server directory caching!!  I took the digest idea of John
Sellins and incorporated it into the server.  When a directory is
transmitted a .cache file is created.  This file contains the raw
gopher directory information.  You can set the cache timeout value in
conf.h (Currently it's set to three minutes)  You can disable caching
with the -C switch..

Added dynamic data structure allocation.  No more limits to the size
of directories or lengths of strings!

Bolstered the builtin mailfile processing with code taken from nn.
Mail articles are now strictly sorted by legal from lines instead of
just checking the first five characters.

Changed index searches so that they use the built in headlines that
the indexes provide.  Much prettier looking and less code grokking for
me :-)

Changed the getcommand readline() error call to not dump core.  This
happens fairly regularly with the 0.7 client.  (0.8 doesn't cause this
problem)

Changed Makefile so that install depends on $(TARGET), not all.
(Pointed out by Edward Symanzik)

Changed daemon.c so that HPs use setsid() to disassociate from the
controlling tty. (fix from Jim Garlick)

Added -lm to the LIBS in the Makefile.  Some systems don't have ceil()
and floor() in libc.  Pointed out by Jim McCoy

Updated conf.h with instructions on defining NOSTRSTR for machines
that don't have strstr().  Suggested by Benjamin Littman.

Removed duplicate period that was being transmitted at the end of each
directory...

Added patch from Edward Symanzik that fixes GDaddGS for once and all.
Some strange sorting behavior was still being seen.

Fixed problems with subject lines in mailfiles being set incorrectly.
(Fix from Mike Macgirvin)

Fixed problems logging Ranges.  Filename wasn't being appended correctly. 

Fixed problem with munged logfiles with many simultaneous gopher
connections.  The server uses fcntl to do its locking.  Patch
submitted by Edward Symanzik.

The Waterloo'isms for setting the UID to a "safe" person are only in
place for the spawned server. The code to setuid comes after the inet
server runs, and in fact, a "-u" or "-U" option is ignored for inet
operation. Sure it's an inet config option, but the man page says that
"-u" sets it, and it doesn't in this case. This might lead people to a
false sense of security... (Fix from Mike Macgirvin)

Fixed problems with compressed files under the -c option.  Now works
correct. Fix from Billy Barron.

Fixed logging of built in search requests.  The query wasn't logged
before.

Added small feature from John Sellins that allows you to use a plus
(+) in the Host= and Port= lines of a link file.  When the server
comes across these it substitutes the current hostname and port of the
current server.

---======= Client ======---

Gopher the Cache!!  This version of the client caches the previous
directories indefinitely....  Perhaps should add timeouts.

Reduced memory usage ~4 times.  Implemented data structures in pseudo
C++ fashion.  All memory for character strings is dynamically
allocated.  No more hard limits!  Directories can be as large as your
available memory!  Cool!

Removed bogus calls to strstr in gopher.c relating to bolding of
output words. (Pointed out by Tim Perala)

Fixed conf.h so that it doesn't bogusly set IS_BSD for an Encore
Multimax. (Pointed out by Tim Perala)

Bug: The prompt when viewing a file allows for mailing in secure mode.
The actual code however doesn't let you do this.  Fixed it.  (Pointed
out by Ed Symanzik)

Fixed security hole.  Don't allow people to change options using the O
command when secure mode is active. (Fix from Rickard Schoultz) Also
disabled saving hqxs and binaries..

Fixed annoyance.  If you selected a directory and it couldn't connect,
the cursor would jump to the first item.  (Fix from Edward Symanzik)

Fixed -t option parsing.  Pointed out by Andreas Haug & John Sellins. 

Added Binhex and PChex compatibility. (Tweaks from John Sellins)

Fixed problem with page up, it didn't go up all the way.  It was 12
lines off.  (Fix from Edward Symanzik)




-- 
 | Paul Lindner | lindner@boombox.micro.umn.edu   | Slipping into madness
 |              | Computer & Information Services | is good for the sake
 | GopherMaster | University of Minnesota         | of comparision.
///// / / /    /////// / / / /  /  /  /   /      //// / / / /  /  /  /   /