Release Notes for XFree86[tm] 4.4.0
: Summary of new features in 4.4.0.
Previous: Introduction to the 4.x Release Series
Next: Drivers
2. Summary of new features in 4.4.0.
This is a sampling of the new features in XFree86 4.4.0. A more
complete list of changes can be found in the CHANGELOG that is part of
the XFree86 source tree. It can also be viewed online at our CVSweb server.
2.1. Security Updates
The following security issues have been fixed in this release:
- Fixes for potential integer overflows in font libraries.
(CAN-2003-0730)
- Better pseudo-random number generation for XDM session cookies.
(CAN-2003-0692)
- Check for failure of the pam_setcred() function in xdm session initialization. (CAN-2003-0690)
- Font file buffer overlows. (CAN-2004-0083, CAN-2004-0084 and
CAN-2004-0106)
2.2. Video Driver Enhancements
- Several stability issues with the support for the Intel 830M,
845G, 852GM, 855GM and 865G integrated graphics chipsets have been
fixed. Some limitations related to the driver's use of the video
BIOS remain, especially for some laptops.
- The nv driver for NVIDIA cards has been updated as follows:
- Support added to the nv driver for the GeForce FX 5700,
which didn't work with XFree86 4.3.
- The driver now does a much better job of auto-detecting
which connector of dual output cards the monitor is
attached to, and this should reduce or eliminate the
need for manual XF86Config overrides.
- The 2D acceleration for TNT and GeForce has been completely
rewritten and its performance should be substantially
improved.
- TNT and GeForce cards have a new Xv PutImage adaptor which
does scaled YUV bit blits.
- The SiS driver has seen major updates, including:
- Support for 661/741/760 and support for 330 (Xabre).
- Merged Framebuffer mode.
- Support for DVI, and much more.
- DRI for 300 series (300/305, 540, 630, 730) is supported
again.
- A new driver for several VIA integrated graphics chipsets has been added.
- Various updates and bug fixes have been made to most other drivers.
2.3. Input Driver Enhancements
- The mouse driver has some support on Linux and FreeBSD for
auto-detecting which device node to use. This makes it unnecessary
to supply this information in the XF86Config file in most cases.
2.4. IPv6 support
XFree86 4.4 supports IPv6, based on the code contributed by Sun
Microsystems, Inc. to X.Org. See X.org's document for a detailed list
of what these changes are and how your system is affected by them.
2.4.1. Protocol names and aliases.
- tcp is an alias for both IPv6 and IPv4 transports.
- inet specifies IPv4 only.
- inet6 specifies IPv6 only.
You can force the X server to only listen to IPv4 connections with the
X -nolisten inet6
command or you can force a IPv6 connection
by setting DISPLAY to inet6/host:0
.
2.4.2. XDM
The IPv6 XDMCP code is not enabled by default on platforms that don't
support binding a IPv6 socket to a IPv4 address.
The XDM-AUTHORIZATION-1 authentication scheme does not support IPv6
addresses but a new release of the protocol, XDM-AUTHORIZATION-2 has
been designed; this though is yet to be implemented. By default XFree86
builds do not enable the XDM-AUTHORIZATION-1 code.
2.5. X Server and Extension Updates
- The Mesa version used for OpenGL® 1.3 and DRI driver support
has been updated to 5.0.2.
2.6. Client and Library Updates
2.6.1. Xterm
The user-visible changes to xterm since XFree86 4.3 are:
Bug Fixes:
- Make signalInhibit resource work, i.e., disable the menu
entries that would send signals to, or exit xterm.
- Make cursor definition in tek4014 emulation work as originally
implemented.
- Modify translations for scrollbar so that one can use
shifted pageup, wheel mouse, etc., while the mouse
pointer is over the scrollbar.
- Correct initialization of G1 character set mapping.
New Features:
- Modify the predictable version of the generated logfile
name to append the process-id rather than a random value.
- Modify scroll-back and scroll-forw actions to accept an
adjustment value, e.g.,
scroll-back(1, page-2)
to scroll back by 2 lines less than a page.
- Add visualBellDelay resource to modify the length of
time used for visual bell, for very slow displays or
very fast computers.
Improved Locale Support:
- modify uxterm script to strip modifiers such as "@euro" from the
locale setting before adding ".UTF-8".
- Add logic to wide-character support which attempts to
load fonts specified by utf8Fonts subresources at startup.
The subresources have the same names as the fonts which
they replace, e.g., font, font1, etc., so that the
ISO-10646-1 fonts can be specified in the XTerm
app-defaults file.
- Improved performance with chinput application.
Improved Font Handling:
- Document in xterm's manual page how to use XFree86 ":unscaled"
keyword to suppress scaling of bold fonts.
- Improved logic for deriving bold fontname from normal
fontname.
- Make double-width characters work with -u8 option.
- Updated table of Unicode line-drawing characters.
- Several fixes for rendering using Xft (option -fa):
- Make height of TrueType fonts match ascent+descent.
- Translate Unicode values (from UTF-8 output to
xterm) for line-drawing to xterm's internal
code, etc., since TrueType fonts generally do
not have either set of line-drawing glyphs.
xterm can draw these directly.
- Pass 16-bit values rather than 8-bit values to
xtermXftDrawString() to allow for wide-characters.
- Use built-in line-drawing characters for Xft fonts.
- Implement underlining.
- Implement boldMode for wide-characters.
- Modified to work with CJK double-width (bi-width/monospace)
fonts.
Workarounds for Special Applications:
- Add option -k8 and resource allowC1Printable to allow
users of non-VTxxx character sets such as KOI-8 to treat
the C1 control area (character codes 128-159) as printable
rather than control characters.
- Add configure option --enable-broken-st and resource
brokenStringTerm to allow user to revert one part of
the parsing table corrections.
- Add configure option --enable-broken-osc and resource
brokenLinuxOSC to accommodate scripts which do not
distinguish between running in the Linux console and
running in X. Linux console recognizes malformed control
strings which start with an OSC, but are fixed-length,
with no terminator.
- Add configure option --enable-pty-handshake to allow
one to compile-in support for the pty handshaking logic,
and resource ptyHandshake to enable or disable it. This
feature is normally enabled.
Modified Resources:
- Change color4 to "dodger blue", since this provides
better contrast.
- Remove color resources from XTerm.ad, leaving them only
in XTerm-col.ad
- Modify UXTerm.ad resource file to include "XTerm-color"
rather than "XTerm", in case the latter file contains
no color resource definitions.
- Changed class of veryBoldColors to VeryBoldColors, since
ColorMode is associated with boolean resources.
- Changed classes of colorBDMode and similar resources
that override colors when a video attribute is set to
ColorAttrMode, to make them distinct from ColorMode.
This avoids an unexpected rendering of reverse video,
for example.
Modified terminfo/termcap entries:
- Add indp and rin to terminfo entry.
- Add le to termcap xterm-basic entry. Though missing
from older termcaps for xterm, some applications check
for it.
- Correct AF/AB strings in termcap for xterm-256color and
xterm-88color entries.
2.7. I18N and Font Updates
- FreeType2 updated to version 2.1.4.
- The "freetype" X server font backend has been updated by the
After X-TT Project to
include the functionality previously provided by the "xtt" backend,
and to fix some bugs. The "xtt" backend will be dropped in the
next release in favour of the updated unified "freetype" backend.
- The new "freetype" backend has the improved "very lazy" metric
calculation method which enables super-fast loading of
proportional CJKV fonts.
- All of the servers, including xfs, Xnest, Xprt, Xvfb, the
Cygwin-XFree86 server (as well as the XFree86 server)
can handle the perfect TTCap options.
- The Compose file processing mechanism has been improved and made
more flexible. See the
Xlib Compose file support and extensions section below.
- The Bitstream Vera TrueType fonts that Bitstream, Inc donated to
the GNOME Foundation have been included with this release.
2.8. OS Support Updates
- On Mac OS X, the appropriate backend drawing code is now dynamically
loaded at runtime which reduces the X server's memory footprint.
In rootless mode, Apple's Xplugin library is used where available.
(Xplugin is included as part of Mac OS X on Panther.) With Xplugin,
XDarwin provides identical performance to Apple's X11, including
the following improvements over 4.3:
- Added direct GLX rendering with thread support.
- Faster 2-D drawing.
- Added support for the Apple-WM extension so XDarwin interoperates
with quartz-wm.
- On Darwin, IOKit mode now uses shadowfb for much faster drawing.
- Various GNU/Hurd support updates.
- Experimental support added for GNU/KFreeBSD and GNU/KNetBSD systems.
- SCO OpenServer support updates. XFree86 4.4 now works on Release
5.0.7 with Maintenance Pack 1, or on prior releases through Release
5.0.4. Please consult the README.SCO
file for details.
Release Notes for XFree86[tm] 4.4.0
: Summary of new features in 4.4.0.
Previous: Introduction to the 4.x Release Series
Next: Drivers