
INSTALLATION

  In order to install the xisp package follow the steps outlined below.

    1. Edit the Makefile making sure that all paths defined in the
       variables therein correspond to the proper paths for your system.
       The following is a list of variables defined in Makefile with
       some brief explanations:

       INCX11:    path to X11 include files
       LIBX11:    path to X11 libraries
       INCFORMS:  where the forms.h include file is installed
       LIBFORMS:  where the libforms library is installed
       BINX11:    where to install the xisp binary
       USRLOCAL:  where to install the xisprccv and xispid utilities
       SBINDIR:   path to the chat and pppd binaries
       VARRUN:    path to where pppd writes its ppp?.pid files (see your
                  pppd(8) manual page for this one)
       USRLIBPPP: where to install the xispterm and xispdial utilities
                  used by xisp
       OPTSDIR:   where to install the options.xisp file; note that
                  this file is *not* installed by default; install it
                  manually or uncomment the installation lines in
                  Makefile if you so desire; read the first paragraph
                  below the Makefile variable explanations for details
       MANDIR:    where to install the xisp manual page
       ETCPPP:    where to install ip-up and ip-down (normally /etc/ppp,
                  read your pppd(8) manual page to make sure); these are
                  installed by default, and any existing scripts are saved
                  as *.bak; comment-out the lines in Makefile to prevent
                  them from being install; read below for details
       DESTDIR:   root path for installation; most probably you don't
                  need to edit this variable
       GROUP:     group ownership for xisp, xispdial, xispterm, xisprccv
                  and xispid; used to implement selective permissions for
                  xisp; read section 3 below for details
       GCCFLAGS:  the gcc compilation flags

       - If your pppd, for some mysterious reason, doesn't generate
         $(RUNDIR)/ppp?.pid files when run, simply delete the RUNPATH
         variable from the Makefile, in order to make use of alternative
         code implemented in xisp for retrieving pppd's PID number.

       - Pick the icon you desire from those available, according to the
         colors you have available on your colormap. If you have a few
         extra colors to spare, try Raphael Wegmann's XPM animation
         option.

       - As of version 1.7 of xisp, the pppd options file options.xisp is
         no longer necessary. However, if such a file is indeed found, it
         is used by xisp's invocation of pppd. If you need to use some
         pppd option not available from within xisp, that's certainly the
         place to put it in. Right now, the sample options.xisp file
         contains a single pppd option command (noipdefault). Since it is
         no longer installed by default, install it if and whenever you
         need it. If you have options.xisp from some previous version of
         xisp, please delete it.

    2. Make sure that your /etc/ppp/options file (or wherever else pppd
       keeps its default-options file), as well as your .ppprc file (read
       the pppd(8) manual page for details), do not include the -detach
       option, or any other option in conflict with any of the options
       supported by xisp. If you're not sure of what to do, back up the
       file in question and then replace its contents with that of the
       supplied options.xisp file. Just in case you're contemplating
       deleting the pppd default-options file altogether, note that it is
       *REQUIRED* by pppd; if it can't find it, it will exit with error.

    2. Run "make".

    3. If all goes well, run "make install".
       In order to make use of the DNS capabilities implemented in xisp,
       "make install" automatically installs the ip-up.xisp and
       ip-down.xisp scripts supplied, as ip-up and ip-down respectively,
       while keeping back-up copies of your old scripts, if any. If you
       don't want that to happen, comment-out the appropriate lines in
       the Makefile, prior to running "make install". For details on this
       matter, read the "IP-UP/-DOWN SCRIPTS" section below.

    4. Read the following two sections (at least :)) to complete tasks
       related to user access permissions.


