
	Center for Theory and Simulation in Science and Engineering
			    Cornell University


      Portions of this software may fall under the following
      copyrights: 

	Copyright (c) 1983 Regents of the University of California.
	All rights reserved.  The Berkeley software License Agreement
	specifies the terms and conditions for redistribution.

	The copyright (c) of the EGPUP User Process, Paul Kirton and
	ISI, August 23, 1984


    GATED - based on Kirton's EGP, UC Berkeley's routing daemon (routed),
	    and DCN's HELLO routing Protocol.
 

The following acknowledgments and thanks apply:

	Mike Petry (petry@trantor.umd.edu), University of Maryland, for
	development of the HELLO routines used in this program.

	Craig Partridge (craig@loki.bbn.com), BBN Laboratories, for
	thorough linting, profiling, and performance enhancements to
	this program.

	Charles Hedrick (hedrick@topaz.rutgers.edu),
	Chris Maio (chris@columbia.edu), Sergio Heker (heker@jvnca.csc.org),
	and any other BETA testers who have helped in finding bugs.

	Mark Fedor (now fedor@nisc.nyser.net) for the development and
	maintenance up to release 1.3.1.  Also for his continuing
	advice and SGMP/SNMP interface.

	Thomas Narten <narten@purdue.edu> for his analysis and
	modifications to the EGP and other helpful improvements.

	C Phil Wood for his help in porting gated to SunOS 4.0 and the
	Sun 4 architecture.

	Matt Thomas for his mods for support of Ultrix 3.0.

	Ross Veach for his enhancements to deal with interfacing to the
	new NSFnet.


INSTALLATION OF GATED:

	1. cd src, edit Makefile to suit your system.

	2. The default dependencies only include gated specific header
	   files.  This should be adequate for most systems unless you
	   plan on changing the system header files, or install a new OS
	   version. 

	   If your C compiler can generate dependencies, do a "make
	   depend".  You may have to modify the Makefile if your C
	   compiler uses a switch other than -M to generate
	   dependencies.  For example, Ultrix requires -eM.

	3. Compile gated "make".

	4. Become root and install gated, "make install".

	5. cd man, edit Makefile and install the man page "make install".

	6. make up a configuration file.  This is not too hard.  Sample
	   config files are in the conf directory and the man page
	   explains all config options.  install the config file in
	   /etc/gated.conf

	7. Take cover and .... FIRE IT UP!

	8. Take a look at the aux/ directory for some handy scripts.


Addressing point-to-point (SLIP) lines:

	Gated now always refers to P2P interface by their destination
	address, not by their local address.  This allows one or more P2P
	interface to share the same local address with each other and up to
	one non-P2P (Ethernet) interface.  But DON'T try this with Ultrix
	3.1, you'll have a message up routing table you can't fix.  I can't
	vouch for other versions of Ultrix.

	Remember, P2P interfaces are HOST routes and have no network
	associated with them.  You can assign both ends a subnet on the
	same network, but that will not cause a network route to be
	generated. 

Running Gated on SunOS 4.0 systems:

	If gated gets sendto() network unreachable problems when running
	on SunOS 4.0 systems, add `hostname` to the ifconfigs for
	ie0/le0/ec0 in /etc/rc.local.  Otherwise SunOS has a
	misconception of the route to the attached network.

Running HELLO and/or EGP on 4.2 based systems:

	If you would like to run HELLO or EGP on a 4.2 based system such as
	Ultrix 1.2, 2.0, 2.1 and SunOS 3.x you will need to add the
	following code to the following modules and rebuild your kernel. 

	/sys/netinet/in.h:

#define IPPROTO_EGP		8		/* exterior gateway protocol */

#define IPPROTO_HELLO		63		/* Fuzzball HELLO protocol */

	/sys/netinet/in_proto.c for SunOS 3.x:


 { SOCK_RAW,	PF_INET,	IPPROTO_HELLO,	PR_ATOMIC|PR_ADDR,
   rip_input,	rip_output,	0,	0,
   raw_usrreq,
   0,		0,		0,		0,
 },
 { SOCK_RAW,	PF_INET,	IPPROTO_EGP,	PR_ATOMIC|PR_ADDR,
   rip_input,	rip_output,	0,	0,
   raw_usrreq,
   0,		0,		0,		0,
 },


	/sys/netinet/in_proto.c for Ultrix 1.2, 2.0 and 2.2

{ SOCK_RAW,     &inetdomain,    IPPROTO_HELLO,    PR_ATOMIC|PR_ADDR,
  rip_input,    rip_output,     0,              0,
  raw_usrreq,
  0,            0,              0,              0,
  0,            0,              0,
},
{ SOCK_RAW,     &inetdomain,    IPPROTO_EGP,    PR_ATOMIC|PR_ADDR,
  rip_input,    rip_output,     0,              0,
  raw_usrreq,
  0,            0,              0,              0,
  0,            0,              0,
},

Gated and NYSERnet's SNMP code:

  You will need to apply the following patch to NYSERnet's snmpd code
release 3.1 and maybe prior:

*** /tmp/,RCSt1a05299	Tue Feb 14 15:15:02 1989
--- agent.c	Tue Feb 14 15:13:09 1989
***************
*** 1,6 ****
  
  /*
!  *  $Header: agent.c,v 1.6 88/09/22 14:53:33 fedor Exp $
   *
   *  June 28, 1988 - Mark S. Fedor
   *  Copyright (c) NYSERNet Incorporated, 1988, All Rights Reserved
--- 1,6 ----
  
  /*
!  *  $Header: agent.c,v 1.7 89/02/14 15:14:14 fedor Exp $
   *
   *  June 28, 1988 - Mark S. Fedor
   *  Copyright (c) NYSERNet Incorporated, 1988, All Rights Reserved
***************
*** 301,306 ****
--- 301,310 ----
  				case INT:
  					bcopy(p, (char *)&repl->val.value.intgr, rspsize);
  					repl->val.type = INT;
+ 					break;
+ 				case CNTR:
+ 					bcopy(p, (char *)&repl->val.value.cntr, rspsize);
+ 					repl->val.type = CNTR;
  					break;
  				default:
  					syslog(LOG_ERR, "get_agent_var: invalid variable type: %d", agntvartype);



Please report any BUGS, comments, Fixes to me:

	Jeffrey C Honig
	Cornell Theory Center
	265 Olin Hall
	Cornell University
	Ithaca, NY  14853-5201

	607/255-8686

	jch@tcgould.tn.cornell.edu
	{ucbvax,uunet,decvax,cornell}!tcgould.tn.cornell.edu!jch
	pyramid!batcomputer!jch

If you need assistance or have any questions, Please contact me.  Don't
bang your head against the wall.  I will try to help. 

In order that I know who to send bug fixes and updates to, I have
created a mailing list for people running gated.  If you are running
gated, please get on this list.  Send your request to:

By INTERNET:
	gated-people-request@devvax.tn.cornell.edu

By UUCP:
	{ucbvax,uunet,decvax}!devvax.tn.cornell.edu!gated-people-request
	{rochester,decvax,uw-beaver}!cornell!devvax!gated-people-request
	{warrior,gould,pyramid}!batcomputer!devvax!gated-people-request

One of these has got to work.  If you find one that bounces let me know. 

The only thing I ask of this list is that all bug fixes and enhancements
be sent to me for testing and then I will officially send out the
fix/enhancement.  It will make life easier on all of us.  I will post a
greeting to the list when I get enough responses. 

Thanks.

Jeff

