Fixed compilation problems on SunOS 4.x
[ppp.git] / README.osf
index 8780604d3bf820ed810b1d415001dd1c4e7cbf77..74d74ab343c61cd7a62f7023c71aa422cf44abe3 100644 (file)
@@ -1,20 +1,57 @@
 This file (README.osf) contains instructions for installing ppp-2.3 on a
-Digital Alpha-based system running Digital UNIX (aka DEC OSF/1)
-version 2.0 through version 3.2F.  Digial UNIX version 3.2G and beyond
-are not supported by this package, since PPP is an integral component
-of those releases.  (Although it *is* possible to install this software
-on V3.2G and later of Digital UNIX, I would discourage this activity
-because it's likely to break the "update install" feature of Digital
-UNIX.  You were warned...)
-
-If you encounter bugs in this using this PPP package under Digital
-UNIX then please let me (ftw@zk3.dec.com) know.  I can't promise
+Compaq Alpha-based system running Tru64 Unix (formerly Digital UNIX aka
+DEC OSF/1) version 4.0. Please note that  PPP is an integral
+component of Tru64 UNIX version 3.2G and beyond (documented in the
+Guide to Network Administration),  and though it *is* possible to install 
+this software on V3.2G and later of Tru64 UNIX, you are likely
+to have problems with the "update install" feature of Tru64
+UNIX and while installing some OS patches. (See the note on 
+de-installation below). 
+
+Tru64 Unix versions Version 3.X and earlier are no longer supported
+in this package.  Please use ppp-2.3.5 on these systems.
+
+INSTALLATION.
+
+If you encounter bugs while using this PPP package under Tru64
+UNIX then please let me (varadhan@zk3.dec.com) know.  I can't promise
 quick turnaround but I should be able to address issues eventually.
 
-Below are the steps for installing PPP on Digital UNIX.
+Below are the steps for installing PPP on Tru64 UNIX.
 You must do all of the following as "root".
 
-1.  Make the kernel sources, daemon, chat, and pppstat program by typing 
+1.  back up /usr/sys/BINARY, /usr/sys/include/net,
+    /usr/sys/conf/files, /sys/kern/lockinfo.c  and /sys/BINARY/ppp.mod
+       # mkdir -p /usr/tmp/ppp
+       # cd /usr/sys
+       # tar cvf /usr/tmp/ppp/BINARY.tar ./BINARY
+        # cd /usr/sys/include
+       # tar cvf /usr/tmp/ppp/usr_sys_include_net.tar  ./net
+       # cp /usr/sys/conf/files /usr/tmp/ppp/files
+       # cp /sys/kern/lockinfo.c /usr/tmp/ppp/lockinfo.c
+       # cp /sys/BINARY/ppp.mod /usr/tmp/ppp/ppp.mod
+
+2.  Edit /usr/sys/conf/files- search for the string: "MODULE/STATIC/ppp"
+comment out the existing entries, and change it to look like:
+
+MODULE/STATIC/ppp               optional ppp Binary
+#streamsm/ppp_init.c            module ppp
+#streamsm/ppp_if.c              module ppp
+#streamsm/ppp_async.c           module ppp
+#streamsm/ppp_comp.c            module ppp
+#streamsm/vjcompress.c          module ppp
+#streamsm/bsd_comp.c            module ppp
+streamsm/if_ppp.c         module ppp
+streamsm/ppp_comp.c       module ppp
+streamsm/ppp_init.c       module ppp
+streamsm/vjcompress.c     module ppp
+streamsm/bsd-comp.c       module ppp
+streamsm/deflate.c        module ppp
+streamsm/ppp.c            module ppp
+streamsm/ppp_ahdlc.c      module ppp
+streamsm/zlib.c           module ppp
+
+3.  Make the kernel sources, daemon, chat, and pppstat program by typing 
 
         ./configure
         make install
@@ -22,83 +59,88 @@ You must do all of the following as "root".
     in the directory that this file unpacked into.  This installs the
     binaries for the PPP daemon and the statistics program in 
     /usr/local/etc/ppp.  If you want them somewhere else, just change 
