---
name: "simple2zoom"
section: "1p"
platform: "linux"
package: "libnet-z3950-simple2zoom-perl"
version: "1.04-1.1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/simple2zoom"
---

# simple2zoom(1p)

generic Swiss Army Server for proxying between IR standards

## NAME

simple2zoom - generic Swiss Army Server for proxying between IR standards

## SYNOPSIS

`"simple2zoom"` \[ `"-c"` *configFile* \] \[ `"--"` *YAZ-options* \] \[ *listener-address* ... \]

## DESCRIPTION

`"simple2zoom"` provides a generic gateway between the Z39.50 and SRU/SRW Information Retrieval protocols.  Because it relies on the `"Net::Z3950::SimpleServer"` and `"ZOOM"` modules for the server and client funcationality respectively, because both of these modules are based on the YAZ toolkit, and because YAZ transparently handles all three standard IR protocols (ANDI/NISO Z39.50, SRU and SRW), it can function as a gateway from any and to any of these protocols. However, its principle purpose is as a Z39.50 server that proxies requests through to a backend by acting as an SRU client.

The following command-line options govern how the gateway functions:

- \-c configFile

  Specifies that the named *configFile* should be used to configure the functionality of the gateway: if this option is not specified, then the file `"client.xml"` is used.  The format of the configuration file is described separately in `"Net::Z3950::Simple2ZOOM::Config"`, and a sample configuration file, `"test.xml"`, is supplied in the `"etc"` directory of the distribution.

- \--

  Indicates the end of `"simple2zoom"`-specific options.  This is required if YAZ options are to be specified, so that `"simple2zoom"` doesn't try to interpret them itself.

- *YAZ-options*

  Command-line arguments subsequent to the `"--"` option are interpreted by the YAZ backend server as described at http://www.indexdata.dk/yaz/doc/server.invocation.tkl

  These options provide the means to control many aspects of the gateway's functioning: for example, whether the server forks a new process for each client or runs a single process using `"select()"`; how (if at all) to interpret incoming SRU requests; whether and how to log protocol packets for debugging.

- *listener-address*

  One or more YAZ-style listener addresses may be specified, and the server will accept connections on those addresses: for example, `@:9998`, `"unix:/tmp/somesocket"` or `"ssl:myhost.com:210"`.  If no explicit listener addresses are provided, the server listens on port 9999.

## SEE ALSO

The `"Net::Z3950::Simple2ZOOM"` module.

The `"Net::Z3950::Simple2ZOOM::Config"` manual for the configuration-file format.

The `"Net::Z3950::SimpleServer"` module.

The `"ZOOM"` module (in the `"Net::Z3950::ZOOM"` distribution).

## AUTHOR

Sebastian Hammer \<quinn@miketaylor.org.uk\>

Mike Taylor \<mike@indexdata.com\>

The development of `"simple2zoom"`, and the `"Net::Z3950::Simple2ZOOM"` library that provides its functionality, has been partially sponsored by the National Library of Australia, whose contribution we gratefully acknowledge.

## COPYRIGHT AND LICENCE

Copyright (C) 2007 by Index Data.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.
