 |
Index for Section 1X |
|
 |
Alphabetical listing for L |
|
 |
Bottom of page |
|
lbxproxy(1X)
NAME
lbxproxy - Low BandWidth X proxy
SYNOPSIS
lbxproxy [:<display_port>] [option]
OPTIONS
The lbxproxy program accepts the following options:
-help
Prints a brief help message about the command line options.
-display
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.
<display_port>
If <display_port> argument is specified, the proxy uses 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 defaults to port 63. If the port that the proxy tries
to listen on is in use, the proxy exits with an error message.
-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.
-[terminate|reset]
The default behavior of lbxproxy is to continue running as usual when
the last client exits. The -terminate option causes lbxproxy to exit
when the last client exits. The -reset option causes 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 connection to the
server is broken. The -reconnect option causes lbxproxy to reset 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 InternAtom requests.
-noatomsfile
Disables reading 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 resolution.
-tagcachesize
Set the size of the proxy tag cache (in bytes).
-zlevel level
Set the Zlib compression level (used for stream compression). Default
is 9; 1 = worst compression, fastest and 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 performance. 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 -cheaterrors 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.
-pn The -pn option permits lbxproxy to continue running if it fails to
establish all of its well-known sockets but establishes at least one.
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 it 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 or high latency connections.
With regard to authentication and authorization, lbxproxy simply passes
along to the server the credentials presented by the client. Since X
clients 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. The lbxproxy does not get involved with how these entries are added
to the .Xauthority file. The user is responsible for setting it up.
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 sending
window property data to the server. The heuristics depend on the size of
the data, the name of the property, and whether a window manager 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: comments,
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
following characters: 'i' means the atom should be pre-interned; 'n' means
data for properties with this name should never be delayed and 'w' means
data for properties with this name should be delayed only if a window
manager is also running through the same lbxproxy.
USING LBX
· On systems without DECnet, you must start the lbxproxy utility with
the -pn option.
· The X server does not use node-based access control (xhost +host_name)
for LBX clients.
· XDM-AUTHORIZATION-1 authorization works for LBX clients only if the
client is running on the same system as the lbxproxy that it is using
and if the client specifies a network connection to lbxproxy (-display
host_name:1) instead of a local connection (-display :1).
You can use the following methods to authorize an LBX client to display on
an X server:
· Use MIT-MAGIC-COOKIE-1 authorization by including the MIT-MAGIC-
COOKIE-1 entries in the LBX client's XAUTHORITY file.
· Use XDM-AUTHORIZATION-1 authorization and run a separate lbxproxy on
each client system that is used by the clients on that system. Also,
set the clients' display specifications to use a network connection to
lbxproxy process (host_name:1).
· Disable access control in the X server by starting the X server with
the -ac options or by using the xhost + command. These methods are
insecure and are not recommended.
If you use the MIT-MAGIC-COOKIE-1 or XDM-AUTHORIZATION-1 authorization
methods with an LBX client, the client's XAUTHORITY file entries must
specify the display name for the lbxproxy utility and the authorization key
for the target X server.
EXAMPLES
The following are some examples of using LBX. In these examples, server is
the system running the X server, client1 is one system running LBX
clients, and client2 is a second system running LBX clients.
· If the following command is executed on client1, the lbxproxy listens
for connections on client1:1 and displays information on server:0.
# lbxproxy -pn -display server:0 :1
LBX clients running on client1 that are not using XDM-AUTHORIZATION-1
authorization should set their display to :1. For example:
# xterm -display :1
LBX clients running on client1 that are using XDM-AUTHORIZATION-1
authorization should set their display to client1:1. For example:
# xterm -display client1:1
All LBX clients on client2, regardless of whether they are using XDM-
AUTHORIZATION-1 authorization, should set their display to client1:1.
· To use the MIT-MAGIC-COOKIE-1 or XDM-AUTHORIZATION-1 authorization
mechanisms, set up your XAUTHORITY files as follows:
-- The X server's XAUTHORITY file:
server:0 MIT-MAGIC-COOKIE-1 0123456789abcdef0123456789abcdef
server/unix:0 MIT-MAGIC-COOKIE-1 0123456789abcdef0123456789abcdef
-- The XAUTHORITY file for lbxproxy:
server:0 MIT-MAGIC-COOKIE-1 0123456789abcdef0123456789abcdef
server/unix:0 MIT-MAGIC-COOKIE-1 0123456789abcdef0123456789abcde
-- The LBX clients' XAUTHORITY files (on both client1 and client2):
client1:1 MIT-MAGIC-COOKIE-1 0123456789abcdef0123456789abcdef
client1/unix:1 MIT-MAGIC-COOKIE-1 0123456789abcdef0123456789abcdef
SEE ALSO
Xdec(1)
 |
Index for Section 1X |
|
 |
Alphabetical listing for L |
|
 |
Top of page |
|