ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) NAME isode-gen - generating the ISO Development Environment READ THIS This documentation describes how to configure, generate, and install the ISO Development Environment. Acquisition, use, and distribution of this module and related materials are subject to the restrictions of a license agreement. Consult the Preface in the _U_s_e_r'_s _M_a_n_u_a_l for the full terms of this agreement. You will probably want to read over this entire document first, before typing any commands; e.g., there are optional components described later on that require additional set- tings in the configuration file. Comments concerning this release should be directed to the authors. Consult the preface in the _U_s_e_r'_s _M_a_n_u_a_l for a current postal address. Alternately, if you have access to the Internet, comments may be sent to the mailbox "Bug-ISODE@NISC.NYSER.NET". Do not send bug reports to the ISODE discussion group. If you want to subscribe to the ISODE discussion group, drop a note to "ISODE- Request@NIC.DDN.MIL". SYNOPSIS % cd isode-6.6/ % cp config/_s_y_s_t_e_m.h h/config.h % cp config/_s_y_s_t_e_m.make config/CONFIG.make % cp config/*.local support/ % make everything # make inst-everything DESCRIPTION This is a description of how one can bring up the ISODE. It is assumed that you have super-user privileges in order to (re-)install the software. Super-user privileges are not required to configure or generate this software. The distribution tape contains the hierarchy for the isode-6.6/ directory. Bring the sources on-line by changing to a directory for local sources and running tar, e.g., % cd /usr/src/local/ % tar x % cd isode-6.6/ CONFIGURATION First, go to the config/ directory. Sun Release 3.5 Last change: 27 Jul 1990 1 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) % cd config Select the Makefile and include-file skeletons which most closely match your system. The current choices are: _f_i_l_e _c_o_n_f_i_g_u_r_a_t_i_o_n apollo Apollo aux A/UX release 1.1 bsd42 generic 4.2BSD UNIX bsd43 generic 4.3BSD UNIX bsd43-rt RT/PC with 4.3BSD bsd44 4.4BSD UNIX with OSI hpux HP-UX mips MIPS RISC/OS osx Olivetti LSX 30xx ros Ridge Operating System sunlink3 SunOS release 3 with SunLink OSI release 5.2 sunlink4 SunOS release 4 with SunLink OSI release 6.0 sunos3 SunOS release 3 sunos4 SunOS release 4 sys52-exos SVR2 UNIX with EXOS sys52-rt RT/PC with AIX sys52-sun SVR2 UNIX emulation on SunOS release 3 sys52-win SVR2 UNIX with WIN/TCP sys53 generic SVR3 ultrix Ultrix 3.1 The makefile skeleton has the extension .make, whereas the include-file skeleton has the extension .h. MAKEFILE Copy the makefile skeleton of your choice to pickle.make, where "pickle" is the name of your system. Now edit this file to set the following _m_a_k_e variables: _v_a_r_i_a_b_l_e _d_e_f_a_u_l_t _s_p_e_c_i_f_i_e_s OPTIONS options to _c_c and _l_i_n_t (e.g., -I../h) LSOCKET libraries to link in (e.g., -lcci) BINDIR /usr/local/bin/ where to install user programs SBINDIR /usr/etc/ where to install administrator programs ETCDIR /usr/etc/ where to install administrator files LOGDIR /usr/tmp/ where to install log files INCDIR /usr/include/isode/ where to install include files LIBDIR /usr/lib/ where to install object libraries LINTDIR /usr/lib/lint/ where to install lint libraries SYSTEM directs how to create loader libraries MANDIR /usr/man/ where to install man pages MANOPTS see compat/inst-man.sh for details NOTE THAT ALL THESE DIRECTORIES MUST BE ABSOLUTE PATH NAMES Sun Release 3.5 Last change: 27 Jul 1990 2 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) (i.e., start with a `/'). Finally, ln pickle.make CONFIG.make (yes, that's "CONFIG" in uppercase and "make" in lowercase). Both of these files are in the isode-6.6/config/ directory. This latter file is the one which the software uses to con- figure itself during generation. INCLUDE-FILE Copy the include-file skeleton of your choice to pickle.h, where "pickle" is the name of your system. Now add any additional definitions you like (usually none). Consult the file config/OPTIONS for a list. Now: ln pickle.h ../h/config.h This latter file is the one which the software uses to con- figure itself during generation. ALIASES DATABASE Typically, sites run with the default aliases database used by the OSI directory. In this case, simply copy the default local configuration file to the support/ directory: % cp aliases.local ../support/ If you have local modifications you wish to make, either copy in your own file or edit the file support/aliases.local as appropriate. SERVICES DATABASE Typically, sites run with the default services database. In this case, simply copy the default local configuration file to the support/ directory: % cp services.local ../support/ If you have local modifications you wish to make, either copy in your own file or edit the file support/services.local as appropriate. ENTITIES DATABASE Typically, sites run with the default application entity database used by the stub-directory service. In this case, simply copy the default local configuration file to the sup- port/ directory: Sun Release 3.5 Last change: 27 Jul 1990 3 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) % cp entities.local ../support/ If you have local modifications you wish to make, either copy in your own file or edit the file support/entities.local as appropriate. In particular, if you are using SunLink OSI, it will be necessary to put an entry in your support/entities.local file of the form: myhost default 1.17.4.1.0 #1/NS+mynsap where "myhost" is the name of the local machine, and "myn- sap" is the NSAP of the local machine. The NSAP is most easily determined by running % cd others/osilookup % ./make % xosilookup localhost CLIENT providing that the SunLink OSI file /etc/sunlink/osi/hosts has an entry defining the service for "localhost" called "CLIENT". (Note that in releases earlier than SunLink OSI 6.0, the file is called /usr/etc/osi.hosts) Note that this entry is mandatory if you are running SunLink OSI release 5.2 or greater. One further note for users of SunLink OSI: if you intend to run the standard SunLink OSI listener, then you must change the TSEL used by _t_s_a_p_d when it listens. This is done in two steps: First, in support/entities.local, change your entry to read as: myhost default 1.17.4.1.0 #2/NS+mynsap Second, in support/services.local, add a line that reads as: tsap/session #2 tsapd-bootstrap which overrides the default TSEL in the support/services.db file. MACROS DATABASE Typically, sites run with the default macros database. In this case, simply copy the default local configuration file to the support/ directory: % cp macros.local ../support/ If you have local modifications you wish to make, either copy in your own file or edit the file support/macros.local as appropriate. Sun Release 3.5 Last change: 27 Jul 1990 4 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) OBJECTS DATABASE Typically, sites run with the default objects database. In this case, simply copy the default local configuration file to the support/ directory: % cp objects.local ../support/ If you have local modifications you wish to make, either copy in your own file or edit the file support/objects.local as appropriate. GENERATION Go to the isode-6.6/ directory % cd .. Now reset the dates of the configuration files for the sys- tem. This is done only once per source-tree: % ./make once-only then generate the basic system. % ./make If you are using SunOS, do not use the _m_a_k_e program supplied with the SunPro package. It is not, contrary to any claims, compatible with the standard _m_a_k_e facility. Further, note that if you are running a version of SunOS 4.0 prior to release 4.0.3, then you may need to use the _m_a_k_e program found in /usr/old/, if the standard _m_a_k_e your are using is the SunPro _m_a_k_e. In this case, you will need to put the old, standard _m_a_k_e in /usr/bin/, and you can keep the SunPro _m_a_k_e in /bin/. If you are using SVR3, then you will probably have to type this command before starting the compilation: % ulimit 32768 Similarly, you may need to increase the stacksize limitation on other systems. For example, some users of the RT, report needing to use % limit stacksize 16m in order to get FTAM to fully compile. The _m_a_k_e command from the top-level directory will cause a complete generation of the system. If all goes well, proceed with the installation. If not, complain, as there "should be no problems" at this step. Some files while Sun Release 3.5 Last change: 27 Jul 1990 5 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) compiling may produce a warning: statement not reached or a type ObjectDescriptor: Warning: Can't find file DSE.ph failed message. This is normal. Sometimes when building a loader library, you might see several ranlib: warning: ../libisode.a(aetdbm.o): no symbol table messages. This is also normal. You might also see a few messages like: *** Error code 1 (ignored) This is also normal. As a rule, unless _m_a_k_e says something like *** Error code 1 or perhaps Exit then everything is going just fine! TESTING Some directories may have a resident test program, e.g., in the psap/ directory, there is a program called _p_s_a_p_t_e_s_t. These programs are for internal testing only, and are not for use by "mere mortals". If you want to test things, after installation run _i_s_o_d_e-_t_e_s_t (see the USER PROGRAMS section). INSTALLATION You will need to be the super-user to install the software. Note that installing the software from an NFS-mounted parti- tion requires that you perform the installation as the super-user on the _t_a_r_g_e_t system after changing to the source directory on the _s_o_u_r_c_e system. In the directions that follow, reference is made to some of the directories defined in the CONFIG.make file. You should substitute in the correct value, for example, if the expres- sion $(SBINDIR)tsapd and if SBINDIR is defined as /usr/etc/ in the CONFIG.make Sun Release 3.5 Last change: 27 Jul 1990 6 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) file, then you should type /usr/etc/tsapd instead. There are two kinds of activities: once-only activities that you perform the first time the software is installed; and each-time activities that you perform every time the software is installed. The first once-only activity is to verify that the _t_s_a_p_d daemon will be run when the machine goes multi-user. On Berkeley UNIX systems, add these lines to the /etc/rc.local file: if [ -f $(SBINDIR)tsapd ]; then $(SBINDIR)tsapd & (echo -n ' tsap') > /dev/console fi On other systems, a similar procedure is followed. For example, on systems derived from AT&T UNIX, the file /etc/rc2 script might be edited. The next once-only activity is to verify that systems with a native /etc/services file contain an entry for the tsap ser- vice (if you have configured the ISODE to run over TCP). If not, add the line: tsap 102/tcp to the /etc/services file. If your system does not have such a file, the software automatically compensates for this. Next, on Berkeley UNIX systems, add a line to the /usr/lib/crontab file to invoke a shell-script that will re-cycle the log files. Usually, the line you add looks something like this: 0 4 * * * su daemon < $(SBINDIR)isologs which says that the shell-script $(SBINDIR)isologs should be invoked at 4am each morning. On other systems, a similar procedure is fllowed. For example, on systems derived from AT&T UNIX, the file /usr/spool/cron/crontabs/root might be edited followed by the command % crontab root Sun Release 3.5 Last change: 27 Jul 1990 7 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) Finally, create the BINDIR, SBINDIR, ETCDIR, and LOGDIR directories as they appear in your CONFIG.make file, if they do not already exist. The mode of the LOGDIR directory should be 777, the other directories should be mode 755. There are two each-time activities: # ./make inst-all which does the installation. The second each-time activity, is that if you are already running the ISODE, then you will need to kill and restart the _t_s_a_p_d (8c) daemon, otherwise incoming connections will not be initialized correctly. Otherwise, start the daemon now. From the _C_S_h_e_l_l, the command might be: # $(SBINDIR)tsapd >& /dev/null The daemon will automatically detach. If you do not redirect the daemon's standard-error, then it will not detach, instead printing messages as to what actions it is taking. That's about it. This will install everything. To clean-up the source tree as well, then use: % ./make clean at this point. Note that if you are planning on generating or installing FTAM or VT or QUIPU (described below), then you should not clean-up the source tree until after you are finished dealing with these. If your system is configured for TCP/IP, and you are not already running an SNMP agent, then you are URGED to immedi- ately install the SNMP agent distributed with the ISODE. Consult the NETWORK MANAGEMENT section below. Finally, if you are interested in discussing the ISODE with others running the software, drop a note to the Internet mailbox "ISODE-Request@NIC.DDN.MIL", and ask to be added to the "ISODE@NIC.DDN.MIL" list. TAILORING If you create a file called $(ETCDIR)isotailor, then you can customize the behavior of the programs which use the ISODE when they start. Consult the support/isotailor.5 file for further information. USER PROGRAMS By default, two services are installed. Sun Release 3.5 Last change: 27 Jul 1990 8 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) The first service, having programs _i_s_o_c and _i_s_o_d, is used to test out the installation of the ISODE on your system: % ./make test which runs the _i_s_o_d_e-_t_e_s_t script. The second service, having programs _i_m_i_s_c and _r_o_s._i_m_i_s_c, is a small demo service supporting things like _f_i_n_g_e_r, _w_h_o and so forth. There are additional programs in the others/ directory. These aren't integral parts of the system and assume that the ISODE is already installed. Use at your own discretion. FILE TRANSER, ACCESS AND MANAGEMENT In addition, if you are running the ISODE on a Berkeley or AT&T System V UNIX system, then there is also an implementa- tion of the ISO FTAM. FTAM, which stands for File Transfer, Access and Management, is the OSI file service. The imple- mentation provided is fairly complete in the context of the particular file services it offers. It is a minimal imple- mentation in as much as it offers only four core services: transfer of text files, transfer of binary files, directory listings, and file management. To generate FTAM, go to the isode-6.6/ directory and type: % ./make all-ftam This will cause a complete generation of the FTAM libraries and programs. If all goes well, proceed with the installa- tion. If not, complain as there "should be no problems" at this step. You will need to be the super-user to install FTAM: # ./make install-ftam That's about it. This will install everything and then clean-up the source tree. Note that if you are planning on generating or installing the FTAM/FTP gateway (described below), then you should not clean-up the source tree until after you are finished dealing with the gateway. In this case, or if you just want an installation and no clean-up, then use: # ./make inst-ftam instead. Sun Release 3.5 Last change: 27 Jul 1990 9 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) FTAM/FTP GATEWAY In addition, if you are running the ISODE on a Berkeley UNIX system, there is also an implementation of an FTAM/FTP application gateway. The gateway is actually two programs: one which acts as an ftam responder and an ftp client, and the other which acts as an ftp server and an ftam initiator. Note that the gateway currently resides on a different loca- tion than the standard FTAM responder and FTP server. (This may be corrected in a future release.) Read the manual entries for _f_t_a_m_d-_f_t_p (8c) and _f_t_p_d-_f_t_a_m (8c) for the details. To generate the FTAM/FTAP gateway, go to the isode-6.6/ directory and type: % ./make all-ftam-ftp This will cause a complete generation of the gateway. If all goes well, proceed with the installation. If not, com- plain as there "should be no problems" at this step. You will need to be the super-user to install the FTAM/FTP gateway: # ./make install-ftam-ftp This will install everything and then clean-up the source tree. If you just want an installation and no clean-up, then use: # ./make inst-ftam-ftp instead. Regardless of the command you use, on 4.2BSD-derived sys- tems, add this line to your /etc/servers file: ftp-ftam tcp $(SBINDIR)in.ftpd-ftam On 4.3BSD-derived systems, add this line to your /etc/inetd.conf file: ftp-ftam stream tcp nowait root $(SBINDIR)in.ftpd-ftam in.ftpd-ftam Finally, add this line to your /etc/services file: ftp-ftam 531/tcp VIRTUAL TERMINAL In addition, if you are running the ISODE on a Berkeley UNIX Sun Release 3.5 Last change: 27 Jul 1990 10 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) system, there is also an implementation of the ISO VT. VT is the OSI terminal service. The implementation provided is roughly comparable to an average telnet implementation. To generate the VT system, go to the isode-6.6/ directory and type: % ./make all-vt This will cause a complete generation of the VT initiator and responder programs. If all goes well, proceed with the installation. If not, complain as there "should be no prob- lems" at this step. You will need to be the super-user to install VT: # ./make install-vt That's about it. This will install everything and then clean-up the source tree. If you just want an installation and no clean-up, then use: # ./make inst-vt instead. DIRECTORY SERVICES In addition, if you are running the ISODE on a Berkeley UNIX system, there is also an implementation of the OSI Direc- tory, called QUIPU. If you're not interested in running a Directory, skip this text and go to the section entitled GENERATING DOCUMENTATION. Each host using the OSI directory implicitly runs a Direc- tory User Agent (DUA). Additionally, you may wish to run a Directory System Agent (DSA) on some hosts. As such, the instructions which follow indicate which activities are necessary in both instances, as appropriate. QUIPU GENERATION To generate QUIPU, go to the isode-6.6/ directory and type: % ./make all-quipu This will cause a complete generation of the DSAP library and the DSA. If all goes well, proceed with the installa- tion. If not, complain as there "should be no problems" at this step. Sun Release 3.5 Last change: 27 Jul 1990 11 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) QUIPU INSTALLATION You will need to be the super-user to install QUIPU: # ./make install-quipu This will install everything and then clean-up the source tree. If you just want an installation and no clean-up, then use: # ./make inst-quipu instead. After either command, there is one once-only activity. The QUIPU DSA is a "static responder". This means that it accepts new associations and managing old ones as necessary. Hence, if you intend to run a local DSA, it is necessary to start the _r_o_s._q_u_i_p_u daemon when the machine goes multi-user. On Berkeley UNIX systems, add these lines to the /etc/rc.local file: if [ -f $(SBINDIR)ros.quipu ]; then (cd /usr/etc/quipu-db; $(SBINDIR)ros.quipu) & (echo -n ' quipu') > /dev/console fi (This assumes your database is in the directory /usr/etc/quipu-db - it need not be) On other systems, a similar procedure is followed. QUIPU DATABASE If you intend to run a local DSA, then you will need to build a Directory database. (If you are already running QUIPU 5.0 or later, then you've done this before and so you can skip to the next section on QUIPU TAILORING.) The data- base directory, by default, lives in the ETCDIR area (usu- ally /usr/etc/) under the name of quipu-db/. Three proto- type databases can be found in the directory others/quipu/quipu-db/. These database files should be pro- tected as they contain Directory passwords and other sensi- tive information. The DSA needs to be able to read this information, and so performs a setuid on execution to the UID of the owner of the database directory. Now customize the chosen prototype database under /usr/etc/quipu-db/. The details of this database are explained in Volume 5 of the users manual. However you should be able to derive a minimal database by following the example structure defined for University College London in the GB branch of the Directory tree. Then delete the exam- ple structure for O=University College London. Sun Release 3.5 Last change: 27 Jul 1990 12 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) QUIPU TAILORING Before starting the DSA and the applications using the Directory Service Element (DSE), they (along with the ISODE) should be tailored. Currently, the interaction between the DSE loaded by pro- grams using the ISODE and the DSA is available over a "user-friendly nameservice" protocol which uses the OSI CO- mode transport service as backing. Programs using the ISODE determine the address of the nameservice by looking at the $(ETCDIR)isotailor file. This file is not normally installed during the installation. Check to see if such a file exists on your system. If not, create it as the super-user. Regardless, verify that the file contains a line like this: ns_address: Internet=localhost+17006 Substitute the name of the system running a DSA for "localhost" (or leave it be, if you wish), and substitute any unused TCPport on this host for "17006". Next, you must enable the use of the nameservice by the DSE. This is done by setting another runtime configuration variable in the $(ETCDIR)isotailor file: ns_enable: on Programs using the ISODE will automatically check this vari- able. If "on", they will first try the nameservice to resolve the service address. If this fails, they will use the stub-directory service as a fallback. So, you should arrange for the nameservice to be started with the machine goes multi-user. On Berkeley UNIX systems, add these lines to the /etc/rc.local file: if [ -f $(SBINDIR)dased ]; then $(SBINDIR)dased & (echo -n ' dase') > /dev/console fi On other systems, a similar procedure is followed. If you choose to run a local DSA, now configure it. The DSA tailors itself at runtime by reading the file $(ETCDIR)quiputailor. A prototype of this file will be installed during the normal ISODE installation process. Only one entry in the file usually needs to be changed: mydsaname CN=toucan Substitute the name of the DSA as it occurs in the Directory for "CN=toucan". See _q_u_i_p_u_t_a_i_l_o_r (5) for a description of Sun Release 3.5 Last change: 27 Jul 1990 13 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) the full range of tailoring options in the $(ETCDIR)quiputailor file. Now configure the various DUA programs. These tailor them- selves at runtime by reading the file $(ETCDIR)dsaptailor. A prototype of this file will be installed during the normal ISODE installation process. Only one entry in the file usu- ally needs to be changed: dsa_address toucan Internet=localhost+17003 Substitute the name of your "primary" DSA for "toucan" and its corresponding presentation address for the "'0101'H/Internet+..." string. This information can be found in the Directory on the host which is running the DSA. Do not confuse the _d_s_a__a_d_d_r_e_s_s used in this file with the _n_s__a_d_d_r_e_s_s used in the $(ETCDIR)isotailor file. These are separate services and must live at different addresses. See _q_u_i_p_u_t_a_i_l_o_r (5) for a description of the full range of tailoring options in the $(ETCDIR)dsaptailor file. QUIPU ONCE-ONLY Having tailored QUIPU, you can now start the DSA. However, if you are already running QUIPU, then you will need to kill and restart the QUIPU DSA. Start the DSA now. From the _C_S_h_e_l_l, the command might be: # $(SBINDIR)ros.quipu >& /dev/null The daemon will automatically detach. If you do not redirect the daemon's standard-error, then it will not detach, instead printing messages as to what actions it is taking. ISOENTITIES REPLACEMENT The last step which you MAY want to perform (only if you choose to run a local DSA and only the first time you install QUIPU) is to load the Directory from your $(ETCDIR)isoentities file. This step is not critical, miss- ing this step will not effect the use of the Directory as a White Pages Service. WARNING, this does not provide for replication of such data, or non local interaction. To load the data from isoentities into the Directory use the _d_s_a_b_u_i_l_d program: % dsabuild manager: c=US@o=The Wollongong Group@cn=Chris Moore Sun Release 3.5 Last change: 27 Jul 1990 14 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) password: By default, this will create only entries for the current host. You can use the `-p designator' switch to load infor- mation on services available on other hosts. Typically, you will run _d_s_a_b_u_i_l_d with the `-p' option once for each host at your site. As shown above, the _d_s_a_b_u_i_l_d program will prompt for the DSA manager name and password. To determine this you will need to consult your database as configured above and get the _m_a_n_a_g_e_r attribute for the DSA which is responsible for the portion of the Directory tree you will be adding to. Sub- stitute this value for "c=US@o=The Wollongong Group@cn=Chris Moore". You will then need to find the pass- word attribute for the manager object in the database as well. While running, _d_s_a_b_u_i_l_d may print out messages for the form: *** Update error - Already exists *** This is normal. That's about it. You can now use one of the user interfaces to look around in the Directory. DIRECTORY USER INTERFACE PROGRAMS You may, optionally, want to build one or more of the user interface programs for interacing with the Directory. The default DUA is DISH which is located in the quipu/dish directory. Consult the READ-ME file in this directory for a instructions on building it. Two other interfaces - WIDGET and SUNINT are provided as example DUAs. These programs are located in the others/quipu/uips directory. Consult the READ-ME files in these directories for descriptions of these interfaces and instructions on building them. When building the user interfaces, it is expected that you have NOT cleaned the basic ISODE build tree or the QUIPU tree. NETWORK MANAGEMENT In addition, if you are running the ISODE on a Berkeley UNIX system, there is also an implementation of the SNMP. Although this is not the OSI network management service, Inasmuch as the continued survival of the Internet hinges on all nodes becoming network manageable, this package was developed using the ISODE and is being freely distributed with releases of Berkeley UNIX. Sun Release 3.5 Last change: 27 Jul 1990 15 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) It must be stressed that this package is not a complete net- work management system. In particular, whilst _s_n_m_p_d pro- vides a minimal agent functionality, there are no Network Operation Center (NOC) tools--_s_n_m_p_i is a debugging aid only. To generate the SNMP system, go to the isode-6.6/ directory and type: % ./make all-snmp This will cause a complete generation of the SNMP agent and the minimal SNMP initiator program. If all goes well, proceed with the installation. If not, complain as there "should be no problems" at this step. There are two once-only activities which must be performed prior to installation. First, check your /etc/services file, and verify that these three lines are present: snmp 161/udp snmp-trap 162/udp smux 199/tcp If not, add them. Second, add these lines to the /etc/rc.local file: if [ -f $(SBINDIR)snmpd ]; then $(SBINDIR)snmpd & (echo -n ' snmp') > /dev/console fi if [ -f $(SBINDIR)smux.unixd -a -f $(SBINDIR)snmpd ]; then $(SBINDIR)smux.unixd & (echo -n ' smux-unix') > /dev/console fi You will need to be the super-user to install SNMP: # ./make install-snmp This will install everything and then clean-up the source tree. If you just want an installation and no clean-up, then use: # ./make inst-snmp instead. Regardless of the command you use, read the comments in the $(ETCDIR)snmpd.rc file which will tell you how to tailor the agent for your installation. Sun Release 3.5 Last change: 27 Jul 1990 16 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) Finally, if you are already running the SNMP, then you will need to kill and restart the _s_n_m_p_d (8c) and SMUX UNIX dae- mons. (It is best to kill _s_m_u_x._u_n_i_x_d first, and then _s_n_m_p_d.) Otherwise, start the daemons now. From the _C_S_h_e_l_l, the command might be: # $(SBINDIR)snmpd >& /dev/null # $(SBINDIR)smux.unixd >& /dev/null The daemon will automatically detach. If you do not redirect the daemon's standard-error, then it will not detach, instead printing messages as to what actions it is taking. LIGHTWEIGHT PRESENTATION PROTOCOL In addition, if you are running the ISODE on a Berkeley UNIX system, there is also an implementation of RFC1085, the lightweight presentation protocol for TCP/IP-based inter- nets. To generate the LPP system, go to the isode-6.6/ directory and type: % ./make all-lpp This will cause a complete generation of the LPP library and support programs. If all goes well, proceed with the installation. If not, complain as there "should be no prob- lems" at this step. You will need to be the super-user to install the LPP sys- tem. There are two kinds of activities: once-only activi- ties that you perform the first time the software is installed; and each-time activities that you perform every time the software is installed. The first once-only activity is to verify that the _l_p_p_d dae- mon will be run when the machine goes multi-user. On Berke- ley UNIX systems, add these lines to the /etc/rc.local file: if [ -f $(SBINDIR)lppd ]; then $(SBINDIR)lppd & (echo -n ' lpp') > /dev/console fi On other systems, a similar procedure is followed. The next once-only activity is to verify that systems with a native /etc/services file contain an entry for the miscel- lany service. This is used when the ISODE miscellaneous services is run using the LPP. If not, add the line: Sun Release 3.5 Last change: 27 Jul 1990 17 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) miscellany 17002/lpp to the /etc/services file. If your system does not have such a file, the software automatically compensates for this. There are two each-time activities: # ./make install-lpp This will install everything and then clean-up the source tree. If you just want an installation and no clean-up, then use: # ./make inst-lpp instead. Regardless of the command you use, the second each-time activity, is that if you are already running the LPP system, then you will need to kill and restart the _l_p_p_d (8c) daemon, otherwise incoming connections will not be initialized correctly. Otherwise, start the daemon now. From the _C_S_h_e_l_l, the command might be: # $(SBINDIR)lppd >& /dev/null The daemon will automatically detach. If you do not redirect the daemon's standard-error, then it will not detach, instead printing messages as to what actions it is taking. That's about it. GENERATING DOCUMENTATION The directory doc/ contains the documentation set for this release. Consult the file doc/READ-ME for a description of each document. The directory doc/ps/ contains PostScript versions of each document. Usually it is easier to print the files in this directory than generate the documentation from scratch as the sources to these documents are in either LaTeX (for papers) or SLiTeX (for presentations). If you received this distribution from the network, then the directory doc/ps/ does not contain any PostScript files. There should be a separate compressed _t_a_r file, containing only PostScript files, available on the machine where you retrieved this distribution. FILES Too numerous to mention. Honest. Sun Release 3.5 Last change: 27 Jul 1990 18 ISODE-GEN(8) MAINTENANCE COMMANDS ISODE-GEN(8) SEE ALSO _T_h_e _I_S_O _D_e_v_e_l_o_p_m_e_n_t _E_n_v_i_r_o_n_m_e_n_t: _U_s_e_r'_s _M_a_n_u_a_l AUTHOR Marshall T. Rose with assistance from a cast of thousands (read the Preface in the _U_s_e_r'_s _M_a_n_u_a_l) Sun Release 3.5 Last change: 27 Jul 1990 19