Release Notes for XFree86[tm] 3.3.2 + patch 3 The XFree86 Project, Inc 15 July 1998 Abstract This document describes the bugs fixed and the features added in XFree86 3.3.2 compared with the 3.3.1 release, It also includes installation instructions for the binary distributions. This version has been updated to include information about the first three public patches for XFree86 3.3.2. It is strongly recommended that anyone using XFree86 update to version 3.3.2 + patch 3. 1. XFree86 and X11R6.3 XFree86 releases starting with the 3.2A beta are based on the X Consortium's X11R6.3 (the final release from the X Consortium). R6.3 is an update to R6.1, and is intended to be compatible with R6.1 and R6 at the source and protocol levels. Binaries should be upward-compatible. X11R6.3 includes some new Xserver extensions: SECURITY, XC-APPGROUP, XpExtension (print extension), and an updated, and standardised version of LBX. X11R6.3 also has new standards, including RX (X Remote Execution MIME type), and a proxy manage- ment protocol. X11R6.3 includes support for gzipped fonts. R6.1 is an update to R6, and is intended to be compatible with R6 at the source and protocol levels. Binaries should be upward-compatible. X11R6.1 includes some new Xserver extensions: DOUBLE-BUFFER, XKEYBOARD and RECORD. What about R6.2? X11R6.2 is the name given to a subset of X11R6.3, which has only the print extension and the Xlib implementation of vertical writing and user-defined character support in addition to those features included in R6.1. 2. OS issues Always check the OS specific README files for special requirements or caveats. Users running Linux should note that Elf is now the only binary type supported for Linux OSs. This means that binaries for ix86/a.out and AXP/ECOFF are not available with this release. 3. What's new in 3.3.2 patch 3? 3.3.2 patch 3 (aka 3.3.2.3) fixes some additional security problems in both the Release Notes for XFree86[tm] 3.3.2 + patch 3 1 Release Notes for XFree86[tm] 3.3.2 + patch 3 2 server and the libraries. It fixes two small xterm problems as well. The prob- lem with shared IRQ in the Riva128 driver has been solved. 4. What's new in 3.3.2 patch 2? 3.3.2 patch 2 (aka 3.3.2.2) fixes some security bugs, a denial of service prob- lem with xdm, a few gcc 2.8.x-related build problems and updates scanpci. The security bugs fixed are buffer overruns in the X11, Xt, Xaw and Xmu libraries. This affects xterm and any other setuid-root program that uses these libraries. 5. What's new in 3.3.2 patch 1? 3.3.2 patch 1 (aka 3.3.2.1) fixes some security bugs, and some bugs in xterm. The security bugs fixed are buffer overruns in xterm related to the input- Method, preeditType, and *Keymap resources, and buffer overruns in the Xaw library related to the inputMethod and preeditType resources. The xterm prob- lem represents a security vulnerability for any platform where xterm is installed setuid-root (as is the case for all XFree86 platforms). The Xaw problem represents a security vulnerability for any setuid-root program that uses the Xaw library (including xterm). The other xterm bugs fixed are: o Incorrect utmp handling is fixed. The 3.3.2 version of xterm wasn't cor- rectly removing utmp entries when it exits. o Mishandling of the -vb command line option is fixed. o A problem that could lead to an invisible cursor has been fixed. 6. What's new in 3.3.2? 6.1 Security fixes o Several buffer overrun problem discovered since the release of XFree86-3.3.1 have been fixed o Several insecure X server command line options have been removed o The X servers now run the xkbcomp program under the user's real uid o Additionally, a wrapper program for the X servers has been added which eliminated the need for the servers to be installed SUID root 6.2 Bug fixes o A black screen problem in the Tseng driver has been fixed. Release Notes for XFree86[tm] 3.3.2 + patch 3 3 o Several drawing problems in the Tseng driver have been corrected. o Timeouts to all routines waiting for the accelerator have been added. o DPMS has been fixed in the Tseng driver. o The memory clock for the Matrox Millennium II is now set correctly. o Several drawing bugs in the MGA driver have been fixed. o The problem with some Millennium II cards in higher resolutions and 24bpp is fixed. o Some problems with 24 and 32bpp in the Trident driver have been fixed. o Some problems in the C&T driver with the TMED DSTN dithering scheme for the 65555 and 68554 have been fixed. o The C&T driver now adheres much more strictly to the clock limits. o Allow DacSpeed command to work correctly in more servers. o Several small bugs for Cirrus Laguna chipsets have been fixed. o Fixes to the Wacom driver. o The Cyrillic fonts have been updated. o BSDI is supported again. o Several XAA problems have been fixed. o XKB for PC98 has been updated. o S3 Aurora64V+ now works with 16bpp. o cursor offset for some S3 cards has been fixed. o S3 server support for STG 1700 ramdac has been fixed. o imake correctly works on Linux glibc-2 systems now. 6.3 New Features o Support for ET6100 has been added to the Tseng driver. o Acceleration has been added for W32 and W32i. o Text performance has been improved for the Tseng driver. o Support for new RAMDACs, including the ch8398, the ch8391 and the MUSIC MU9C4910 has been added to the Tseng driver. Release Notes for XFree86[tm] 3.3.2 + patch 3 4 o Accelerated support for the AT3D and AT25 has been added to the APM driver. o Support for accelerated NV1 and accelerated Riva128 has been added to the NV driver. o Support for the Matrox Millennium II AGP has been included into the MGA driver. o New support for several Trident chips has been added, including Cyber9397, 3DImage975 and 3DImage985 (unaccelerated and not completed, yet), TGUI9685. o CrealTV support has been added for the TGUI9685. o Acceleration of all TGUI chipsets has been improved. o Support for Rage Pro based PCI and AGP cards has been added. o Maximum dotclock for newer Mach64 cards has been increased. o Support for 1600x1200 and 1600x1280 mode has been added for VT and newer Mach64 chips. o Support for the auxiliary register aperture for newer Mach64 cards has been added. o Support for the I128 Revolution (T2R) has been added. o Additional acceleration for the I128 server has been added. o Support for sw cursor, pci_retry, 24bpp HW cursor has been added to cirrus Laguna chipsets. o S3 ViRGE/MX and ViRGE/GX2 support has been added (SVGA server only!). o support for S3 ViRGE hardware cursor added in SVGA server. o An S3 driver has been added to the SVGA server. o S3 server and SVGA/S3 server now recognize some fake S3 chips and print out a warning message. o XAA has been extended to support hardware cursors and provide accelerated support dashed lines and trapezoid fills. o Several new mouse protocols have been added to all servers. They should now support Kensington ThinkingMouse, ALPS GlidePoint, Genius NetScroll, Genius NetMouse, Genius NetMouse, ASCII MieMouse, Logitech MouseMan+, Log- itech FirstMouse+. This includes all buttons on these mice as well as the wheels. The wheel can be used to either create additional buttons or for z-axis indication. Release Notes for XFree86[tm] 3.3.2 + patch 3 5 o login.conf/setusercontext support to xdm for FreeBSD has been added. o XF86Setup now supports setting the default color depth and choosing the modes the user wants to use. o XF86Setup allows to select all the new mouse protocols (depending on the OS it is running on). o Japanization of XF86Setup has been added. o XF98_MGA server for Millennium and Mystique has been added. This server is very new and has some problems with Mystique support. o XF98_SVGA server for CLGD755x has been added. This server also is very new and has some problems. o Linux/98 support has been added. Linux/98 is very new and perhaps the servers also have some problems. o XF98_TGUI server now works on PANIX98. o XF98Setup(i.e. XF86Setup for PC98) has been added. o Many changes to xterm including support for double-size characters (posi- tioning), blinking characters (render in color), improvements to logging, transparent printing, delete/backspace toggle, and better support for Sun and PC keyboards. 6.4 Known Problems o There are problems with some Cirrus laptop chipsets (75xx). The driver seems to work for some people, but not others. Until someone with the appropriate hardware can look into this, these problems are unlikely to be fixed. If you wish to work on this, please contact us. We don't need testers, we need people willing and able to fix the problems. o There are problems with some of the Trident laptop chipsets. The driver seems to work in a limited way for some people, but not others. Until someone with the appropriate hardware can look into this, these problems are unlikely to be fixed. If you wish to work on this, please contact us. We don't need testers, we need people willing and able to fix the prob- lems. 7. Installing the XFree86 3.3.2 Release The XFree86 3.3.2 binaries are distributed as a full release. NOTE: the X servers are no longer installed setuid root. If you are starting your X servers with startx/xinit, or something similar, you will need a copy of the setuid Xwrapper, and an updated xinit. These can be found in X3323bin.tgz. What follows is a list of the XFree86 3.3.2 components. There may be some variations in this for some OSs. Release Notes for XFree86[tm] 3.3.2 + patch 3 6 The following are required for all new installations: preinst.sh Pre-installation script postinst.sh Post-installation script extract XFree86 extraction utility X3323bin.tgz Clients, run-time libs, and app-defaults files X332doc.tgz Documentation X332fnts.tgz 75dpi, misc and PEX fonts X3323lib.tgz Data files required at run-time X332man.tgz Manual pages X332set.tgz XF86Setup utility X3323VG16.tgz 16 colour VGA server (XF86Setup needs this server) X3323upd.tgz XFree86 3.3.2 patch 3 update X332cfg.tgz sample config files for xinit, xdm NOTE: Be very careful about installing X332cfg.tgz over an existing installa- tion if you have customised your xinit and/or xdm config files. Installing X332cfg.tgz will overwrite any existing files. If you do have customised files, there is no need to install X332cfg.tgz. NOTE: The bitmap fonts distributed with this release are compressed using gzip rather than compress. This means that you will probably want to remove the old versions (after backing them up). The Xservers and font server in releases prior to 3.2A cannot read gzipped fonts, so keep a copy of the old fonts if you wish to run older servers. The following X servers are for PC/AT based hardware (i.e., typical Intel ix86 based PCs). Choose at least one which matches your hardware, as well as the VGA16 server. The VGA16 server is required by the new configuration utility (XF86Setup). X33238514.tgz 8514/A server X3323AGX.tgz AGX server X3323I128.tgz I128 server X3323Ma32.tgz Mach 32 server X3323Ma64.tgz Mach 64 server X3323Ma8.tgz Mach 8 server X3323Mono.tgz Mono server X3323P9K.tgz P9000 server X3323S3.tgz S3 server X3323S3V.tgz old S3 ViRGE server (please use SVGA server) X3323SVGA.tgz SVGA server X3323VG16.tgz 16 colour VGA server (XF86Setup needs this server) X3323W32.tgz ET4000/W32, ET6000 server The following X servers are available for Alpha hardware: Release Notes for XFree86[tm] 3.3.2 + patch 3 7 X3323Ma64.tgz Mach 64 server X3323Mono.tgz Mono server (generic driver only) X3323P9K.tgz P9000 server X3323TGA.tgz DEC 21030 (TGA) server X3323S3.tgz S3 server X3323S3V.tgz old S3 ViRGE server (please use SVGA server) X3323SVGA.tgz SVGA server (Matrox Millennium driver only) The following X servers are for PC98 hardware. If you have a PC98 machine, choose one which suits your hardware. If you don't know what a PC98 machine is, you don't need any of these. X33239NS3.tgz PC98 NEC(S3) server X33239SPW.tgz PC98 PCSKB-PowerWindow(S3) server X33239LPW.tgz PC98 PowerWindowLB(S3) server X33239EGC.tgz PC98 EGC(generic) server X33239GA9.tgz PC98 GA-968V4/PCI(S3 968) server X33239GAN.tgz PC98 GANB-WAP(cirrus) server X33239480.tgz PC98 PEGC-480(generic) server X33239NKV.tgz PC98 NKV-NEC(cirrus) server X33239WS.tgz PC98 WABS(cirrus) server X33239WEP.tgz PC98 WAB-EP(cirrus) server X33239WSN.tgz PC98 WSN-A2F(cirrus) server X33239TGU.tgz PC98 TGUI server X33239MGA.tgz PC98 MGA server X33239SVG.tgz PC98 CLGD755x server X33239set.tgz PC98 XF98Setup utility The following are optional. X332f100.tgz 100dpi fonts X332fcyr.tgz Cyrillic fonts X332fnon.tgz Other fonts (Chinese, Japanese, Korean, Hebrew) X332fscl.tgz Scalable fonts (Speedo and Type1) X332fsrv.tgz Font server and config files X3323prog.tgz X header files, config files and compile-time libs X3323nest.tgz Nested X server X3323vfb.tgz Virtual framebuffer X server X3323prt.tgz X Print server X332ps.tgz PostScript version of the documentation X332html.tgz HTML version of the documentation X332jdoc.tgz Documentation in Japanese (for version 3.2) X332jhtm.tgz HTML version of the documentation in Japanese (3.2) X3323lkit.tgz X server LinkKit X3323lk98.tgz X server LinkKit for PC98 servers If you already have a version of XFree86 installed, MAKE A BACKUP OF /usr/X11R6 Release Notes for XFree86[tm] 3.3.2 + patch 3 8 BEFORE DOING ANYTHING ELSE. The standard installation procedure will overwrite your existing version of XFree86. If you are installing from scratch, create a directory called /usr/X11R6, then extract the required .tgz files. If you don't have enough space in /usr for this, create a directory elsewhere and create a symbolic link to it. E.g., if you create a directory in /home: mkdir /home/X11R6 ln -s /home/X11R6 /usr The next step is to run the pre-installation script. This script makes some preliminary checks of your system. For some OSs, it may tell you to install new versions of some system components before proceeding with the installation. This script may also remove some outdated files and symbolic links from a pre- vious installation that could cause problems. For the purposes of these installation instructions, it is assumed that you have downloaded all the files to the /var/tmp directory. If you've put them in another directory, that's fine -- just replace all occurrences of ``/var/tmp'' with the name of that directory. To run the pre-installation script, go to /usr/X11R6 and run it: cd /usr/X11R6 sh /var/tmp/preinst.sh The next step is to make the installation utility executable. To do this, make sure the `extract' file is in the same directory as all the X332*.tgz files, and run the following from that directory: chmod 755 extract The installation utility ``extract'' is used to unpack the .tgz files that make up the XFree86 distribution. The .tgz files are gzipped tar files. However, ``tar'' in its standard form on most OSs is not well-suited to the task of installing XFree86. The extract utility is a modified version of GNU tar 1.12 built with the options required to make it suitable for installing XFree86. The source for extract is available from the same place you got the XFree86 distribution. It is strongly recommended that you use the provided extract utility to unpack the XFree86 distribution. If you choose to ignore this and use something else, we don't want to hear from you if you run into problems. It is also important that you do not rename the extract utility. If renamed, it behaves just like the normal GNU tar. To extract the XFree86 binaries, run the following as root: cd /usr/X11R6 /var/tmp/extract /var/tmp/X332[a-z]*.tgz /var/tmp/extract /var/tmp/X3323[8-z]*.tgz Once the required .tgz files have been extracted, run the post installation Release Notes for XFree86[tm] 3.3.2 + patch 3 9 script: cd /usr/X11R6 sh /var/tmp/postinst.sh For OSs which use ldconfig, you may need to run ldconfig or reboot to complete the installation. The postinst.sh script should run ldconfig correctly for you if you are using Linux, FreeBSD, NetBSD or OpenBSD. For other OSs that use ldconfig, check how it normally gets run at boot time. 8. Updating XFree86 3.3.2 to XFree86 3.3.2 patch 3 The following is required to update an XFree86 3.3.2 installation to XFree86 3.3.2 patch 3: extract XFree86 extraction utility X3323upd.tgz XFree86 3.3.2 patch 3 update X3323{SERVER}.tgz Patch 3 Server update from Servers/PC98_Servers directory You must select the appropriate SERVER file for the server that you are currently running (i.e. X3323S3.tgz). First make the extract utility executable by running: chmod 755 extract To update your installation to 3.3.2 patch 3, run the following as root: cd /usr/X11R6 /var/tmp/extract /var/tmp/X3323upd.tgz /var/tmp/extract /var/tmp/X3323{SERVER}.tgz NOTE: X3323upd.tgz supersedes the previous update (X3322upd.tgz), so there is no need to have installed X3322upd.tgz before installing X3323upd.tgz. Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/RELNOTE.sgml,v 3.59.2.44 1998/08/31 03:18:16 dawes Exp $ Release Notes for XFree86[tm] 3.3.2 + patch 3 10 CONTENTS 1. XFree86 and X11R6.3 ...................................................... 1 2. OS issues ................................................................ 1 3. What's new in 3.3.2 patch 3? ............................................. 1 4. What's new in 3.3.2 patch 2? ............................................. 2 5. What's new in 3.3.2 patch 1? ............................................. 2 6. What's new in 3.3.2? ..................................................... 2 6.1 Security fixes ....................................................... 2 6.2 Bug fixes ............................................................ 2 6.3 New Features ......................................................... 3 6.4 Known Problems ....................................................... 5 7. Installing the XFree86 3.3.2 Release ..................................... 5 8. Updating XFree86 3.3.2 to XFree86 3.3.2 patch 3 .......................... 9 i $XFree86: xc/programs/Xserver/hw/xfree86/doc/RELNOTES,v 3.52.2.25 1998/08/31 03:19:27 dawes Exp $