proxymngr - proxy manager service
proxymngr [-config filename] [-timeout seconds] [-retries #] [-verbose]
The proxy manager (proxymngr) is responsible for resolving requests
from xfindproxy (and other similar clients), starting new proxies when
appropriate, and keeping track of all of the available proxy services.
The proxy manager strives to reuse existing proxies whenever possible.
There are two types of proxies that the proxy manager deals with, man-
aged and unmanaged proxies.
A managed proxy is a proxy that is started ‘‘on demand’’ by the proxy
An unmanaged proxy, on the other hand, is started either at system boot
time, or manually by a system administrator. The proxy manager is made
aware of its existence, but no attempt is made by the proxy manager to
start unmanaged proxies.
The command line options that can be specified to proxymngr are:
-config Used to override the default proxymngr config file. See below
for more details about the config file.
Sets the number of seconds between attempts made by the proxy
manager to find an unmanaged proxy. The default is 10.
Sets the maximum number of retries made by the proxy manager to
find an an unmanaged proxy. The default is 3.
Causes various debugging and tracing records to be displayed as
requests are received and proxies are started.
Proxy Manager Config File
The proxy manager maintains a local configuration file describing the
proxy services available. This configuration file is installed in
/usr/X11R6/lib/X11/proxymngr/pmconfig during the installation of prox-
ymngr. The location of the configuration file can be overwritten using
the -config command line option.
Aside from lines starting with an exclamation point for comments, each
line of the configuration file describes either an unmanaged or managed
For unmanaged proxies, the format is:
<service-name> unmanaged <proxy-address>
service-name is the name of the unmanaged proxy service, and must not
contain any spaces, for example ‘‘XFWP’’. service-name is case insen-
proxy-address is the network address of the unmanaged proxy. The for-
mat of the address is specific to the service-name. For example, for
the ‘‘XFWP’’ service, the proxy-address might be ‘‘fire-
If there is more than one entry in the config file with the same unman-
aged service-name, the proxy manager will try to use the proxies in the
order presented in the config file.
For managed proxies, the format is:
<service-name> managed <command-to-start-proxy>
service-name is the name of the managed proxy service, and must not
contain any spaces, for example ‘‘LBX’’. service-name is case insensi-
command-to-start-proxy is the command executed by the proxy manager to
start a new instance of the proxy. If command-to-start-proxy contains
spaces, the complete command should be surrounded by single quotes. If
desired, command-to-start-proxy can be used to start a proxy on a
remote machine. The specifics of the remote execution method used to
do this is not specified here.
Here is a sample configuration file:
! proxy manager config file
! Each line has the format:
! <serviceName> managed <startCommand>
! <serviceName> unmanaged <proxyAddress>
lbx managed /usr/X11R6/bin/lbxproxy
! substitute site-specific info
xfwp unmanaged firewall:4444
PROXY MANAGER DETAILS
When the proxy manager gets a request from xfindproxy (or another simi-
lar client), its course of action will depend on the service-name in
For a managed proxy service, the proxy manager will find out if any of
the already running proxies for this service can handle a new request.
If not, the proxy manager will attempt to start up a new instance of
the proxy (using the command-to-start-proxy found in the config file).
If that fails, an error will be returned to the caller.
For an unmanaged proxy service, the proxy manager will look in the con-
fig file to find all unmanaged proxies for this service. If there is
more than one entry in the config file with the same unmanaged service-
name, the proxy manager will try to use the proxies in the order pre-
sented in the config file. If none of the unmanaged proxies can sat-
isfy the request, the proxy manager will timeout for a configurable
amount of time (specified by -timeout or default of 10) and reattempt
to find an unmanaged proxy willing to satisfy the request. The number
of retries can be specified by the -retries argument, or a default of 3
will be used. If the retries fail, the proxy manager has no choice but
to return an error to the caller (since the proxy manager can not start
unmanaged proxy services).
proxy manager listen port should be configurable.
-timeout and -retries is not implemented in proxymngr.
proxymngr does not utilize the ‘‘options’’ and ‘‘host’’ fields in the
proxy management protocol GetProxyAddr request.
xfindproxy (1), xfwp (1), Proxy Management Protocol spec V1.0
Ralph Mor, X Consortium
Man(1) output converted with