Bash Cures Cancer
Learn the UNIX/Linux command line

Home     Man Pages     SpamDefeator


LBXPROXY(1)							  LBXPROXY(1)



NAME
       lbxproxy - Low BandWidth X proxy

SYNOPSIS
       lbxproxy [:] [option]

DESCRIPTION
       Applications  that  would  like to take advantage of the Low Bandwidth
       extension to X (LBX) must  make	their  connections  to	an  lbxproxy.
       These applications need to know nothing about LBX, they simply connect
       to the lbxproxy as if were a regular  server.   The  lbxproxy  accepts
       client connections, multiplexes them over a single connection to the X
       server, and performs various optimizations on the X protocol  to	 make
       it faster over low bandwidth and/or high latency connections.

       With  regard  to	 authentication/authorization, lbxproxy simply passes
       along to the server the credentials presented by the client.  Since  X
       clients	will  connect  to  lbxproxy,  it is important that the user's
       .Xauthority file contain entries with valid keys associated  with  the
       network	ID  of	the  proxy.   lbxproxy does not get involved with how
       these entries are added to the .Xauthority file.	 The user is  respon-
       sible for setting it up.

       The lbxproxy program has various options, all of which are optional.

       If  : is specified, the proxy will use the given display port
       when listening for connections.	The display port is  an	 offset	 from
       port 6000, identical to the way in which regular X display connections
       are specified.  If no port is specified on the  command	line  option,
       lbxproxy	 will  default to port 63.  If the port number that the proxy
       tries to listen on is in use, the proxy will attempt  to	 use  another
       port  number.   If  the	proxy  is not using the Proxy Manager and the
       default port number cannot be used, the port number that is used	 will
       be written to stderr.

       The other command line options that can be specified are:


       -help   Prints a brief help message about the command line options.

       -display dpy
	       Specifies  the  address	of  the	 X  server supporting the LBX
	       extension.  If this option is not specified,  the  display  is
	       obtained by the DISPLAY environment variable.

       -motion count
	       A limited number of pointer motion events are allowed to be in
	       flight between the server and the proxy	at  any	 given	time.
	       The  maximum  number of motion events that can be in flight is
	       set with this option; the default is 8.

       -maxservers number
	       The default behavior of lbxproxy is to manage a single server.
	       However,	 lbxproxy  can	manage	more  than  one	 server.  The
	       default maximum number  of  servers  is	20.   The  number  of
	       servers	can be overridden by setting the environment variable
	       LBXPROXY_MAXSERVERS to  the  desired  number.   The  order  of
	       precedence  from	 highest to lowest: command line, environment
	       variable, default number.

       -[terminate|reset]
	       The default behavior of lbxproxy is  to	continue  running  as
	       usual when it's last client exits.  The -terminate option will
	       cause lbxproxy to exit when the last client exits.  The -reset
	       option  will  cause  lbxproxy  to  reset	 itself when the last
	       client exits.  Resetting causes	lbxproxy  to  clean  up	 it's
	       state and reconnect to the server.

       -reconnect
	       The  default  behavior of lbxproxy is to exit when its connec-
	       tion to the server is  broken.	The  -reconnect	 option	 will
	       cause  lbxproxy	to  just reset instead (see -reset above) and
	       attempt to reconnect to the server.

       -I      Causes all remaining arguments to be ignored.

       -nolbx  Disables all LBX optimizations.

       -nocomp Disables stream compression.

       -nodelta
	       Disables delta request substitutions.

       -notags Disables usage of tags.

       -nogfx  Disables reencoding of graphics requests (not including	image
	       related requests).

       -noimage
	       Disables image compression.

       -nosquish
	       Disables squishing of X events.

       -nointernsc
	       Disables short circuiting of InternAtom requests.

       -noatomsfile
	       Disables	 reading  of the atoms control file.  See the section
	       on "Atom Control" for more details.

       -atomsfile file
	       Overrides the default AtomControl file.	See  the  section  on
	       "Atom Control" for more details.

       -nowinattr
	       Disables	 GetWindowAttributes/GetGeometry  grouping  into  one
	       round trip.

       -nograbcmap
	       Disables colormap grabbing.

       -norgbfile
	       Disables color name to RGB resolution in proxy.

       -rgbfile path
	       Specifies an alternate RGB database for color name to RGB res-
	       olution.

       -tagcachesize
	       Set the size of the proxy's tag cache (in bytes).

       -zlevel level
	       Set  the Zlib compression level (used for stream compression).
	       default is 6
	       1 = worst compression, fastest
	       9 = best compression, slowest

       -compstats
	       Report stream compression  statistics  every  time  the	proxy
	       resets or receives a SIGHUP signal.

       -nozeropad
	       Don't  zero  out	 unused pad bytes in X requests, replies, and
	       events.

       -cheaterrors
	       Allows cheating on X protocol for the sake of improved perfor-
	       mance.	The X protocol guarantees that any replies, events or
	       errors generated by a previous request  will  be	 sent  before
	       those  of a later request.  This puts substantial restrictions
	       on when lbxproxy can short circuit a request.   The  -cheater-
	       rors  option  allows lbxproxy to violate X protocol rules with
	       respect to errors.  Use at your own risk.

       -cheatevents
	       The -cheatevents option allows lbxproxy to violate X  protocol
	       rules  with  respect to events as well as errors.  Use at your
	       own risk.


ATOM CONTROL
       At startup, lbxproxy "pre-interns" a configurable list of atoms.	 This
       allows  lbxproxy to intern a group of atoms in a single round trip and
       immediately store the results in its cache.

       While running, lbxproxy uses heuristics to decide when to delay	send-
       ing  window property data to the server.	 The heuristics depend on the
       size of the data, the name of the property, and whether a window	 man-
       ager is running through the same lbxproxy.

       Atom  control  is  specified  in the "AtomControl" file, set up during
       installation of lbxproxy, with command line overrides.

       The file is a simple text file.	There are three forms of lines:	 com-
       ments,  length  control,	 and name control.  Lines starting with a '!'
       are treated as comments.	 A line of the form

	   z length

       specifies the minimum length in bytes before  property  data  will  be
       delayed.	 A line of the form

	   options atomname

       controls	 the given atom, where options is any combination of the fol-
       lowing characters: 'i' means the atom should be pre-interned; and  'w'
       means  data  for properties with this name should be delayed only if a
       window manager is also running through the same lbxproxy.


BUGS
       When the authorization protocol XDM-AUTHORIZATION-1 is used:

	   A client must be on the same host as lbxproxy for the client to be
	   authorized to connect to the server.

	   If  a  client is not on the same host as lbxproxy, the client will
	   not be authorized to connect to the server.



								  LBXPROXY(1)


UNIX/Linux commands referenced on this page:
  1. as
  2. file
  3. which
  4. display
  5. last
  6. reset
  7. more
  8. size
  9. time
  10. at
  11. host