[comp.sys.isis] Request for comments on a new ISIS interface

ken@gvax.cs.cornell.edu (Ken Birman) (03/19/91)

In ISIS V3.0 we plan to unify the isis_remote and isis_init interfaces.
Currently, as you may be aware, there are two ways to connect to ISIS (one
of which doesn't work very well...) 

In the new scheme, we will add a new interface and recommend that people
switch over to it:
	isis_remote_init(``mlist'', local-port, remote-port, flags)
where:
      mlist is a null pointer or a list of "mother" sites, separated by
	   commas.  Taken from the environment variable ISISHOST if not
	   specified.
      local-port is the port number for connecting to ISIS when local to it,
	   or 0.  Taken from the environment variable ISISPORT is not 
           specified, or from YP (isis/tcp) if ISISPORT is not specified.
      remote-port is the port number for UDP remote connections,
	   or 0.  Taken from the environment variable ISISREMOTE is not
           Specified, or from YP (isis/tcp) if ISISREMOTE is not specified.
      flags are formed from
	   *    ISIS_PANIC: panic if restart fails
	   *    ISIS_AUTO: try and start ISIS if can't connect (by running
			a shell script: /usr/local/startisis)
	   *    ISIS_NOCOPYRIGHTNOTICE: don't print the V3.0 copyright
			notice
	   *    ISIS_UDP: use the old "UDP" protocol to connect from remote
			sites; else uses a new, faster TCP connection

The sequence will be:
	1) Connects locally, as via isis_init, if ISIS is running locally
           (If the mlist is non-null and the site of the caller is listed,  and
           ISIS_AUTO is specified, this case will always be used).
	2) If not, uses TCP to connect on one of the specified remote sites
	   (unless ISIS_UDP flag bit is set)
	3) If this fails, tries to start ISIS if desired.
	4) If all connect attempts fail, returns -1 and an error code.

Thus, a typical application could use isis_remote_init and connect to
ISIS "from anywhere" in the network, provided that the user's shell
environment is set up to designate the connection points.
----------------------------------
Kenneth P. Birman                              E-mail:  ken@cs.cornell.edu
4105 Upson Hall, Dept. of Computer Science     TEL:     607 255-9199 (office)
Cornell University Ithaca, NY 14853 (USA)      FAX:     607 255-4428