home *** CD-ROM | disk | FTP | other *** search
/ Enter 1999 April - Disc 1 / enter_04_1999_1.iso / OS2 / XFREE86 / XDOC.ZIP / XFree86 / lib / X11 / doc / X11R6.3.RELNOTES < prev    next >
Encoding:
Text File  |  1996-12-24  |  48.0 KB  |  1,302 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.               X    Window System, Version 11
  11.                   Release 6.3
  12.  
  13.                  Release Notes
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.                X Consortium, Inc.
  23.  
  24.                December 23,    1996
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35. Copyright c 1996 X Consortium
  36.  
  37. Permission is hereby granted, free of charge, to any person obtaining a
  38. copy of    this software and associated documentation files (the
  39. "Software"), to    deal in    the Software without restriction, including
  40. without    limitation the rights to use, copy, modify, merge, publish, dis-
  41. tribute, sublicense, and/or sell copies    of the Software, and to    permit
  42. persons    to whom    the Software is    furnished to do    so, subject to the fol-
  43. lowing conditions:
  44.  
  45. The above copyright notice and this permission notice shall be included
  46. in all copies or substantial portions of the Software.
  47.  
  48. THE SOFTWARE IS    PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,    EXPRESS
  49. OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES    OF MERCHANTABIL-
  50. ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT
  51. SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM,    DAMAGES    OR OTHER LIABIL-
  52. ITY, WHETHER IN    AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  53. OUT OF OR IN CONNECTION    WITH THE SOFTWARE OR THE USE OR    OTHER DEALINGS
  54. IN THE SOFTWARE.
  55.  
  56. Except as contained in this notice, the    name of    the X Consortium shall
  57. not be used in advertising or otherwise    to promote the sale, use or
  58. other dealings in this Software    without    prior written authorization from
  59. the X Consortium.
  60.  
  61. X Window System    is a trademark of X Consortium,    Inc.
  62.  
  63.  
  64.  
  65. 1.  What Is Release 6.3
  66.  
  67.  
  68. This is    the last X Consortium implementation of    the X Window System.  X
  69. is a vendor-neutral, system-architecture neutral network-transparent
  70. window system and user interface standard.  X runs on a    wide range of
  71. computing and graphics machines.  For an overview of X,    see the    X manual
  72. page.
  73.  
  74. R6.3 is    an update to R6.1.  It is compatible with R6 and R6.1 at the
  75. source and protocol levels in all respects, and    binaries are upward-
  76. compatible.
  77.  
  78. What about Release 6.2?     Release 6.2 is    a proper subset    of Release 6.3
  79. produced at the    request    of the OSF Common Desktop Environment program.
  80. It was produced    by the X Consortium and    is being released by OSF simul-
  81. taneously with CDE 2.1.     Release 6.2 contains only the print extension
  82. and the    Xlib implementation of vertical    writing    and user-defined charac-
  83. ter support.
  84.  
  85. The X Consortium was an    independent, not-for-profit membership corpora-
  86. tion formed in 1993 as the successor to    the MIT    X Consortium and dis-
  87. solved at the end of 1996.  Refer to the Consortium man    page for addi-
  88. tional details about the X Consortium.
  89.  
  90. See xc/INSTALL.PS (PostScript) or xc/INSTALL.TXT (plain    text) for
  91. instructions on    how to build and install this software.
  92.  
  93.  
  94. 1.1.  Overview of the X    Consortium Release
  95.  
  96.  
  97. The X Consortium software and documentation in Release 6.3 is in direc-
  98. tory xc/ and contains the following:
  99.  
  100. X Consortium Standards
  101.      The X Consortium produced standards:  documents which define net-
  102.      work protocols, programming interfaces, and other aspects of the X
  103.      environment.  See the XStandards manual page for a    list of    stan-
  104.      dards.
  105.  
  106. Implementations
  107.      For most of our standards,    we provide high-quality    implementations
  108.      to    demonstrate proof of concept and to give early adopters    and ven-
  109.      dors a base to use.  These    are not    reference implementations; the
  110.      written specifications define the standards.
  111.  
  112. Fonts
  113.      A collection of bitmap and    outline    fonts are included in the dis-
  114.      tribution,    contributed by various individuals and companies.
  115.  
  116. Utility    Libraries
  117.      A number of libraries, such as Xmu    and the    Athena Widget Set, are
  118.      included.    These are not standards, but are used in building X Con-
  119.      sortium applications and may be useful in building    other applica-
  120.      tions.
  121.  
  122. Programs
  123.      We    also provide a number of application programs.    A few of these
  124.      programs, such as xdm (or its equivalent),    should be considered
  125.      essential in almost all environments.  The    rest of    the applications
  126.      carry no special status; they are simply programs that have been
  127.      developed and/or maintained by X Consortium staff.     In some cases,
  128.      you will find better substitutes for these    programs contributed by
  129.      others.
  130.  
  131.  
  132. 1.2.  Supported    Systems
  133.  
  134.  
  135. We built and tested this release on the    following systems:
  136.  
  137.  
  138.     AIX 4.2
  139.     Digital    Unix 4.0A
  140.     HP-UX 10.01
  141.     IRIX 6.2
  142.     Solaris    2.5
  143.     UNIX System V/386 Release 4.2 (Novell UnixWare)    Version    2.02
  144.  
  145. We also    built this release on the following and    did some minimal test-
  146. ing:
  147.  
  148.     FreeBSD    2.1.6
  149.     Linux 1.2.13 (Yggdrasil) and 2.0.0 (Slackware 3.1)
  150.     SCO Open Server    5.0
  151.     SunOS 4.1.4
  152.     Windows    NT 4.0
  153.  
  154.  
  155. In all cases except SunOS we have used the vendor's compiler.  On SunOS
  156. we build with gcc.
  157.  
  158.  
  159. 1.2.1.    Supported Display Devices
  160.  
  161.  
  162. This release includes the necessary device-dependent support to    build a
  163. native X server    for the    following platforms:
  164.  
  165.     XFree86: See the XF_* man pages    for supported video cards
  166.  
  167.     AIX: Xibm with Skyway display adapter
  168.     HP-UX: Xhp
  169.     Digital    Unix: Xdec on Alpha AXP    with PMAG-B frame buffer
  170.     SunOS/Solaris: Xsun -- see the Xsun man    page for supported frame buffers
  171.     Ultrix[1] :Xdec
  172.  
  173. In addition to the above, the Xvfb and Xnest servers can be built on
  174. most platforms.
  175.  
  176. Native servers are not built on    IRIX or    Microsoft Windows NT.
  177.  
  178.  
  179. 1.3.  The XC Tree
  180.  
  181.  
  182. The general layout under xc/ is    as follows:
  183.  
  184.  
  185. config/            config files, imake, makedepend, build utilities
  186. doc/            all    documentation other than per-program manual pages
  187. fonts/            BDF, Speedo, Type1 fonts
  188. include/        include files shared by multiple directories
  189. lib/            all    libraries
  190. nls/            national language support files
  191. programs/        all    programs, including the    X server and rgb
  192. util/            patch, compress, other utilities
  193. bug-report        bug    reporting template
  194. registry        X Registry
  195.  
  196.  
  197. This file is xc/RELNOTES.*, in various formats.     The documentation
  198. source files RELNOTES.ms and INSTALL.ms    are in the xc/doc/misc/    direc-
  199. tory.
  200.  
  201.  
  202. 1.4.  X    Registry
  203.  
  204.  
  205. The X Consortium maintained a registry of certain X-related items to aid
  206. in avoiding conflicts and to aid in sharing of such items.
  207.  
  208. The registry is    in the file xc/registry    in the distribution.  The latest
  209. version    may also be available by sending a message to xstuff@x.org.  The
  210. message    can have a subject line    and no body, or    a single-line body and
  211. no subject; in either case the line should look    like this:
  212.  
  213.     send docs registry
  214.  
  215.  
  216.  
  217. 1.5.  Extensions Supported
  218.  
  219.  
  220. The core distribution includes the following extensions:  BIG-REQUESTS,
  221. DOUBLE-BUFFER, LBX, MIT-SHM, MIT-SUNDRY-NONSTANDARD, Multi-Buffering,
  222. RECORD,    SECURITY, SHAPE, SYNC, X3D-PEX,    XC-APPGROUP, XC-MISC, XFree86-
  223. VidModeExtension, XIE, XInputExtension,    XKEYBOARD, XpExtension (print-
  224. ing), XTEST, and XTestExtension1.
  225.  
  226. Not all    of these extensions are    standards; see the XStandards manual
  227. page.  Some of these extensions    are not    supported on all platforms.
  228.  
  229.  
  230. 1.6.  Implementation Parameters
  231.  
  232.  
  233. Some of    the specifications define some behavior    as implementation-
  234. dependent.  Implementations of X Consortium standards need to document
  235. how those parameters are implemented; this section does    so.
  236.  
  237. XFILESEARCHPATH    default
  238.      This default can be set at    build time by setting the imake    vari-
  239.      ables XFileSearchPathDefault, XAppLoadDir,    XFileSearchPathBase, and
  240.      ProjectRoot in site.def.  See xc/config/cf/README for instructions
  241.      and xc/config/cf/X11.tmpl[2] for details of how these configuration
  242.      variables are used.
  243.  
  244.      By    default    ProjectRoot is /usr/X11R6.3 and    XFILESEARCHPATH    has
  245.      these components:
  246.  
  247.          /usr/X11R6.3/lib/X11/%L/%T/%N%C%S
  248.          /usr/X11R6.3/lib/X11/%l/%T/%N%C%S
  249.          /usr/X11R6.3/lib/X11/%T/%N%C%S
  250.          /usr/X11R6.3/lib/X11/%L/%T/%N%S
  251.          /usr/X11R6.3/lib/X11/%l/%T/%N%S
  252.          /usr/X11R6.3/lib/X11/%T/%N%S
  253.  
  254.  
  255. XUSERFILESEARCHPATH default
  256.      If    the environment    variable XAPPLRESDIR is    defined, the default
  257.      value of XUSERFILESEARCHPATH has the following components:
  258.  
  259.          $XAPPLRESDIR/%L/%N%C
  260.          $XAPPLRESDIR/%l/%N%C
  261.          $XAPPLRESDIR/%N%C
  262.          $HOME/%N%C
  263.          $XAPPLRESDIR/%L/%N
  264.          $XAPPLRESDIR/%l/%N
  265.          $XAPPLRESDIR/%N
  266.          $HOME/%N
  267.  
  268.      Otherwise it has these components:
  269.  
  270.          $HOME/%L/%N%C
  271.          $HOME/%l/%N%C
  272.          $HOME/%N%C
  273.          $HOME/%L/%N
  274.          $HOME/%l/%N
  275.          $HOME/%N
  276.  
  277.  
  278. XKEYSYMDB default
  279.      Defaults to /usr/X11R6.3/lib/X11/XKeysymDB, assuming ProjectRoot is
  280.      set to /usr/X11R6.3.
  281.  
  282. XCMSDB default
  283.      Defaults to /usr/X11R6.3/lib/X11/Xcms.txt,    assuming ProjectRoot is
  284.      set to /usr/X11R6.3.
  285.  
  286. XLOCALEDIR default
  287.      Defaults to the directory /usr/X11R6.3/lib/X11/locale, assuming
  288.      ProjectRoot is set    to /usr/X11R6.3.  The XLOCALEDIR variable can
  289.      contain multiple colon-separated pathnames.
  290.  
  291. XErrorDB location
  292.      The Xlib error database file is /usr/X11R6.3/lib/X11/XErrorDB,
  293.      assuming ProjectRoot is set to /usr/X11R6.3.
  294.  
  295. XtErrorDB location
  296.      The Xt error database file    is /usr/X11R6.3/lib/X11/XtErrorDB,
  297.      assuming ProjectRoot is set to /usr/X11R6.3.
  298.  
  299. Supported Locales
  300.      X locales supported are in    locale.dir; the    mapping    between    various
  301.      system locale names and X locale names is in locale.alias.     Both
  302.      files are shipped in the xc/nls/X11/locale/ directory and installed
  303.      in    the XLocaleDir directory (e.g. /usr/X11R6.3/lib/X11/locale/).
  304.  
  305. Input Methods supported
  306.      The core distribution does    not include any    input method servers.
  307.      However, Xlib supplies a default built-in input method that sup-
  308.      ports compose processing in 8-bit locales.     Compose files are pro-
  309.      vided for Latin-1 and Latin-2.  The built-in input    method can sup-
  310.      port other    locales, given suitable    compose    files.    See
  311.      xc/nls/X11/locale/Compose/iso8859-* for the supported compositions.
  312.  
  313. There are input    method servers available on the    net.
  314.  
  315.  
  316.  
  317. 2.  What is Unchanged in Release 6.3
  318.  
  319.  
  320. As this    is an update release, there is a great deal of stability in the
  321. standards, libraries, and clients.  No existing    standards other    than the
  322. ICE library specification have changed in a material way, though several
  323. documents have been updated with editorial improvements.  There    is one
  324. new interface added to the ICE library libICE; see below.  The extension
  325. library, libXext, is updated to    include    the LBX, security, and applica-
  326. tion group extension interfaces.  All previous interfaces in these and
  327. all other libraries are    unchanged.
  328.  
  329.  
  330.  
  331. 3.  What Is New    in Release 6.3
  332.  
  333.  
  334. This section describes changes in the X    Consortium distribution    since
  335. Release    6.1.
  336.  
  337. All libraries, protocols, and servers are compatible with Release 6 and
  338. Release    6.1.  That is, R6 and R6.1 clients and applications will work
  339. with R6.3 libraries and    servers.  Most R6.3 clients will work with R6.1
  340. and R6 libraries except    those that use the new interfaces in libICE,
  341. libXext, and libXp.
  342.  
  343. The major new functionality in R6.3 is support for World Wide Web
  344. integration, protection    of data    from ``untrusted'' client connections, a
  345. bandwidth- and latency-optimized protocol for using X across the Inter-
  346. net, a print protocol following    the Xlib API, and support for vertical
  347. text writing and user-defined characters in the    Xlib implementation.
  348.  
  349.  
  350. 3.1.  OS Support
  351.  
  352.  
  353. The following platforms    have a newer operating system version supported:
  354.  
  355.  
  356. System           R6.1          R6.3
  357.  
  358. AIX           4.1.4          4.2
  359. Digital    Unix   3.2C          4.0A
  360. HP-UX           10.01
  361. IRIX           5.3          6.2
  362. Solaris           2.4          2.5
  363. UnixWare       2.02
  364.  
  365.  
  366. We also    built on the following platforms, however full support is not
  367. guaranteed:
  368.  
  369.  
  370. System           R6.1          R6.3
  371.  
  372. FreeBSD           2.1.0          2.1.6
  373. Linux           1.2.13          2.0
  374. SCO Open Server              5.0
  375. SunOS           4.1.3          4.1.4
  376. Windows    NT     3.5          4.0
  377.  
  378.  
  379.  
  380. 3.2.  New Standards
  381.  
  382.  
  383. The following are new X    Consortium standards in    Release    6.3.  Each is
  384. described in its own section below.
  385.  
  386.     Low Bandwidth X    Extension
  387.     RX: X Remote Execution MIME type
  388.     Security Extension
  389.     Application Group Extension
  390.     Print Extension
  391.     Proxy Management Protocol
  392.  
  393.  
  394.  
  395. 3.3.  Low Bandwidth X Extension
  396.  
  397.  
  398. The Low    Bandwidth X extension (LBX) defines several compression    and
  399. local caching techniques to improve performance    on wide    area networks
  400. and also on slower-speed connections.  These reduce the    amount of proto-
  401. col data transported over the network and reduce the number of client-
  402. to-server roundtrips required for common application startup operations.
  403.  
  404. LBX was    referred to as X.fast in some materials    but we elected to not go
  405. through    the implementation and change all the names.  To avoid any con-
  406. fusion with an external    name different from the    internal name in the
  407. implementation,    we elected to drop the ``X.fast'' moniker.
  408.  
  409. LBX is implemented in two pieces; an X server extension    and a proxy
  410. application.  The X server extension provides the new optimized    proto-
  411. col.  The proxy    application, lbxproxy, translates a normal client X pro-
  412. tocol stream into an LBX stream.  This permits any existing application
  413. to gain    the benefit of the optimized protocol with no changes.    The
  414. proxy is especially useful when    multiple applications are running on the
  415. same local area    network    separated from the X server by a slower    network.
  416. In this    case the full benefit of the local cache is shared by each
  417. application using the same proxy process.
  418.  
  419. The specification for LBX is in    xc/doc/specs/Xext/lbx.mif (FrameMaker
  420. interchange source) and    xc/doc/hardcopy/Xext/lbx.PS.Z (compressed
  421. PostScript).
  422.  
  423.  
  424. 3.4.  RX: X Remote eXecution
  425.  
  426.  
  427. The remote execution (RX) service specifies a MIME format for invoking
  428. applications remotely, for example via a World Wide Web    browser.  This
  429. RX format specifies a syntax for listing network services required by
  430. the application, for example an    X display server.  The requesting Web
  431. browser    must identify specific instances of the    services in the    request
  432. to invoke the application.
  433.  
  434. The distribution contains a helper program (xrx) and a Netscape    Naviga-
  435. tor plug-in (libxrx) that demonstrate this protocol.  The plug-in
  436. requires Navigator 3.0.
  437.  
  438. We have    only been able to test the plug-in on HP-UX, IRIX, Digital Unix,
  439. and Solaris2.  Netscape    Navigator binaries for other platforms are
  440. either not available at    all or were not    available in time to be    included
  441. in the testing for this    release.
  442.  
  443. The specification for the RX mime type is in xc/doc/specs/RX/RX.mif
  444. (FrameMaker interchange    source)    and xc/doc/hardcopy/RX/RX.PS.Z
  445. (compressed PostScript).
  446.  
  447. The following section describes    the procedure to set up    your environment
  448. and try    the examples provided in this distribution.
  449.  
  450.  
  451. 3.4.1.    Preparing Your Web Server
  452.  
  453.  
  454. In order to demonstrate    the RX helper program and the RX Netscape plug-
  455. in you need to have access to an HTTP server to    install    ``common gateway
  456. interface'' (CGI) scripts.  While CGI programs can be written in any
  457. compiled or interpreted    language, the sample CGI programs in the distri-
  458. bution are written in perl.
  459.  
  460. If you don't currently have a web server the NCSA server is a good one
  461. to try.     Binaries for various systems are available at:
  462.  
  463.      http://hoohoo.ncsa.uiuc.edu/docs/setup/PreExec.html
  464.  
  465. If you don't have perl you can get the source code from:
  466.      ftp://prep.ai.mit.edu/pub/gnu/perl-4.036.tar.gz
  467.  
  468. You need to install the    HTML, RX, and CGI sample files into your
  469. server's HTML and CGI directories.  The    process    can be partially
  470. automated by adding the    following definitions to your site.def or
  471. host.def file:
  472.  
  473.  
  474. WebServer      defines the hostname and    port of    your web server, for
  475.            example
  476.  
  477.            #define WebServer www.myorg.org:8001
  478.  
  479. HtmlDir           defines the path    at which HTML and RX documents are
  480.            installed, for example
  481.  
  482.            #define HtmlDir /usr/local/etc/httpd/htdocs
  483.  
  484. CgiBinDir      defines the path    at which CGI programs are installed, for
  485.            example
  486.  
  487.            #define CgiBinDir /usr/local/etc/httpd/cgi-bin
  488.  
  489. ProxyManager   defines the transport scheme, hostname, and port    for CGI
  490.            programs    to contact the Proxy Manager.  See the proxymngr
  491.            man pages for further details.  Typically the proxy
  492.            manager host will be the    same as    your web server, for
  493.            example:
  494.  
  495.            #define ProxyManager tcp/www.myorg.org:6500
  496.  
  497. Then make the Makefiles    and build the directories with the following
  498. command    sequence:
  499.  
  500. cd xc/programs/xrx/htdocs
  501. xmkmf ../../.. programs/xrx/htdocs
  502. make
  503. make install
  504. cd ../cgi-bin
  505. xmkmf ../../.. programs/xrx/cgi-bin
  506. make
  507. make install
  508.  
  509.  
  510. These directories are not automatically    built or installed by the top
  511. level Makefile because they install outside the    ProjectRoot.
  512.  
  513. You also need to configure your    web server so that files with the exten-
  514. sion name ``rx'' are of    the MIME type ``application/x-rx''.  See your
  515. HTTP server's configuration documentation for the right    procedure to do
  516. so.
  517.  
  518.  
  519. 3.4.2.    The RX Helper Program
  520.  
  521.  
  522. The helper program, xrx, may be    used with any Web browser to interpret
  523. the new    RX document type.
  524.  
  525. The RX helper program is installed in <ProjectRoot>/bin    (e.g.
  526. /usr/X11R6.3/bin/).  You will need to configure    your web browser to use
  527. it for RX documents by adding a    line to    your $HOME/.mailcap:
  528.  
  529.      application/x-rx; /X11/bin/xrx %s
  530.  
  531. You may    need to    refer to your web browser's documentation for exact
  532. instructions on    configuring helper applications.
  533.  
  534. The helper program is activated    by your    browser    as soon    as you retrieve
  535. any document of    the MIME type application/x-rx.    All you    need to    do is to
  536. point your browser at the URL:
  537.      http://your.web.server/xload.rx
  538.  
  539. The application    (i.e. xload) should appear on your DISPLAY as a    new
  540. top-level client.  The client will be running on your web server host
  541. and connected to your X    server.     If your X server supports the SECURITY
  542. extension the client will be running as    an untrusted client.
  543.  
  544.  
  545. 3.4.3.    The RX Netscape    Navigator Plug-in
  546.  
  547.  
  548. The Navigator plug-in supports all the functions of xrx    and in addition
  549. uses the new XC-APPGROUP extension, if your X server provides it, to
  550. cause the remotely launched application    to be embedded within the
  551. browser    page from which    it was launched.
  552.  
  553. The HTML page links to an RX document via the EMBED tag, a Netscape
  554. extension to HTML.  The    RX document provides the plug-in with the list
  555. of services the    application wants to use.  Based on this information,
  556. the plug-in sets the various requested services, including creating
  557. authorization keys, and    passes the relevant data to the    application
  558. through    an HTTP    GET request of the associated CGI script.  The Web
  559. server then executes the CGI script to start the application.
  560.  
  561. To be able to use the RX plug-in you need Netscape Navigator 3.0.
  562. Binaries for various systems can be found at:
  563.  
  564.      http://home.netscape.com/comprod/mirror/client_download.html
  565.  
  566. To complete the    installation of    the Netscape plug-in, find the file
  567. named libxrx.so.6.3 or libxrx.sl.6.3 (or similar, depending on your
  568. platform) in <ProjectRoot>/lib (e.g. /usr/X11R6.3/lib) and copy    it to
  569. either /usr/local/lib/netscape/plugins or $HOME/.netscape/plugins. Do
  570. not install the    symlinks libxrx.so or libxrx.sl; they may confuse
  571. Netscape.
  572.  
  573. You should remove or comment out the line you may have previously added
  574. in your    mailcap    file to    use the    RX helper program, otherwise the plug-in
  575. will not be enabled.  (The usual comment character for mailcap is
  576. ``#''.)
  577.  
  578. If you are already running Netscape Navigator, you need    to exit    and res-
  579. tart it    after copying the plug-in library so the new plug-in will be
  580. found.    Once this is done you can check    that Navigator has successfully
  581. loaded the plug-in by checking the ``About Plug-ins'' page from    the Help
  582. menu. This should show something like:
  583.  
  584.  
  585.                    RX Plug-in
  586.  
  587.     File name: /usr/guest/netscape/plugins/libxrx.sl.6.3
  588.  
  589.     X Remote Activation    Plug-in
  590.  
  591.     Mime Type Description       Suffixes  Enabled
  592.     application/x-rx           X Remote Activation Plug-inxrxYes
  593.  
  594.  
  595. The plug-in will be activated by Netscape Navigator as soon as you
  596. retrieve any document of the MIME type application/x-rx.  Several sam-
  597. ples are included in the distribution. The most    basic one is xload. All
  598. you need to do is point    your browser at    the page:
  599.      http://your.web.server/xload.html
  600.  
  601. If something goes wrong    check on the all the previous steps listed above
  602. and try    again.    Once xload is working you can try some of the other
  603. examples in the    distribution such as bitmap.html or dtcm.html.
  604.  
  605.  
  606. 3.4.4.    Trying Embedding With an Old X Server
  607.  
  608.  
  609. The Netscape Navigator plug-in,    libxrx,    will work with an X server that
  610. does not contain the application group or security extensions.    The
  611. application will be started as a separate top-level client.
  612.  
  613. If you wish to try out the embedding facilities    without    replacing your
  614. desktop    X server, you may use the Xnest    server.
  615.  
  616. A typical Xnest    session    would look like    the following:
  617.  
  618. % Xnest    :11
  619. % xterm    -display :11
  620.  
  621.  
  622. These two commands start a ``nested'' server and a terminal emulator
  623. within that server.  Your favorite window manager and Netscape Navigator
  624. can now    be executed from the nested xterm window.  You may wish    to first
  625. disable    access control in the nested server by running ``xhost +'' in
  626. the nested xterm.
  627.  
  628.  
  629. 3.4.5.    Setting    Up Your    Own Applications To Run    Over The Web
  630.  
  631.  
  632. Based on the examples provided in the distribution it should be    easy to
  633. set up your web    server to run your own applications.  Every application
  634. requires 3 additional files to identify    it to Web browsers:
  635.  
  636. myapp.htmlAn HTML page to present the application embedded
  637. myapp.rx  The RX document describing the application
  638. myapp.pl  The CGI script to start the application
  639.  
  640. Note that the separate ``.rx'' file could be omitted by    implementing the
  641. CGI script such    that if    it is invoked without a    QUERY_STRING it    will
  642. return the RX content.    We decided not to do so    in the distributed exam-
  643. ples for purpose of clarity.
  644.  
  645. The xload demo provides    a good starting    point. Simply make a copy of
  646. each of    the files xload.rx, xload.html,    and xload.pl. Then look    inside
  647. them for every instance    of ``xload'' and change    it to whatever is
  648. appropriate for    your application.
  649.  
  650. You will not be    able to    run the    dtcm demo unless you have dtcm (a CDE
  651. component) installed on    your web server    host.  This example shows how a
  652. CGI script would look when an X    Print server is    requested. The script
  653. dtcm.pl    is, for    that reason, slightly more complicated than other exam-
  654. ples.
  655.  
  656.  
  657. 3.5.  Security Extension
  658.  
  659.  
  660. The SECURITY extension contains    new protocol needed to provide enhanced
  661. X server security.  This extension adds    to the X protocol the concepts
  662. of ``trusted'' and ``untrusted'' clients.  The trust status of a client
  663. is determined by the authorization used    at connection setup.  All
  664. clients    using host-based authorization are considered ``trusted''.
  665. Clients    using other authorization protocols may    be either trusted or
  666. untrusted depending on the data    included in the    connection authorization
  667. phase.
  668.  
  669. The requests in    the security extension permit a    trusted    client to create
  670. multiple authorization entries for a single authorization protocol.
  671. Each entry is tagged with the trust status to be associated with any
  672. client presenting that authorization.
  673.  
  674. When a connection identifying an ``untrusted'' client is accepted, the
  675. client is restricted from performing certain operations    that would steal
  676. or modify data that is held by the server for trusted clients.    An
  677. untrusted client performing a disallowed operation will    receive    protocol
  678. errors.     Such a    client may be written to catch these errors and    continue
  679. operation.
  680.  
  681. When a client is untrusted, the    server will also limit the extensions
  682. that are available to the client.  Each    X protocol extension is    respon-
  683. sible for defining what    operations are permitted to untrusted clients;
  684. by default, the    entire extension is hidden.
  685.  
  686. The specification for the SECURITY extension is    in
  687. xc/doc/specs/Xext/security.tex (LaTeX source) and
  688. xc/doc/hardcopy/Xext/security.PS.Z (compressed PostScript).
  689.  
  690.  
  691. 3.5.1.    Untrusted Application Behavior
  692.  
  693.  
  694. Most applications work normally    when run as untrusted clients, but since
  695. the security extension changes the semantics of    certain    parts of the X
  696. protocol, it is    no surprise that some clients behave differently when
  697. untrusted.  We note the    following significant behavior changes,
  698. separated into two categories: changes that we expect could disappear or
  699. mutate if the implementation were improved in a    future release,    and
  700. changes    we expect are permanent, legitimate defenses against data loss
  701. or leakage.
  702.  
  703.  
  704. 3.5.1.1.  Behaviors That Are Implementation-Dependent
  705.  
  706.  
  707. The following behaviors    when running the respective applications as
  708. untrusted are not mandated by the security design but are side effects
  709. of limitations in the current implementation.
  710.  
  711. oclock is square because the SHAPE extension hasn't been marked    secure
  712. yet.  Similarly, Xaw applications that use oval    buttons    will have rec-
  713. tangular buttons instead.
  714.  
  715. Any application    that depends on    an extension other than    XC-MISC, LBX, or
  716. BIG-REQUESTS will have different behavior, as no other extensions are
  717. currently marked secure.  The core clients affected are    xieperf    and all
  718. the xkb    utilities.
  719.  
  720. emacs exits with a Window error    when trying to use the QueryPointer
  721. request    on the root window when    you click in a buffer.
  722.  
  723. FrameMaker, and    xwd -root both exit with a Window error    when trying to
  724. use the    GetWindowAttributes request on a window    manager    frame window.
  725.  
  726. All the    remaining changes are involved in some way with    window proper-
  727. ties.  Some of these behaviors can be modified with changes to the Secu-
  728. rityPolicy file; see the Xserver man page.
  729.  
  730. Several    clients    exit with a Window error when trying to    use the
  731. DeleteProperty request on various properties on    the root window.  These
  732. include    xcmsdb -remove,    xprop -root -remove, and xstdcmap -delete.
  733.  
  734. xprop exits with an Atom error when attempting to access protected pro-
  735. perties.
  736.  
  737. The following two changes require, in addition,    a ``trusted selection
  738. intermediary'' to provide selection transfer from untrusted to trusted
  739. clients    (and vice-versa).  R6.3    does not include such a    trusted
  740. intermediary.
  741.  
  742. xterm exits with an Atom error when it tries to    store the property value
  743. during a selection transfer (paste) to a trusted selection requester.
  744.  
  745. The ``copy 0 to    PRIMARY'' button of xcutsel does not work.
  746.  
  747. Selection transfer from    untrusted clients to trusted clients fails when
  748. the untrusted client attempts to use SendEvent to generate the Selec-
  749. tionNotify event for the requester.  Most requesters will treat    this as
  750. a transfer timeout and continue.  Xt-based applications    will create an
  751. additional Atom    each time such a transfer is attempted.
  752.  
  753.  
  754. 3.5.1.2.  Behaviors That Are Not Likely    To Change
  755.  
  756.  
  757. The following behaviors    represent actions performed by the applications
  758. that are disallowed by design.
  759.  
  760. editres    will fail when pointed at a trusted client when    it tries to read
  761. window properties on a window owned by that client.
  762.  
  763. Xnest exits on startup with an Access error as it tries    to use the
  764. ChangeKeyboardControl request.
  765.  
  766. The new    generate option    to xauth fails because untrusted applications
  767. are not    allowed    to create additional authorizations.
  768.  
  769. xhost cannot be    used to    modify the host    access list.
  770.  
  771. xmag gets an unending stream of    Drawable errors    as it tries to use the
  772. PolyRectangle request on the root window.  If you click    to select a
  773. location to magnify, xmag gets a Drawable error    as it tries to use the
  774. GetImage request on the    root window.  xmag could be modified to    exit
  775. gracefully under these conditions.
  776.  
  777. netscape exits on startup with a Drawable error    when trying to use the
  778. GetImage request on the    root window.
  779.  
  780. xmodmap    exits with an Access error when    trying to use the ChangeKey-
  781. boardMapping request.
  782.  
  783. xset with the b, c, led, or r options exits with an Access error when
  784. trying to use the ChangeKeyboardControl    request.  With the bc option, it
  785. can't find the MIT-SUNDRY-NONSTANDARD extension    and exits gracefully.
  786.  
  787. xsetroot exits with a Window error when    trying to use the ChangeWin-
  788. dowAttributes request on the root window.
  789.  
  790.  
  791. 3.6.  Application Group    Extension
  792.  
  793.  
  794. The application    group extension    (XC-APPGROUP) provides new protocol to
  795. implement Application Groups (``AppGroups'').  The AppGroup facility
  796. allows other clients to    share the SubstructureRedirect mechanism with
  797. the window manager.  This allows another client    called the ``application
  798. group leader'',    such as    a web browser, to intercept a MapRequest made by
  799. a third    application and    reparent its window into the web browser before
  800. the window manager takes control.  The AppGroup    leader may also    limit
  801. the screens and    visuals    available to the applications in the group.
  802.  
  803. Users who have an XC-APPGROUP enhanced X server    and an RX plug-in for
  804. their Netscape Navigator web browser can run programs remotely over the
  805. web and    have the output    appear as part of the presentation in their web
  806. browser.
  807.  
  808. The only way for an application    to become a member of an AppGroup is by
  809. using an authorization generated using the new security    extension.
  810. Whenever an application    connects to the    server,    the authorization that
  811. it used    to connect is tested to    see if it belongs to an    AppGroup. This
  812. means that the Authorization data must be transmitted to the remote host
  813. where the application will be run. In the case of RX, HTTP is used to
  814. send the Authorization.     Sites who have    concerns about sending unen-
  815. crypted    authorization data such    as MIT-MAGIC-COOKIE-1 via HTTP should
  816. configure their    web servers and    web browsers to    use SHTTP or SSL.
  817.  
  818. The specification for the XC-APPGROUP extension    is in
  819. xc/doc/specs/Xext/AppGroup.mif (FrameMaker interchange source) and
  820. xc/doc/hardcopy/Xext/AppGroup.PS.Z (compressed PostScript).
  821.  
  822.  
  823. 3.7.  Print Extension
  824.  
  825.  
  826. The print extension supports output to hardcopy    devices    using the core X
  827. drawing    requests.  The print extension adds requests for job and page
  828. control    and defines how    specific printer attributes are    communicated
  829. between    the server and printing    clients.  Printer attribute specifica-
  830. tions are modeled after    the ISO    10175 specification.
  831.  
  832. An X client that wants to produce hardcopy output will typically open a
  833. second connection to an    X print    server,    produce    a print    job, and then
  834. close the print    server connection.  The    print server may be the    same
  835. process    as the display server (the term    ``video    server'' is sometimes
  836. used) although the implementation provided in R6.3 does    not completely
  837. support    video and print    servers    in the same binary.
  838.  
  839. The specification for the print    extension is in
  840. xc/doc/specs/XPRINT/xp_proto.mif (FrameMaker interchange source) and
  841. xc/doc/hardcopy/XPRINT/xp_proto.PS.Z (compressed PostScript).  The
  842. library    API specification is in    xc/doc/specs/XPRINT/xp_library.mif
  843. (FrameMaker interchange    source)    and
  844. xc/doc/hardcopy/XPRINT/xp_library.PS.Z (compressed PostScript).
  845.  
  846.  
  847. 3.7.1.    Running    an X Print Server
  848.  
  849.  
  850. The print server is simply an X    server with the    print extension    and spe-
  851. cial DDX implementations.  The X Print Server is started like any other
  852. X server.
  853.  
  854. Here is    a sample command line for use with a typical configuration:
  855.  
  856. % Xprt :1 -ac
  857.  
  858.  
  859. The options used in the    example    are:
  860.  
  861. :1      On a host that is running a video display server you will need
  862.       to specify a different display from the default.
  863.  
  864. -ac      Disable access control, since    no simple mechanism for    sharing
  865.       keys is provided.
  866.  
  867. The X print server supports the    following additional options:
  868.  
  869. -XpFile      Points to the    directory containing the print server configura-
  870.       tion files.
  871.  
  872. XPCONFIGDIREnvironment variable    specifying alternative location    of the
  873.       print    server configuration files.
  874.  
  875. The print server, Xprt,    is built only if the config option XprtServer is
  876. YES.  Four printer DDXen are provided, each with a separate config
  877. option to control whether or not it will be included: XpRasterDDX,
  878. XpColorPclDDX, XpMonoPclDDX, XpPostScriptDDX; see xc/config/cf/README.
  879. XprtServer defaults to the value of BuildServer    (i.e. Xprt will    be built
  880. by default on all platforms that build a full X    server).  XpRasterDDX
  881. and XpMonoPclDDX default to NO.     XpColorPclDDX and XpPostScriptDDX
  882. default    to YES.
  883.  
  884. The print server is configured through a directory of configuration
  885. files that define printer model    types and instances of printer models.
  886. An example configuration tree is provided in
  887. xc/programs/Xserver/XpConfig/.    See also xc/doc/specs/Xserver/Xprt.mif
  888. (FrameMaker interchange    source)    and xc/doc/hardcopy/Xserver/Xprt.PS.Z
  889. (compressed PostScript)    for further instructions on configuring    Xprt.
  890.  
  891.  
  892. 3.7.2.    Specifying The Print Server To A Client
  893.  
  894.  
  895. By convention, clients locate the print    server using the environment
  896. variable XPRINTER.  The    syntax of XPRINTER is an augmented DISPLAY; i.e.
  897.  
  898.      printerName@host:display
  899.  
  900. where ``printerName'' is one of    the printer instances listed in    the
  901. print server configuration files.  The use of XPRINTER and its syntax is
  902. an application convention only;    there is nothing in the    supplied
  903. libraries that uses (or    parses)    this environment variable.
  904.  
  905.  
  906. 3.8.  Proxy Management Protocol
  907.  
  908.  
  909. The Proxy Management Protocol is an ICE    based protocol that provides a
  910. way for    application servers to easily locate proxy services such as the
  911. LBX proxy and the X firewall proxy.
  912.  
  913. Typically, a service called a ``proxy manager''    is responsible for
  914. resolving requests for proxy services, starting    new proxies when
  915. appropriate, and keeping track of all of the available proxy services.
  916. The proxy manager strives to reuse existing proxy processes whenever
  917. possible.
  918.  
  919. The Proxy Management Protocol is described in xc/doc/specs/PM/PM_spec.
  920.  
  921.  
  922. 3.9.  Configuration
  923.  
  924.  
  925. As in R6.1, the    top-level Makefile is no longer    over-ridden by the first
  926. build.    Instead    a new file xmakefile is    created.  Thus is it not neces-
  927. sary to    take any additional steps to reset the builds.
  928.  
  929. The file xc/config/cf/README provides more guidance on how to write an
  930. Imakefile, including a list of variables that may be set in an
  931. Imakefile.  This file is strongly recommended reading for Imakefile
  932. authors.
  933.  
  934. The LaTeX text processor is supported as of R6.1.  If you have LaTeX on
  935. your system, turn on HasLatex to have the MakeLatexDoc rule use    it.
  936.  
  937. Also since R6.1, with System V Release 4 (SVR4)    compilers we now use the
  938. -Xa (ANSI C with native    extensions) compiler flag rather than -Xc (limit
  939. environment to that specified in the standard).     This provides access to
  940. the full richness of the platform.  Unfortunately, it also defines the
  941. preprocessor symbol __STDC__ to    0, instead of 1    as specified by    the
  942. standard.  Therefore we    use "#ifdef __STDC__" in our sources rather than
  943. "#if __STDC__".     On HP-UX systems we use the -Ae compiler option instead
  944. of -Aa,    also to    access the full    environment offered by the platform.
  945.  
  946. As in R6.1, the    imake variables    InstallXdmConfig, InstallXinitConfig,
  947. and InstallAppDefFiles suppress    overwriting existing files; if the files
  948. didn't previously exist, the files are always installed.  This interpre-
  949. tation makes bootstrapping a new system    easier than in R6 and earlier
  950. releases.
  951.  
  952. A new configuration build option, GzipFontCompression, has been    added to
  953. use gzip rather    than compress for font compression.  It    defaults to NO.
  954.  
  955. The build creates a new    directory xc/exports into which    the header
  956. files, libraries, and certain build utility binaries are symlinked.
  957. This greatly simplifies    Imakefile construction and supports multiple
  958. development projects (such as X, Motif,    and CDE) on a single system.
  959.  
  960. Imake rules and    template files for building Motif and CDE were contri-
  961. buted by the OSF CDE/Motif project and are included in R6.3.
  962.  
  963.  
  964. 3.10.  Documentation
  965.  
  966.  
  967. Additional X server internals documentation is provided    in the
  968. /xc/doc/specs/Xserver/ directory for the XC-APPGROUP and SECURITY exten-
  969. sions.    An analysis and    rationale for the SECURITY extension will also
  970. be found in that directory.  Specifications for    the other new standards
  971. are in /xc/doc/specs/RX/, /xc/doc/specs/XPRINT/, and
  972. /xc/doc/specs/Xext/.
  973.  
  974.  
  975. 3.11.  Header Files
  976.  
  977.  
  978. xc/include/Xos_r.h is a    new header file    to promote portable source code
  979. using thread-safe implementations of getpwnam, getpwuid, gethostbyname,
  980. gethostbyaddr, and getservbyname.  It is not required by any X Consor-
  981. tium standard.
  982.  
  983.  
  984. 3.12.  X Server
  985.  
  986.  
  987. The security, LBX, printing, and AppGroup extensions are all new.  In
  988. R6.3 only MIT-MAGIC-COOKIE-1 is    supported in the security extension.
  989. Parts of the security policy are configured at run-time    from the file
  990. /usr/X11R6.3/lib/X11/xserver/SecurityPolicy.  Site-defined policy
  991. strings    used by    xfwp and rules for property access by untrusted    clients
  992. are defined there.  See    the Xserver man    page for full details.
  993.  
  994.  
  995. 3.12.1.     New Device Support
  996.  
  997.  
  998. Support    has been added for the Sun TCX frame buffer as a dumb 8-bit
  999. frame buffer on    Solaris    2.5.
  1000.  
  1001. New XFree86 servers based on XFree86 3.2 are included.
  1002.  
  1003.  
  1004. 3.12.2.     Internal Changes
  1005.  
  1006.  
  1007. The security extension provides    new internal resource ID lookup    inter-
  1008. faces that incorporate the access control lookup.  In order to be
  1009. declared secure    and therefore be made available    to untrusted clients,
  1010. other extensions should, at a minimum, be changed to use these inter-
  1011. faces.    Depending on what the extension    does, more may need to be done
  1012. in its implementation before it    can appropriately be labeled ``secure''.
  1013.  
  1014. Refer to the documents xc/doc/specs/Xserver/appgroup.ms    and
  1015. xc/doc/specs/Xserver/secint.tex    for implementation details of the appli-
  1016. cation group and security extensions, respectively.
  1017.  
  1018.  
  1019. 3.13.  ICE Library Addition
  1020.  
  1021.  
  1022. To support proxy managers and firewall proxies using ICE on well-known
  1023. TCP ports, an additional interface has been added to the ICE library.
  1024. This new interface, IceListenForWellKnownConnections, has equivalent
  1025. calling    parameters to IceListenForConnections plus an ICE network id
  1026. parameter.
  1027.  
  1028.  
  1029. 3.14.  Xlib Vertical Writing and User-Defined Characters
  1030.  
  1031.  
  1032. The Xlib output    method implementation has been enhanced    to support the
  1033. XOM value drawing direction XOMOrientation_TTB_RTL.  Vertical writing
  1034. information and    other locale specific information is read from the file
  1035. <XLocaleDir>/%L/XLC_LOCALE where the XLocaleDir    configuration option
  1036. defaults to /usr/X11R6.3/lib/X11/locale.
  1037.  
  1038. The X[mb|wc]TextEscapement functions now return    the text escapement in
  1039. pixels for the vertical    or horizontal direction    depending on the
  1040. XNOrientation XOCValue.
  1041.  
  1042. The X[mb|wc]DrawString functions will now render a character string in
  1043. the vertical or    horizontal direction depending on the XNOrientation
  1044. XOCValue.
  1045.  
  1046. The Xlib NLS database implementation has been enhanced to support
  1047. extended segments used for interchanging non-standard code sets.  Sup-
  1048. port has been added for    control    sequences and encoding names used in
  1049. extended segments and conversion of glyph indexes when interchanging
  1050. data in    extended segments.
  1051.  
  1052.  
  1053. 3.15.  Xt Geometry Management Debugger
  1054.  
  1055.  
  1056. Daniel Dardailler's ``GeoTattler'' code    has been merged    into the Xt
  1057. Intrinsics library implementation.  This is not    a standard.  If    libXt is
  1058. compiled with the XT_GEO_TATTLER symbol    defined    (currently there is no
  1059. build configuration support to do this)    then a ``geoTattler'' resource
  1060. may be specified for any widget    in an application.  If the geoTattler
  1061. resource for a widget instance is True then libXt will generate    debug-
  1062. ging information to stdout when    the widget makes geometry change
  1063. requests.
  1064.  
  1065. For example, if    the resources specify:
  1066.  
  1067. myapp*draw.XmScale.geoTattler: ON
  1068. *XmScrollBar.geoTattler:ON
  1069. *XmRowColumn.exit_button.geoTattler:ON
  1070.  
  1071. then geometry management debugging information will be generated for all
  1072. the XmScale children of    the widget named draw, all the XmScrollBars, and
  1073. the widget named exit_button in    any XmRowColumn.
  1074.  
  1075. 3.16.  New Programs
  1076.  
  1077.  
  1078. There are new core programs lbxproxy, proxymngr, xfindproxy, xfwp, Xprt,
  1079. and xrx.
  1080.  
  1081.  
  1082. lbxproxy    The    lbxproxy program is used to ``translate'' X protocol to
  1083.         LBX    protocol.  It should be    executed on the    same host as the
  1084.         client application or on a host connected to the client host
  1085.         by a fast network.    lbxproxy appears to the    clients    using it
  1086.         as another X server; that is, the clients connect through it
  1087.         using the conventional DISPLAY syntax, specifying the proxy
  1088.         host in place of the server.  lbxproxy can be used stand-
  1089.         alone or in    conjunction with proxymngr and xfindproxy.  See
  1090.         the    lbxproxy man page for further details.
  1091.  
  1092. proxymngr   proxymngr is a process that    runs continuously to control
  1093.         other proxy    applications, such as lbxproxy and xfwp.  It
  1094.         maintains a    list of    active proxy processes and responds to
  1095.         queries from xfindproxy.  See the proxymngr    man pages for
  1096.         further details.
  1097.  
  1098. xfindproxy  xfindproxy is used to locate a running proxy process for a
  1099.         given network service, such    as lbxproxy or xfwp, or    to
  1100.         request that a proxy be started if one is not already run-
  1101.         ning.  xfindproxy communicates with    proxymngr to perform the
  1102.         actual work.
  1103.  
  1104. xfwp        xfwp is the    X firewall application proxy.  It is designed to
  1105.         run    on a network firewall host and relay X protocol    between
  1106.         applications (typically outside the    firewall) and the X
  1107.         server (inside the firewall).  xfwp    appears    to the clients
  1108.         using it as    another    X server; that is, clients connect
  1109.         through it using the conventional DISPLAY syntax.  xfwp will
  1110.         not    do anything useful without proxymngr and xfindproxy or
  1111.         xrx.  See the xfwp man page    for further details.
  1112.  
  1113. Xprt        Xprt is the    print server, built as part of the Xserver build
  1114.         if the XprtServer config option is YES.  The print server
  1115.         supports printing to PostScript and    PCL devices, as    well as
  1116.         raster output to an    xwd format file    (and thence to any
  1117.         printer that xpr supports).     The print extension was
  1118.         designed to    be integrated with the ``video'' server    in a
  1119.         single process but the R6.3    implementation does not    support
  1120.         a combined video and print server.    Details    of configuration
  1121.         for    Xprt are in xc/doc/specs/Xserver/Xprt.mif (FrameMaker
  1122.         interchange    source)    and xc/doc/hardcopy/Xserver/Xprt.PS.Z
  1123.         (compressed    PostScript).
  1124.  
  1125. xrx, libxrx xrx    is the Web browser helper application that interprets
  1126.         documents in the RX    MIME type to remotely launch applica-
  1127.         tions via the Web.    Its companion libxrx is    a plug-in for
  1128.         Netscape Navigator 3.0 that    supports in addition the capa-
  1129.         bility to visually embed the remote    applications in    the
  1130.         associated browser Web page    window.     See the xrx man page
  1131.         for    further    details.
  1132.  
  1133.  
  1134. 3.16.1.     Using The LBX Proxy
  1135.  
  1136.  
  1137. The implementation of lbxproxy provided    here will support an arbitrary
  1138. number of clients connecting to    the same X server.  A separate lbxproxy
  1139. process    is required for    each separate X    server process.     A typical com-
  1140. mand line to invoke lbxproxy is
  1141. lbxproxy :22 -display myhost:0
  1142.  
  1143.  
  1144. This command runs a proxy with the X server ``myhost:0'' as the    target.
  1145. Clients    must connect to    the proxy using    ``proxyhost:22'' as the    DISPLAY.
  1146. The .Xauthority    file for these clients must contain an entry for server
  1147. ``proxyhost:22'' with the same MIT-MAGIC-COOKIE    as ``myhost:0'', or the
  1148. X server must be configured to permit connections from any host    on the
  1149. network.
  1150.  
  1151. Here is    an example showing how to setup    the appropriate    .Xauthority
  1152. entries:
  1153.  
  1154. % lbxproxy :22 -display    myws:0
  1155. % xauth    list
  1156. myws:0    MIT-MAGIC-COOKIE-1  7fd231ccdce2
  1157. myws/unix:0  MIT-MAGIC-COOKIE-1     7fd231ccdce2
  1158. % xauth    -f $HOME/proxyauth add proxyhost:22 .  7fd231ccdce2
  1159. xauth:    creating new authority file /usr/myself/proxyauth
  1160. % xauth    -f $HOME/proxyauth  add    proxyhost/unix:22 .  7fd231ccdce2
  1161. % setenv XAUTHORITY $HOME/proxyauth
  1162.  
  1163.  
  1164. In this    example, the authorization token for display 0 is copied into a
  1165. new file ``proxyauth'' and associated with the LBX proxy server    display
  1166. number (22).  The new authority    file may then be copied    to another host
  1167. and used as the    value of the XAUTHORITY    environment variable.
  1168.  
  1169. The proxymngr daemon is    usually    configured to invoke lbxproxy automati-
  1170. cally when a user or a CGI script runs xfindproxy -name    LBX.
  1171.  
  1172. See the    lbxproxy man page for further details.
  1173.  
  1174.  
  1175. 3.17.  Major Additions to Existing Programs
  1176.  
  1177.  
  1178. The generate option of xauth is    used to    obtain additional authorization
  1179. tokens for client connections.    These authorization tokens may specify
  1180. that the client    using them is to be restricted in the operations that
  1181. may be performed in the    X server.  The authorization tokens may    be
  1182. independently revoked.    Refer to the SECURITY extension    for further
  1183. details    on authorizations.
  1184.  
  1185. The xauth man page gives full details on the new generate command.  Here
  1186. is an example use:
  1187.  
  1188. xauth -f untrusted-auth-file g :0 . timeout 0
  1189. setenv XAUTHORITY untrusted-auth-file
  1190.  
  1191. This will cause    xauth to contact server    ``:0'' to get a    long-lasting
  1192. untrusted cookie which it then stores in untrusted-auth-file.  By set-
  1193. ting XAUTHORITY    to point to untrusted-auth-file, subsequent applications
  1194. run from this shell to server :0 will be untrusted.  The ``g'' is short
  1195. for ``generate'', and the ``.''    is short for ``MIT-MAGIC-COOKIE-1''.  If
  1196. you omit the -f    argument, xauth    will use $XAUTHORITY (or ~/.Xauthority),
  1197. which may not be what you want,    especially if you are creating an
  1198. untrusted auth.     This is because xauth will replace the    trusted    auth in
  1199. ~/.Xauthority (put there by xdm) with the untrusted one, preventing you
  1200. from making any    further    trusted    connections to the server.
  1201.  
  1202. The xterm terminal emulator now    supports the active icon mode that was
  1203. in X version 10    Release    4.  See    the xterm man page for further details.
  1204. There is support in the    xterm source to    build xterm without the    active
  1205. icon mode for those who    may care for some reason to not    provide    it.
  1206.  
  1207.  
  1208. 3.18.  ANSIfication
  1209.  
  1210.  
  1211. As noted previously under "Configuration Files", for pragmatic reasons
  1212. we changed the way we use __STDC__ to test for standard    C compilers.
  1213. R6.1 was officially the    last release that supported traditional    K&R C.
  1214. R6.3 assumes a standard    C compiler and environment.  We    have not inten-
  1215. tionally removed any K&R C support from    old code; most of the release
  1216. will continue to build on older    platforms.
  1217.  
  1218.  
  1219.  
  1220. 4.  Known Bugs
  1221.  
  1222.  
  1223. There are no examples in this release showing how to use the print
  1224. extension.  CDE    2.1 has    several    such applications.
  1225.  
  1226. lbxproxy fails to start    on SCO Open Server.
  1227.  
  1228. x11perf    running    through    lbxproxy will tickle a drawing bug in cfb-based
  1229. X servers that causes some lines and curves to be drawn    to the wrong
  1230. coordinates and    outside    the window boundaries.    Use the    -nogfx option to
  1231. lbxproxy as a workaround on affected servers.
  1232.  
  1233. If proxymngr exits abnormally all managed proxies die.
  1234.  
  1235. Documentation is missing on how    to use the vertical writing and    user-
  1236. defined    character support.
  1237.  
  1238. Documentation is sparse    on how to configure Xprt.
  1239.  
  1240. There are no example fonts in the release with vertical    text escapement
  1241. (``vertical writing fonts'').
  1242.  
  1243.  
  1244.  
  1245. 5.  Filing Bug Reports
  1246.  
  1247.  
  1248. If you find a reproducible bug in software in the xc/ directory, or find
  1249. bugs in    the xc documentation, please send a bug    report to The Open Group
  1250. using the form in the file xc/bug-report and this destination address:
  1251.  
  1252.     xbugs@x.org
  1253.  
  1254.  
  1255. Please try to provide all of the information requested on the form if it
  1256. is applicable; the little extra    time you spend on the report will make
  1257. it much    easier for someone to reproduce, find, and fix the bug.
  1258.  
  1259. Bugs in    the contributed    software that is available on the net are not
  1260. handled    on any official    basis.    Consult    the documentation for the indi-
  1261. vidual software    to see where (if anywhere) to report the bug.  Many
  1262. authors    of contributed software    subscribe to the mailing list "contrib-
  1263. bugs" hosted at    x.org, so this might be    a useful place to report bugs.
  1264. (To subscribe to contrib-bugs yourself,    send email to contrib-bugs-
  1265. request@x.org.)
  1266.  
  1267.  
  1268.  
  1269. 6.  Acknowledgements
  1270.  
  1271.  
  1272. Release    6.3 of X Version 11 was    brought    to you by the X    staff at the X
  1273. Consortium, Inc.:  Donna Converse (emeritus), Jim Fournier, Stephen Gil-
  1274. dea (emeritus),    Kaleb Keithley,    Matt Landau (emeritus),    Arnaud Le Hors,
  1275. Ralph Mor (emeritus), Bob Scheifler, Ralph Swick, Ray Tice, Mark Welch
  1276. (emeritus), and    Dave Wiggins (emeritus).  Kevin    Samborn    and George Tsang
  1277. (emeritus) of the CDE staff at X Consortium, Inc. worked hard on the
  1278. print extension, including the PostScript driver; David    Kaelbling of the
  1279. CDE staff converged the    X, Motif, and CDE imake/config support and
  1280. helped with Xos_r.h; and Daniel    Dardailler (emeritus) of the CDE staff
  1281. contributed the    libXt geometry tracing code.  Also, contractors    Reed
  1282. Augliere, Roger    Helmendach (Liberty Systems), and Ann Pichey each worked
  1283. on critical components.
  1284.  
  1285. Several    companies and individuals have cooperated and worked extremely
  1286. hard to    make this release a reality, and our thanks go out to them.  You
  1287. will find many of them listed in the acknowledgements in the individual
  1288. specifications.
  1289.  
  1290. Ken Raeburn of XFree86 and Cygnus Support contributed the gzip font
  1291. compression support.
  1292.  
  1293. The Common Desktop Environment sponsors    Digital    Equipment Corp,    Fujitsu,
  1294. Hewlett-Packard, Hitachi, IBM, Novell, and SunSoft jointly contributed
  1295. the print extension and    the Xlib vertical writing and user-defined char-
  1296. acter support.    Axel Deininger,    Harry Phinney, Tom Gilg, Charles Prince,
  1297. and Jim    Miller all from    Hewlett-Packard    did the    print extension    and PCL
  1298. and raster drivers.  Fujitsu did the Xlib vertical writing and user-
  1299. defined    character support.
  1300.  
  1301.  
  1302.