GO500(8C)

NAME
go500 - Local Gopher index search to X.500 search gateway

SYNOPSIS
/usr/local/libexec/go500 [-b searchbase] [-d level] [-l] [-x hostname] [-c rdncount] [-f filterfile] [-t templatefile] [-p port] [-I]

DESCRIPTION
go500 is the local gopher index search to X.500 search daemon. It looks like a gopher index server to a gopher client, translating the search criteria it is given into a search of a pre-configured portion of the X.500 directory. It uses LDAP to talk to X.500. By default, it listens on port 5555 for connections from gopher clients.

The go500 server can be run either from inetd(8) or as stand-alone server.

STAND-ALONE OPERATION
To start go500 as a stand-alone server, simply start it with no arguments

	/usr/local/libexec/go500

If you would like to start it at boot time add some lines like this to the etc/rc.local or equivalent file:

	if [ -f /usr/local/libexec/go500 ]; then
		/usr/local/libexec/go500; echo ' go500'
	fi

OPERATION WITH INETD
To arrange to have go500 started from inetd(8), the Internet protocol daemon, add a line like the following to your /etc/services file, or the equivalent:

    go500           5555/tcp        go500

Next, add a line like this to your /etc/inetd.conf file, or the equivalent:

    go500   stream  tcp     nowait  nobody  /usr/local/libexec/go500    go500 -I

For these changes to take effect with inetd, you will probably have to send it it a HUP signal. See inetd(8) for more details.

GOPHER CONFIGURATION
The next step is to configure your local gopher server to have an entry for go500. With the standard unix gopher server, this can be done with a .link file. A sample .link file is given below, with the things you should change given in <>'s:

	Name=<Label of your choice>
	Type=7
	Port=5555
	Path=
	Host=<host.running.go500.here>

You may also have to restart your gopher daemon, or remove the .cache file. See gopherd(8) for more details.

OPTIONS

-b searchbase
    Specify an alternate starting point for searches. The argument should be a Distinguished Name in the form defined by RFC 1485. For example, the DN "o=University of Michigan, c=US" could be given to search the University of Michigan portion of the X.500 tree.

-d level
    Turn on debugging as defined by level. If this option is specified, go500 will not fork or disassociate from the invoking terminal. Some general operation and status messages are printed for any value of level. level is taken as a bit string, with each bit corresponding to a different kind of debugging information.

-f filterfile
    Specify an alternate filter configuration file for use with the ldap_getfilter(3) facility, used by go500.

-l  Enable logging of various status and errors to the LOG_LOCAL3 facility via syslog(8).

-p port
    Specify an alternate port on which to listen for connections.

-t templatefile
    Specify an alternate template configuration file for use with the ldap_init_templates(3) facility, used by go500.

-c rdncount
    Specify the number of DN components to show for the names and DN attributes within entries matching the search.

-x hostname
    Specify an alternate host on which the ldap server is running.

-I  Run from inetd(8).

NOTES
Some implementations of inetd have a small limit on the number of arguments that can be specified in the /etc/inetd.conf(5) file. This can cause problems if you are using go500 with a lot of arguments.

The default values for most of the things you can specify with options are configured at compile time in the include/ldapconfig.h.edit include file.

SEE ALSO
ldap(3), inetd(8), gopherd(8), go500gw(8)

ACKNOWLEDGEMENTS
OpenLDAP is developed and maintained by The OpenLDAP Project (http://www.openldap.org/). OpenLDAP is derived from University of Michigan LDAP 3.3 Release.