DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T i

⟦3dd06372a⟧ TextFile

    Length: 33689 (0x8399)
    Types: TextFile
    Names: »isode-gen.8«

Derivation

└─⟦2d1937cfd⟧ Bits:30007241 EUUGD22: P.P 5.0
    └─⟦35176feda⟧ »EurOpenD22/isode/isode-6.tar.Z« 
        └─⟦de7628f85⟧ 
            └─⟦this⟧ »isode-6.0/isode-gen.8« 

TextFile

.TH ISODE-GEN 8 "11 Jan 1990"
.ds VD isode\-6.0/
.ds VN 6.0
.\" $Header: /f/osi/RCS/isode-gen.8,v 7.11 90/01/11 19:35:47 mrose Exp $
.\"
.\"
.\" $Log:	isode-gen.8,v $
.\" Revision 7.11  90/01/11  19:35:47  mrose
.\" again
.\" 
.\" Revision 7.10  90/01/11  18:33:48  mrose
.\" real-sync
.\" 
.\" Revision 7.9  89/12/19  23:40:40  mrose
.\" again
.\" 
.\" Revision 7.8  89/12/19  23:37:41  mrose
.\" again
.\" 
.\" Revision 7.7  89/12/19  23:36:12  mrose
.\" again
.\" 
.\" Revision 7.6  89/12/19  23:34:33  mrose
.\" again
.\" 
.\" Revision 7.5  89/12/19  23:32:22  mrose
.\" again
.\" 
.\" Revision 7.4  89/12/19  09:52:43  mrose
.\" 5.9
.\" 
.\" Revision 7.3  89/12/04  18:18:09  mrose
.\" 5.8b
.\" 
.\" Revision 7.2  89/11/30  23:50:49  mrose
.\" typos
.\" 
.\" Revision 7.1  89/11/24  13:33:10  mrose
.\" sync
.\" 
.\" Revision 7.0  89/11/23  21:21:30  mrose
.\" Release 6.0
.\" 
.SH NAME
isode\-gen \- generating the ISO Development Environment
.SH "READ THIS"
This documentation describes how to configure, generate, and install the
ISO Development Environment.
.PP
Acquisition, use, and distribution of this module and related
materials are subject to the restrictions of a license agreement.
Consult the Preface in the \fIUser's Manual\fR for the full terms of this
agreement.
.PP
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 settings in the configuration file.
.PP
Comments concerning this release should be directed to the authors.
Consult the preface in the \fIUser's Manual\fR for a current postal address.
Alternately,
if you have access to the Internet,
comments may be sent to the mailbox \*(lqBug\-ISODE@NISC.NYSER.NET\*(rq.
Do \fBnot\fR send bug reports to the ISODE discussion group.
If you want to subscribe to the ISODE discussion group, drop a note to
\*(lqISODE-Request@NIC.DDN.MIL\*(rq.
.SH SYNOPSIS
.sp
.in +.5i
.nf
% cp config/\fIsystem\fR.h h/config.h
% cp config/\fIsystem\fR.make config/CONFIG.make
% cp config/*.local support/
% make everything
.fi
.in -.5i
.sp
NOTE WELL: THERE IS A NEW MANDATORY VARIABLE IN CONFIG.MAKE:
.sp
.ce
\fBSBINDIR\fR
.sp
IN MOST CASES, THE VALUE OF THIS VARIABLE SHOULD BE SET TO THE VALUE OF
.sp
.ce
\fBETCDIR\fR
.sp
.SH 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.
.PP
The distribution tape contains the hierarchy for the \fB\*(VD\fR directory.
Bring the sources on\-line by changing to a directory for local sources and
running tar, e.g.,
.sp
.in +.5i
.nf
% cd /usr/src/local/
% tar x
% cd \*(VD
.fi
.in -.5i
.sp
.SH CONFIGURATION
First, go to the \fBconfig/\fR directory.
.sp
.in +.5i
.nf
% cd config
.fi
.in -.5i
.sp
.PP
Select the Makefile and include-file skeletons which most closely match
your system.
The current choices are:
.sp
.in +.5i
.nf
.ta \w'sys52-exos  'u
.ne 4
\fIfile\fR	\fIconfiguration\fR
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
.re
.fi
.in -.5i
.sp
The makefile skeleton has the extension \fB.make\fR,
whereas the include\-file skeleton has the extension \fB.h\fR.
.SS MAKEFILE
Copy the makefile skeleton of your choice to \fBpickle.make\fR,
where \*(lqpickle\*(rq is the name of your system.
Now edit this file to set the following \fImake\fR variables:
.sp
.in +.5i
.nf
.ta \w'MANOPTS  'u +\w'/usr/include/isode/  'u
.ne 8
\fIvariable\fR	\fIdefault\fR	\fIspecifies\fR
OPTIONS		options to \fIcc\fR and \fIlint\fR (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
MANOPTS		see util/inst-man.sh for details
.re
.fi
.in -.5i
.sp
.PP
Finally, 
.sp
.in +.5i
.nf
ln pickle.make CONFIG.make
.fi
.in -.5i
.sp
(yes, that's \*(lqCONFIG\*(rq in uppercase and \*(lqmake\*(rq in lowercase).
Both of these files are in the \fB\*(VDconfig/\fR directory.
This latter file is the one which the software uses to configure itself
during generation.
.SS INCLUDE\-FILE
Copy the include\-file skeleton of your choice to \fBpickle.h\fR,
where \*(lqpickle\*(rq is the name of your system.
Now add any additional definitions you like (usually none).
Consult the file \fBconfig/OPTIONS\fR for a list.
.PP
Now:
.sp
.in +.5i
.nf
ln pickle.h ../h/config.h
.fi
.in -.5i
.sp
This latter file is the one which the software uses to configure itself
during generation.
.SS "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 \fBsupport/\fR
directory:
.sp
.in +.5i
.nf
% cp aliases.local ../support/
.fi
.in -.4i
.sp
If you have local modifications you wish to make,
either copy in your own file or edit the file
\fBsupport/aliases.local\fR as appropriate.
.SS "SERVICES DATABASE"
Typically, sites run with the default services database.
In this case,
simply copy the default local configuration file to the \fBsupport/\fR
directory:
.sp
.in +.5i
.nf
% cp services.local ../support/
.fi
.in -.4i
.sp
If you have local modifications you wish to make,
either copy in your own file or edit the file
\fBsupport/services.local\fR as appropriate.
.SS "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 \fBsupport/\fR
directory:
.sp
.in +.5i
.nf
% cp entities.local ../support/
.fi
.in -.5i
.sp
If you have local modifications you wish to make,
either copy in your own file or edit the file
\fBsupport/entities.local\fR as appropriate.
.PP
In particular,
if you are using SunLink OSI,
it will be necessary to put an entry in your
\fBsupport/entities.local\fR file of the form:
.sp
.in +.5i
myhost\0default\0\01.17.4.1.0\0\0#1/NS+mynsap
.in -.5i
.sp
where \*(lqmyhost\*(rq is the name of the local machine,
and \*(lqmynsap\*(rq is the NSAP of the local machine.
The NSAP is most easily determined by running
.sp
.in +.5i
.nf
% cd others/osilookup
% ./make
% xosilookup localhost CLIENT
.fi
.in -.5i
.sp
providing that the SunLink OSI file \fB/etc/sunlink/osi/hosts\fR 
has an entry defining the service for \*(lqlocalhost\*(rq called
\*(lqCLIENT\*(rq.
(Note that in releases earlier than SunLink OSI 6.0,
the file is called \fB/usr/etc/osi.hosts\fR)
Note that this entry is mandatory if you are running SunLink OSI
release 5.2 or greater.
.PP
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 \fItsapd\fR when it listens.
This is done in two steps:
First,
in \fBsupport/entities.local\fR,
change your entry to read as:
.sp
.in +.5i
myhost\0default\0\01.17.4.1.0\0\0#2/NS+mynsap
.in -.5i
.sp
Second,
in \fBsupport/services.local\fR,
add a line that reads as:
.sp
.in +.5i
tsap/session\0\0#2\0\0tsapd-bootstrap
.in -.5i
.sp
which overrides the default TSEL in the \fBsupport/services.db\fR file.
.SS "MACROS DATABASE"
Typically, sites run with the default macros database.
In this case,
simply copy the default local configuration file to the \fBsupport/\fR
directory:
.sp
.in +.5i
.nf
% cp macros.local ../support/
.fi
.in -.5i
.sp
If you have local modifications you wish to make,
either copy in your own file or edit the file
\fBsupport/macros.local\fR as appropriate.
.SS "OBJECTS DATABASE"
Typically, sites run with the default objects database.
In this case,
simply copy the default local configuration file to the \fBsupport/\fR
directory:
.sp
.in +.5i
.nf
% cp objects.local ../support/
.fi
.in -.4i
.sp
If you have local modifications you wish to make,
either copy in your own file or edit the file
\fBsupport/objects.local\fR as appropriate.
.SH GENERATION
Go to the \fB\*(VD\fR directory
.sp
.in +.5i
.nf
% cd ..
.fi
.in -.5i
.sp
Now reset the dates of the
configuration files for the system.
This is done only once per source-tree:
.sp
.in +.5i
.nf
% ./make once-only
.fi
.in -.5i
.sp
then generate the basic system.
.sp
.in +.5i
.nf
% ./make
.fi
.in -.5i
.sp
If you are using SunOS,
do not use the \fImake\fR program supplied with the SunPro package.
It is not, contrary to any claims, compatible with the standard
\fImake\fR 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 \fImake\fR program found in \fB/usr/old/\fR,
if the standard \fImake\fR your are using is the SunPro \fImake\fR.
In this case,
you will need to put the old, standard \fImake\fR in \fB/usr/bin/\fR,
and you can keep the SunPro \fImake\fR in \fB/bin/\fR.
.PP
If you are using SVR3,
then you will probably have to type this command before starting the
compilation:
.sp
.in +.5i
.nf
% ulimit 32768
.fi
.in -.5i
.sp
.PP
The \fImake\fR 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 \*(lqshould be no problems\*(rq at this step.
Some files while compiling may produce a
.sp
.in +.5i
.nf
warning: statement not reached
.fi
.in -.5i
.sp
or a
.sp
.in +.5i
.nf
type ObjectDescriptor: Warning: Can't find file DSE.ph failed
.fi
.in -.5i
.sp
message.
This is normal.
Sometimes when building a loader library, you might see several
.sp
.in +.5i
.nf
ranlib: warning: ../libisode.a(aetdbm.o): no symbol table
.fi
.in -.5i
.sp
messages.
This is also normal.
You might also see a few messages like:
.sp
.in +.5i
.nf
*** Error code 1 (ignored)
.fi
.in -.5i
.sp
This is also normal.
As a rule, unless \fImake\fR says something like
.sp
.in +.5i
.nf
*** Error code 1
.fi
.in -.5i
.sp
or perhaps
.sp
.in +.5i
.nf
Exit
.fi
.in -.5i
.sp
then everything is going just fine!
.SH TESTING
Some directories may have a resident test program,
e.g., in the \fBpsap/\fR directory, there is a program called \fIpsaptest\fR.
These programs are for internal testing only,
and are not for use by \*(lqmere mortals\*(rq.
If you want to test things,
after installation run \fIisode\-test\fR (see the \fBUSER PROGRAMS\fR section).
.SH INSTALLATION
You will need to be the super\-user to install the software.
Note that installing the software from an NFS-mounted partition
requires that you perform the installation as the super-user on the
\fItarget\fR system after changing to the source directory on the
\fIsource\fR system.
.PP
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.
.PP
The first once\-only activity is to verify that the \fItsapd\fR daemon will be
run when the machine goes multi\-user.
On Berkeley UNIX systems, add these lines to the \fB/etc/rc.local\fR file:
.sp
.in +.5i
.nf
if [ \-f $(SBINDIR)tsapd ]; then
    $(SBINDIR)tsapd & (echo \-n ' tsap') > /dev/console
fi
.fi
.in -.5i
.sp
On other systems, a similar procedure is followed.
For example,
on systems derived from AT&T UNIX,
the file \fB/etc/rc2\fR script might be edited.
.PP
The next once\-only activity is to verify that systems with a native
\fB/etc/services\fR file contain an entry for the tsap service
(if you have configured the ISODE to run over TCP).
If not,
add the line:
.sp
.in +.5i
.nf
tsap		102/tcp
.fi
.in -.5i
.sp
to the \fB/etc/services\fR file.
If your system does not have such a file,
the software automatically compensates for this.
.PP
Next,
on Berkeley UNIX systems,
add a line to the \fB/usr/lib/crontab\fR file to invoke a
shell-script that will re-cycle the log files.
Usually, the line you add looks something like this:
.sp
.in +.5i
.nf
0 4 * * * su daemon < $(SBINDIR)isologs
.fi
.in -.5i
.sp
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 \fB/usr/spool/cron/crontabs/root\fR might be edited followed
by the command
.sp
.in +.5i
.nf
% crontab root
.fi
.in -.5i
.sp
.PP
Finally,
create the BINDIR, SBINDIR, ETCDIR, and LOGDIR directories as they
appear in your \fBCONFIG.make\fR file, if they do not already exist.
The mode of the LOGDIR directory should be 777,
the other directories should be mode 755.
.PP
If you are installing the manual pages into a non-standard area,
then set the environment variable $MANDIR accordingly,
e.g.,
.sp
.in +.5i
.nf
# setenv MANDIR /usr/local/man
.fi
.in -.5i
.sp
based on the non-standard area.
.PP
There are two each\-time activities:
.sp
.in +.5i
.nf
# ./make inst\-all
.fi
.in -.5i
.sp
which does the installation.
.PP
The second each\-time activity,
is that if you are already running the ISODE,
then you will need to kill and restart the \fItsapd\fR\0(8c) daemon,
otherwise incoming connections will not be initialized correctly.
Otherwise, start the daemon now.
From the \fICShell\fR, the command might be:
.sp
.in +.5i
.nf
# $(SBINDIR)tsapd >& /dev/null
.fi
.in -.5i
.sp
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.
.PP
That's about it.  This will install everything.
To clean-up the source tree as well,
then use:
.sp
.in +.5i
.nf
% ./make clean
.fi
.in -.5i
.sp
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.
.PP
If your system is configured for TCP/IP,
and you are not already running an SNMP agent,
then you are \fBURGED\fR to immediately install the SNMP agent
distributed with the ISODE.
Consult the \fBNETWORK MANAGEMENT\fR section below.
.PP
Finally,
if you are interested in discussing the ISODE with others running the software,
drop a note to the Internet mailbox
\*(lqISODE\-Request@NIC.DDN.MIL\*(rq,
and ask to be added to the \*(lqISODE@NIC.DDN.MIL\*(rq list.
.SH TAILORING
If you create a file called \fB$(ETCDIR)isotailor\fR,
then you can customize the behavior of the programs which use the
ISODE when they start.
Consult the \fBsupport/isotailor.5\fR file for further information.
.SH "USER PROGRAMS"
By default,
two services are installed.
.PP
The first service,
having programs \fIisoc\fR and \fIisod\fR,
is used to test out the installation of the ISODE on your system.
The script \fIisode\-test\fR uses these in order to verify the proper
installation of the system.
.PP
The second service,
having programs \fIimisc\fR and \fIros.imisc\fR,
is a small demo service supporting things like \fIfinger\fR, \fIwho\fR and
so forth.
.PP
There are additional programs in the \fBothers/\fR directory.
These aren't integral parts of the system and assume that the ISODE is already
installed.
Use at your own discretion.
.SH "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 implementation of the ISO FTAM.
FTAM, which stands for File Transfer, Access and Management,
is the OSI file service.
The implementation provided is fairly complete in the context of
the particular file services it offers.
It is a minimal implementation in as much as it offers only four core
services: transfer of text files,
transfer of binary files,
directory listings,
and file management.
.PP
To generate FTAM, go to the \fB\*(VD\fR directory and type:
.sp
.in +.5i
.nf
% ./make all-ftam
.fi
.in -.5i
.sp
.PP
This will cause a complete generation of the FTAM libraries and programs.
If all goes well, proceed with the installation.
If not, complain as there \*(lqshould be no problems\*(rq at this step.
.PP
You will need to be the super-user to install FTAM:
.sp
.in +.5i
.nf
# ./make install\-ftam
.fi
.in -.5i
.sp
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:
.sp
.in +.5i
.nf
# ./make inst\-ftam
.fi
.in -.5i
.sp
instead.
.SH "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 location
than the standard FTAM responder and FTP server.
(This may be corrected in a future release.)
Read the manual entries for \fIftamd-ftp\fR\0(8c) and
\fIftpd-ftam\fR\0(8c) for the details.
.PP
To generate the FTAM/FTAP gateway, go to the \fB\*(VD\fR directory and type:
.sp
.in +.5i
.nf
% ./make all-ftam-ftp
.fi
.in -.5i
.sp
.PP
This will cause a complete generation of the gateway.
If all goes well, proceed with the installation.
If not, complain as there \*(lqshould be no problems\*(rq at this step.
.PP
You will need to be the super-user to install the FTAM/FTP gateway:
.sp
.in +.5i
.nf
# ./make install\-ftam-ftp
.fi
.in -.5i
.sp
Next, on 4.2BSD-derived systems, add this line to your \fB/etc/servers\fR file:
.sp
.in +.5i
.nf
ftp-ftam\0\0tcp\0\0$(SBINDIR)in.ftpd-ftam
.fi
.in -.5i
.sp
On 4.3BSD-derived systems, add this line to your \fB/etc/inetd.conf\fR file:
.sp
.in +.5i
.nf
ftp-ftam\0\0stream\0\0tcp\0\0nowait\0\0root\0\0$(SBINDIR)in.ftpd-ftam\0\0in.ftpd-ftam
.fi
.in -.5i
.sp
.PP
Finally,
add this line to your \fB/etc/services\fR file:
.sp
.in +.5i
.nf
ftp-ftam		531/tcp
.fi
.in -.5i
.sp
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:
.sp
.in +.5i
.nf
# ./make inst\-ftam-ftp
.fi
.in -.5i
.sp
instead.
.SH "VIRTUAL TERMINAL"
In addition,
if you are running the ISODE on a Berkeley UNIX 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.
.PP
To generate the VT system, go to the \fB\*(VD\fR directory and type:
.sp
.in +.5i
.nf
% ./make all-vt
.fi
.in -.5i
.sp
.PP
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 \*(lqshould be no problems\*(rq at this step.
.PP
You will need to be the super-user to install VT:
.sp
.in +.5i
.nf
# ./make install\-vt
.fi
.in -.5i
.sp
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:
.sp
.in +.5i
.nf
# ./make inst\-vt
.fi
.in -.5i
.sp
instead.
.SH "DIRECTORY SERVICES"
In addition,
if you are running the ISODE on a Berkeley UNIX system,
there is also an implementation of the OSI Directory, called QUIPU.
If you're not interested in running a Directory,
skip this text and go to the section entitled \fBGENERATING
DOCUMENTATION\fR.
.PP
Each host using the OSI directory implicitly runs a 
Directory 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.
.SS "QUIPU GENERATION"
To generate QUIPU, go to the \fB\*(VD\fR directory and type:
.sp
.in +.5i
.nf
% ./make all-quipu
.fi
.in -.5i
.sp
.PP
This will cause a complete generation of the DSAP library and the DSA.
If all goes well, proceed with the installation.
If not, complain as there \*(lqshould be no problems\*(rq at this step.
.SS "QUIPU INSTALLATION"
You will need to be the super-user to install QUIPU:
.sp
.in +.5i
.nf
# ./make install\-quipu
.fi
.in -.5i
.sp
This will install everything and then clean\-up the source tree.
If you just want an installation and no clean\-up, then use:
.sp
.in +.5i
.nf
# ./make inst\-quipu
.fi
.in -.5i
.sp
instead.
After either command,
there is one once-only activity.
.PP
The QUIPU DSA is a \*(lqstatic responder\*(rq.
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 \fIros.quipu\fR daemon when the
machine goes multi-user.
On Berkeley UNIX systems, add these lines to the \fB/etc/rc.local\fR file:
.sp
.in +.5i
.nf
if [ \-f $(SBINDIR)ros.quipu ]; then
    (cd /usr/etc/quipu-db; $(SBINDIR)ros.quipu) & (echo \-n ' quipu') > /dev/console
fi
.fi
.in -.5i
.sp
(This assumes your database is in the directory \fB/usr/etc/quipu-db\fR - 
it need not be)
On other systems, a similar procedure is followed.
.SS "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 \fBQUIPU TAILORING\fR.)
The database directory, by default, lives in the ETCDIR area
(usually \fB/usr/etc/\fR) under the name of \fBquipu-db/\fR.
Three prototype databases can be found in the directory
\fBothers/quipu/quipu-db/\fR.
These database files should be protected as they contain Directory passwords and
other sensitive 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.
.PP
Now customize the chosen prototype database under \fB/usr/etc/quipu-db/\fR.  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 example structure for O=University College London.
.SS "QUIPU TAILORING"
Before starting the DSA and the applications using the Directory Service
Element (DSE),
they (along with the ISODE) should be tailored.
.PP
Currently,
the interaction between the DSE loaded by programs using the ISODE and
the DSA is available over only the UDP using a \*(lqlightweight\*(rq
nameservice protocol.
Programs using the ISODE determine the address of the nameservice by looking
at the \fB$(ETCDIR)isotailor\fR 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:
.sp
.in +.5i
.nf
ns_address:    Internet=localhost+17007+2
.fi
.in -.5i
.sp
Substitute the name of the system running a DSA for \*(lqlocalhost\*(rq
(or leave it be, if you wish),
and substitute any unused UDP port on this host for \*(lq17007\*(rq.
Leave the rest of this string ALONE.
(Read the documents in \fBdoc/interim\fR for a description of how
these address strings are constructed and what they mean.)
Next, you must enable the use of the nameservice by the DSE.
This is done by setting another runtime configuration variable in the
\fB$(ETCDIR)isotailor\fR file:
.sp
.in +.5i
.nf
ns_enable:    on
.fi
.in -.5i
.sp
Programs using the ISODE will automatically check this variable.
If \*(lqon\*(rq, they will first try the nameservice to resolve the
service address.
If this fails, they will use the stub-directory service as a fallback.
.PP
If you choose to run a local DSA, now configure it.
The DSA tailors itself at runtime by reading the file \fB$(ETCDIR)quiputailor\fR.
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:
.sp
.in +.5i
.nf
mydsaname          CN=toucan
.fi
.in -.5i
.sp
Substitute the name of the DSA as it occurs in the Directory for
\*(lqCN=toucan\*(rq.
See \fIquiputailor\fR\0(5) for a description of the full range of
tailoring options in the \fB$(ETCDIR)quiputailor\fR file.
.PP
Now configure the various DUA programs.
These tailor themselves at runtime by reading the file
\fB$(ETCDIR)dsaptailor\fR.
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:
.sp
.in +.5i
.nf
dsa_address     toucan  Internet=localhost+17003
.fi
.in -.5i
.sp
Substitute the name of your \*(lqprimary\*(rq DSA for \*(lqtoucan\*(rq
and its corresponding presentation address for the
\*(lq'0101'H/Internet+...\*(rq string.
This information can be found in the Directory on the host which is
running the DSA.
.PP
Do not confuse the \fIdsa_address\fR used in this file with the
\fIns_address\fR used in the \fB$(ETCDIR)isotailor\fR file.
These are separate services and must live at different addresses.
See \fIquiputailor\fR\0(5) for a description of the full range of
tailoring options in the \fB$(ETCDIR)dsaptailor\fR file.
.SS "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.
.PP
Start the DSA now.
From the \fICShell\fR, the command might be:
.sp
.in +.5i
.nf
# $(SBINDIR)ros.quipu >& /dev/null
.fi
.in -.5i
.sp
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.
.SS "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 \fB$(ETCDIR)isoentities\fR file.
This step is not critical, missing 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 \fIdsabuild\fR program:
.sp
.in +.5i
.nf
% dsabuild
manager: c=US@o=The Wollongong Group@cn=Chris Moore
password: 
.fi
.in -.5i
.sp
By default, this will create only entries for the current host.
You can use the `\-p\0designator' switch to load information on
services available on other hosts.
Typically,
you will run \fIdsabuild\fR with the `\-p' option once for each host
at your site.
.PP
As shown above,
the \fIdsabuild\fR 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 \fImanager\fR attribute for the DSA which
is responsible for the portion of the Directory tree you will be adding
to.  Substitute this value for \*(lqc=US@o=The Wollongong Group@cn=Chris\0Moore\*(rq.
You will then need to find the password attribute for the manager
object in the database as well.
While running, \fIdsabuild\fR may print out messages for the form:
.sp
.in +.5i
.nf
*** Update error - Already exists ***
.fi
.in -.5i
.sp
This is normal.
.PP
That's about it.
You can now use one of the user interfaces to look around in the Directory.
.SS "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 \fBquipu/dish\fR directory.
Consult the \fBREAD-ME\fR file in this directory for a instructions on 
building it.
.PP
Two other interfaces - WIDGET and SUNINT are provided as example DUAs.
These programs are located in the \fBothers/quipu/uips\fR directory.
Consult the \fBREAD-ME\fR files in these directories for descriptions
of these interfaces and instructions on building them.
.PP
When building the user interfaces,
it is expected that you have NOT cleaned the basic ISODE build tree or
the QUIPU tree.
.SH "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 does 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.
.PP
It must be stressed that this package is not a complete network management
system.
In particular,
whilst \fIsnmpd\fR provides a minimal agent functionality,
there are no Network Operation Center (NOC) tools--\fIsnmpi\fR is a
debugging aid only.
.PP
To generate the SNMP system, go to the \fB\*(VD\fR directory and type:
.sp
.in +.5i
.nf
% ./make all-snmp
.fi
.in -.5i
.sp
.PP
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 \*(lqshould be no problems\*(rq at this step.
.PP
There are two once\-only activities which must be performed prior to installation.
First,
check your \fB/etc/services\fR file,
and verify that these two lines are present:
.sp
.in +.5i
.nf
snmp			161/udp
snmp-trap		162/udp
.fi
.in -.5i
.sp
If not, add them.
.PP
Second,
add these lines to the \fB/etc/rc.local\fR file:
.sp
.in +.5i
.nf
if [ \-f $(SBINDIR)snmpd ]; then
    $(SBINDIR)snmpd & (echo \-n ' tsap') > /dev/console
fi
.fi
.in -.5i
.sp
.PP
You will need to be the super-user to install SNMP:
.sp
.in +.5i
.nf
# ./make install\-snmp
.fi
.in -.5i
.sp
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:
.sp
.in +.5i
.nf
# ./make inst\-snmp
.fi
.in -.5i
.sp
instead.
.PP
Finally,
read the comments in the \fB$(ETCDIR)snmpd.rc\fR file which will tell
you how to tailor it for your installation.
.SH "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 internets.
.PP
To generate the LPP system, go to the \fB\*(VD\fR directory and type:
.sp
.in +.5i
.nf
% ./make all\-lpp
.fi
.in -.5i
.sp
.PP
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 \*(lqshould be no problems\*(rq at this step.
.PP
You will need to be the super-user to install the LPP system.
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.
.PP
The first once\-only activity is to verify that the \fIlppd\fR daemon will be
run when the machine goes multi\-user.
On Berkeley UNIX systems, add these lines to the \fB/etc/rc.local\fR file:
.sp
.in +.5i
.nf
if [ \-f $(SBINDIR)lppd ]; then
    $(SBINDIR)lppd & (echo \-n ' lpp') > /dev/console
fi
.fi
.in -.5i
.sp
On other systems, a similar procedure is followed.
.PP
The next once\-only activity is to verify that systems with a native
\fB/etc/services\fR file contain an entry for the miscellany service.
This is used when the ISODE miscellaneous services is run using the LPP.
If not,
add the line:
.sp
.in +.5i
.nf
miscellany	17002/lpp
.fi
.in -.5i
.sp
to the \fB/etc/services\fR file.
If your system does not have such a file,
the software automatically compensates for this.
.PP
There are two each\-time activities:
.sp
.in +.5i
.nf
# ./make inst\-lpp
.fi
.in -.5i
.sp
which does the installation.
.PP
The second each\-time activity,
is that if you are already running the LPP system,
then you will need to kill and restart the \fIlppd\fR\0(8c) daemon,
otherwise incoming connections will not be initialized correctly.
Otherwise, start the daemon now.
From the \fICShell\fR, the command might be:
.sp
.in +.5i
.nf
# $(SBINDIR)lppd >& /dev/null
.fi
.in -.5i
.sp
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.
.PP
That's about it.
.SH "GENERATING DOCUMENTATION"
The directory \fBdoc/\fR contains the documentation set for this release.
Consult the file \fBdoc/READ\-ME\fR for a description of each document.
The directory \fBdoc/ps/\fR 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).
.PP
If you received this distribution from the network,
then the directory \fBdoc/ps/\fR does not contain any PostScript files.
There should be a separate compressed \fItar\fR file,
containing only PostScript files,
available on the machine where you retrieved this distribution.
.SH FILES
Too numerous to mention.
Honest.
.SH "SEE ALSO"
\fIThe ISO Development Environment: User's Manual\fR
.SH AUTHOR
Marshall T. Rose
.br
with assistance from a cast of thousands
(read the \fBPreface\fR in the \fIUser's Manual\fR)