Start development on 386BSD 0.0
[unix-history] / .ref-BSD-4_3_Net_2 / usr / src / contrib / isode / others / quipu / uips / pod / pod.5
.TH POD 5 "16 May 1990"
.SH NAME
pod \- X-windows based directory user agent.
.SH SYNOPSIS
.B pod
.SH DESCRIPTION
.PP
Read and search calls to the directory in \fIpod\fR are carried out
using parameters specified in configuration files contained
in a configuration directory.
This directory can be held on a per-user basis,
and will otherwise default to a system-wide default directory
held in the ETCDIR defined during isode installation.
These directories are called \*(lq$(HOME)/.duaconfig\*(rq and
\*(lq$(ETCDIR)/xd/duaconfig\*(rq respectively.
.PP
Configuration is trivial in the case of reads,
requiring a list of numeric OIDs
(one on each line),
specifying the attribute types to be read.
A sample section of the default configuration file
(called readTypes and held in one of the above configuration directories)
is,
.sp
.in +.5i
.nf
"alias" 2.5.6.1
"c" 2.5.4.6
"l" 2.5.4.7
.fi
.in -.5i
.sp
where the quoted sections
(required but always ignored)
state the actual name of the type specified and the numeric
sections equate to their actual OIDs.
.PP
Configuration of search is more complicated
and is best illustrated by describing the search mechanism used by \fIpod\fR
(for information on how to use \fIpod\fR consult section 1c of the manual).
Each attribute type in an \fIpod\fR search consists of a
complex filter,
that may make use of a number of actual primitive attribute types.
Thus a search using the \fIpod\fR type \*(lqPerson\*(rq,
as provided in the default configuration set-up,
actually corresponds to the filter,
.sp
.in +.5i
.nf
objectClass=person AND ( commonName ~= *
OR surname~= *
OR title~= *)
.fi
.in -.5i
.sp
where '*' means the value supplied at
search-time, '~=' means approximately matches, '%=' means substring matches
and '=' means exactly matches.
Each of the types used by \fIpod\fR is described in a separate
file called \*(lq/filterTypes/Type_*\*(rq under
one of the configuration directories described above
(note that each file name must have the prefix \*(lqType_\*(rq).
The set of filter-types provided
(Person,
Place,
Department,
Organization)
can thus be added to or modified as wished.
The precise syntax that must be used is shown in the
follwing example,
.sp
.in +.5i
.nf
#Composition of type Place
name:"Place"
( & ( | (2.5.4.0 = "country") #"objectClass"
(2.5.4.0 = "room") # ditto
(2.5.4.0 = "locality")) # ditto
( | (2.5.4.7 ~= *) #"l" - locality
(2.5.4.8 ~= *) #"stateOrProvinceName"
(2.5.4.6 ~= *) #"c" - country
(0.9.2342.19200300.100.1.6 ~= *) #"roomNumber"
(2.5.4.3 ~= *))) #"cn" - "commonName"
.fi
.in -.5i
.sp
The first thing to note is that comments begin with a '#'.
The rest of the line following a '#' is ignored.
The name used by \fIpod\fR to denote the type is
specified using the syntax
.sp
.in +.5i
.nf
name:"STRING".
.fi
.in -.5i
.sp
The following lines describe the filter that the type
is composed of.
It has a lisp-like syntax and uses symbols that correspond
to those used in \fIdish\fR.
The points to note are;
.sp
.in +.5i
.nf
(1) Each filter or filter-item must be enclosed in brackets.
(2) Hard-wired values (as in 2.5.4.0 = "country" above)
must be enclosed in quotes.
(3) '*' denotes a value supplied at search time.
.fi
.in -.5i
.sp
.PP
Additions to the search types will make modification to the
\*(lqtypeDefaults\*(rq file necassary.
This describes the set of types,
chosen from those specified as above,
that are available to search with when
a specific level of the DIT,
e.g. country level,
is occupied by the user.
In addition it specifies the default type at any level.
A typical \*(lqtypeDefaults\*(rq file is shown below,
.sp
.in +.5i
.nf
#
# Format is:
# OID of RDN: Types available at this level: Default type
#
2.5.4.10:Person, Place, Department: Person
2.5.4.11:Person, Place, Department: Person
2.5.4.6:Place, Organization:Organization
2.5.4.7:Place, Organization, Department: Organization
@: Place: Place
.fi
.in -.5i
.sp
Each line,
composed of three colon separated fields,
specifies defaults for one level of the DIT.
The first field contains the numeric OID of an attribute that may be used
as an RDN.
The root entry,
though,
is specified by an \*(lq@\*(rq character,
as can be seen in the lowermost line.
The first line contains the OID for \*(lqorganizationName\*(rq.
The second field describes the types that are available to the user
when occupying the specified level of the DIT.
The third field,
which must also be a member of the second field,
states the default type available at this level.
Thus the first line says that the types Person,
Place and Department are available at the orgainzational level,
and that the default type given to the user is Person.
.PP
To view the list of OID's used in the directory, use the 'oiddump' tool
provided with isode.
(held in 'ISODE/others/quipu/tools').
.SH "SEE ALSO"
xd(1c) sd(1c) dish(1c) pod(1c)
.br
\fIThe ISO Development Environment: User's Manual, Volume 5: QUIPU\fR
.br
ISO 9594:\fIInformation Processing \-\- Open Systems Interconnection \-\-
The Directory\fR
.SH AUTHOR
Andrew.Findlay@brunel.ac.uk
.br
Damanjit.Mahl@brunel.ac.uk
.br
Stefan.Nahajski@brunel.ac.uk