proxymngr



PROXYMNGR(1)                                                      PROXYMNGR(1)




NAME

       proxymngr - proxy manager service


SYNOPSIS

       proxymngr [-config filename] [-timeout seconds] [-retries #] [-verbose]


DESCRIPTION

       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
       manager.

       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.


       -timeout
               Sets the number of seconds between attempts made by  the  proxy
               manager to find an unmanaged proxy.  The default is 10.


       -retries
               Sets the maximum number of retries made by the proxy manager to
               find an an unmanaged proxy.  The default is 3.


       -verbose
               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
       proxy service.

       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-
       sitive.

       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-
       wall.x.org:100’’.

       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-
       tive.

       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.



EXAMPLE

       Here is a sample configuration file:


              ! proxy manager config file
              !
              ! Each line has the format:
              !    <serviceName> managed <startCommand>
              !        or
              !    <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
       question.

       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).



BUGS

       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.


SEE ALSO

       xfindproxy (1), xfwp (1), Proxy Management Protocol spec V1.0


AUTHOR

       Ralph Mor, X Consortium



                                                                  PROXYMNGR(1)

Man(1) output converted with man2html