-    the definition of BINDIR in the top level Makefile.osf.
-
-2.  This step differs depending on whether you are running OSF/1 V3.0
-    or later.
-
-    FOR DEC OSF/1 V2.0 THROUGH V2.1:
-
-    | Add the following lines to the file /sys/conf/files:
-    |
-    | streamsm/if_ppp.c                optional ppp Notbinary optimize -g3
-    | streamsm/ppp_comp.c      optional ppp Notbinary optimize -g3
-    | streamsm/ppp_init.c      optional ppp Notbinary optimize -g3
-    | streamsm/vjcompress.c    optional ppp Notbinary optimize -g3
-    | streamsm/bsd-comp.c      optional ppp Notbinary optimize -g3
-    | streamsm/deflate.c       optional ppp Notbinary optimize -g3
-    | streamsm/ppp.c           optional ppp Notbinary optimize -g3
-    | streamsm/ppp_ahdlc.c     optional ppp Notbinary optimize -g3
-    | streamsm/zlib.c          optional ppp Notbinary optimize -g3
-    |
-    | Edit the file /sys/streams/str_config.c --- at the end there will be a
-    | comment to the effect of "add new configurations above this comment".
-    | Add the following lines above this comment:
-    |
-    |      bzero((caddr_t)&sb, sizeof(sb));
-    |      sb.sc_version = OSF_STREAMS_CONFIG_10;
-    |
-    |      retval = ppp_configure(SYSCONFIG_CONFIGURE,
-    |                             &sb, sc_size, &sc, sc_size);
-
-    FOR DEC OSF/1 V3.0 THROUGH Digital UNIX V3.2F:
-
-    | Add the following lines to the file /sys/conf/files:
-    |
-    | streamsm/if_ppp.c                optional ppp if_dynamic ppp Notbinary optimize -g3
-    | streamsm/ppp_comp.c      optional ppp if_dynamic ppp Notbinary optimize -g3
-    | streamsm/ppp_init.c      optional ppp if_dynamic ppp Notbinary optimize -g3
-    | streamsm/vjcompress.c    optional ppp if_dynamic ppp Notbinary optimize -g3
-    | streamsm/bsd-comp.c      optional ppp if_dynamic ppp Notbinary optimize -g3
-    | streamsm/deflate.c       optional ppp if_dynamic ppp Notbinary optimize -g3
-    | streamsm/ppp.c           optional ppp if_dynamic ppp Notbinary optimize -g3
-    | streamsm/ppp_ahdlc.c     optional ppp if_dynamic ppp Notbinary optimize -g3
-    | streamsm/zlib.c          optional ppp if_dynamic ppp Notbinary optimize -g3
-
-    FOR Digital UNIX V3.2G AND V4.0 AND BEYOND
-
-    This package does not support these versions of Digital UNIX.
-    PPP is an integral part of the OS.  Please see the Guide to
-    Network Administration for details on configuring PPP.
-
-4.  Find your system's configuration file.  This should be called
+    the definition of BINDIR in the top level Makefile.osf. If you plan
+    to over-write exisiting pppd executables in /usr/sbin/, it's advisable
+    that you create back-up copies of these first, before doing the
+    'make install'
+
+    Note that BINDIR and MANDIR/man8 must exist before you do a 
+    'make install'
+
+
+4.  Edit /sys/kern/lockinfo.c, and conditionally compile out the lines:
+
+#if PPP
+        SLI("ppp_if_table_lock", ppp_if_table_lock_info, SPLNONE, DEFAULT);
+        SLI("ppp_if_info.ppp_if_element_lock", ppp_if_element_lock_info, SPLNONE
+, DEFAULT);
+        SLI("ppp_comp_table_lock", ppp_comp_table_lock_info, SPLNONE, DEFAULT);
+        SLI("ppp_comp_info.ppp_comp_element_lock", ppp_comp_element_lock_info, S
+PLNONE, DEFAULT);
+        SLI("ppp_async_table_lock", ppp_async_table_lock_info, SPLNONE, DEFAULT)
+;
+        SLI("ppp_async_info.ppp_async_element_lock", ppp_async_element_lock_info
+, SPLNONE, DEFAULT);
+#endif  /* PPP */
+
+by changing the line
+
+#if PPP 
+
+to be
+
+#if 0 
+
+5.  Find your system's configuration file.  This should be called
     /sys/conf/SYSNAME, where SYSNAME is replaced by the name of your
     host.  For example, on my machine (zaphod.csci.unt.edu) it it called
     /sys/conf/ZAPHOD.  I will refer to this file from now on as 
     /sys/conf/SYSNAME.
 
-5.  Add the following line at the end of /sys/conf/SYSNAME:
+6.  Add the following line at the end of /sys/conf/SYSNAME:
 
        options         PPP
 
-6.  Build a new kernel by using the command
+7.  Build a new kernel by using the command
 
        doconfig -c SYSNAME
 
     (say "n" to "Do you want to edit...").
 
-7.  Copy the new kernel to /vmunix --- I'm usually pretty nervous about
+8.  Copy the new kernel to /vmunix --- I'm usually pretty nervous about
     writing over a perfectly good kernel with one that I'm not sure
     about, so I will usually "mv /vmunix /vmunix.old" first.  To put
     the new kernel in place, do a "cp /sys/SYSNAME/vmunix /vmunix".
 
-8.  Make sure your system is set up so that it can act like a gateway
+9.  Make sure your system is set up so that it can act like a gateway
     for messages to your new connection.  In particular, check the file
     /etc/rc.config for the line define ROUTER, and make sure it is
     defined as "yes".
 
-9.  Reboot and you're ready to go!
+10.  Reboot and you're ready to go!
 
 Hopefully, that should work with no hitches.  If you find any bugs, or
-errors in these instructions, contact Farrell Woods <ftw@zk3.dec.com>.
+errors in these instructions, contact Sowmini Varadhan<varadhan@zk3.dec.com>.
+
+
+DEINSTALLATION
+
+It is advisable to retrace your steps and restore the system
+to its normal state before installing patches or running update_install.
+Here's how you can retrace..
+
+1. Restore /usr/sys/BINARY, /usr/sys/include/net, /usr/sys/conf/files
+   and /sys/kern/lockinfo.c and /sys/BINARY/ppp.mod. For example,
+   if you followed the instructions in step 1 verbatim, you would do
+
+       # cd /usr/sys/
+       # rm -rf ./BINARY
+       # tar xvf /usr/tmp/ppp/BINARY.tar
+        # cd /usr/sys/include
+        # rm -rf ./net
+       # tar xvf /usr/tmp/ppp/usr_sys_include_net.tar
+       # cp  /usr/tmp/ppp/files /usr/sys/conf/files
+       # cp /usr/tmp/ppp/lockinfo.c /sys/kern/lockinfo.c
+       # cp /usr/tmp/ppp/ppp.mod /sys/BINARY/ppp.mod
 
+Now redo steps 5-10 and install the patch after you have rebooted.