From: fadden@uts.amdahl.com (Andy McFadden)
Newsgroups: rec.games.netrek
Subject: trekhopd v1.3 on charon
Date: 5 Oct 92 17:44:07 GMT
Reply-To: fadden@amdahl.uts.amdahl.com (Andy McFadden)
Organization: Amdahl Corporation, Sunnyvale CA

(don't know if this made it out the first time... trying again)

I put trekhopd v1.3 on charon.amdahl.com (129.212.11.1) in
pub/netrek/thd1.3.tar.Z

Most interesting improvement is to the client code.  Instead of the ugly
struct in the client, you now get a configuration file which looks like:

-----
#
# gateway configuration for Netrek
#
# "blesstrek" will try to find this file as ".trekgwrc" first in the home
# directory and then in /usr/local/games/.
#

# set this line to "gw" or "trekhopd" depending on who you want to connect to
trekhopd

# this is the host with the gw or trekhopd process
charon

# port to call for trekhopd
6592

# local UDP ports, mapped by uid.  The last two ports are used by gw, and
# must match gw's specification.  Someday I'll fix the client so that this
# won't be needed at all with trekhopd...
#
# uid	uid-num	port	portA	portB
fadden	1290	5110	5111	5110
ctrown	1469	5070	5071	5070
END

# list of servers.  "abbrev" is what to put after "-H", "ip-host" is the
# numeric IP address, "port" is the port to call the host on, "gwprt" is
# the port to call gw on (not used for trekhopd), "dns-host" is the domain
# name of the server, and "comment" is just that, a comment.
#
# abbrev  ip-host         port  gwprt dns-host			"comment"

bezier	  128.32.150.109  2592  2593  bezier.Berkeley.EDU	"Dead"
bronco	  128.2.210.64	  2592	2594  bronco.ece.cmu.edu	"Not dead!"
rwd4	  128.2.209.169	  2592  2595  rwd4.mach.cs.cmu.edu	"Bronco subst"
flint	  128.148.37.33	  2592	2622  flint.cs.brown.edu	"User's choice"
END
-----

The parsing code isn't much to look at, but it works.  The trekhopd-capable
netrek/main.c looks for a .trekgwrc file first in $HOME and then for a
general one in /usr/local/games/.  If you use gw, you will probably want to
get this too - the new netrek/main.c will work for it too.


For those of you unfamiliar with trekhopd, it provides a way for people
locked behind a gateway machine (e.g. charon.amdahl.com) to play games
outside of their local network.  It transports both TCP and UDP packets,
and works fairly well.  The number of connections is limited by how many
file descriptors you have available.

It was written as a more secure replacement for its predecessor gw.  It also
has a number of features that gw doesn't, like non-blocking connect calls (so
other people starting up a game won't cause your connection to pause), a
greatly simplified configuration file that can be updated without killing the
process or disturbing existing connections, and a lot of security-oriented
features which sysadmins will like.  (It's not that it's inherently more
secure than gw, it's just that it does more checking so it's harder to do
stupid things with it.)


I've been using it for a few months now and it works great, even when the
gateway host is a Sun 4 receiving large batches of news and mail.

-- 
fadden@uts.amdahl.com (Andy McFadden)
[ Above opinions are mine, Amdahl has nothing to do with them, etc, etc. ]
Organization: Carnegie Mellon, Pittsburgh, PA