PERMISSIONS

  You will note that xisp, xispdial, xispterm, xisprccv and xispid
  binaries are installed with mode 750 and owned by root and group uucp
  ("dialout" for Debian Linux or "root" for Red Hat Linux). This is so
  that system administrators can implement selective permission for xisp,
  by giving access only to users which are also members of the uucp group.
  The modem device, as well as pppd and chat should also have access
  permissions allowing uucp group processes running xisp, xispdial and
  xispterm to use them. In other words, if the above sounds like a good
  idea, and if your system is not already setup that way, go to wherever
  you have pppd and chat and do:

       chown root.uucp pppd chat
       chmod 4550 pppd
       chmod 550 chat

  +----------------------------------------------------------------------+
  | NOTE: If you give users other than members of group uucp (or dialout |
  |       or root) execute permission for pppd and/or xisp, the ip-up    |
  |       and ip-down scripts supplied with xisp will NOT RUN for these  |
  |       users, as this would have a serious impact on system security. |
  |       Please read the SECURITY file for details on this matter.      |
  +----------------------------------------------------------------------+

  After doing the above, you might also go to /dev and do:

       chown root.uucp modem
       chmod 660 modem

  where "modem" is your modem port device (usually cua[0,1,2,..], or
  ttyS[0,1,2,...]). Don't perform the above on the symbolic link pointing
  to your modem device if that's how things are set up on your system, but
  to the device file itself (i.e., if you have /dev/modem -> /dev/cua1 for
  example, use "cua1" in place of "modem" for the above commands.

  Lastly, edit /etc/group (or the NIS/NIS+ group database) and add the
  users you want to give access to xisp, to the list of uucp (or "dialout"
  for Debian Linux, or "root" for Red Hat Linux) group members.


IP-UP/-DOWN SCRIPTS

  As of version 2.0, ip-up and ip-down are supported by xisp. Default
  ip-up (ip-ip.xisp) and ip-down (ip-down.xisp) scripts are supplied
  with the distribution. If you need to use the DNS capabilities in
  versions 2.1 and later, you *MUST* install the supplied ip-up and
  ip-down scripts. To modify them further for performing tasks like,
  for example, downloading mail or news on a per ISP basis, read the
  comments therein and edit them to suit your needs. If you need to do
  this on a user basis (rather than having these tasks run as root)
  you can make use of the .xisp-up and .xisp-down files introduced by
  version 2.3 of xisp. Read the xisp(1) manual page for details. Both
  .xisp-up and .xisp-down are called with the same ipparam argument as
  ip-up and ip-down. Read the comments in the supplied .xisp-up and
  .xisp-down skeleton files for helpful comments.

  The installation automatically keeps backup copies of your old ip-up
  and ip-down scripts. If your pppd looks for then in a directory other
  than /etc/ppp, change the ETCPPP Makefile variable appropriately.
  Their access permissions once installed correspond to:

   chown root.uucp ip-up ip-down
   chmod 750 ip-up ip-down


UPGRADE CONVERTER

  As of version 1.3 a .xisprc file converter is also included with
  the xisp distribution. As of version 1.9, this converter does not only
  understand the immediately previous version, but all version formats
  from 1.2 and onwards. To convert your old .xisprc file to the latest
  version, run xisprccv with no arguments. Further to that, from version
  2.0 and onwards, xisprccv understands both binary .xisprc formats of
  versions 1.9 and older, and editable ASCII .xisprc formats of versions
  2.0 and later.


PHONE COMPANIES

  The phone companies' tariff information is, at present, hardcoded in
  the logs.c xisp module. If you want to contribute a code-fragment for
  your PTT, edit and e-mail the file ptt-contrib.c in the contrib sub-
  directory. However, the program code is structured in such a way as
  to facilitate a phone company editor to be added in the (hopefully
  near) future. Please read the comments in ptt-contrib.c for more
  details.
  

EPILOGUE

  If you encounter any problems, or find any bugs, please report them to
  the e-mail address listed at the end of the README file. I have made
  an effort to document the code as much as possible so that it should
  be fairly readable, and hence easily modifiable by others. A little
  note here on editing the sources: the tabstop used for all files is
  4 (:set tabstop=4 in vi). I would appreciate any feedback, suggestions
  or enhancements you might have :)

  Enjoy,

  Dimitri

