aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nx-X11/CHANGELOG4
-rw-r--r--nx-X11/CHANGELOG.NX.original4
-rw-r--r--nx-X11/CHANGELOG~1020
-rw-r--r--nx-X11/lib/X11/XlibInt.c2
-rw-r--r--nx-X11/lib/X11/XlibInt.c.NX.original2
5 files changed, 10 insertions, 1022 deletions
diff --git a/nx-X11/CHANGELOG b/nx-X11/CHANGELOG
index f576284e1..800eb02bb 100644
--- a/nx-X11/CHANGELOG
+++ b/nx-X11/CHANGELOG
@@ -1,5 +1,9 @@
ChangeLog:
+nx-X11-3.3.0-4
+
+- Enabled the code resetting the Xlib buffer if an IO error occured.
+
nx-X11-3.3.0-3
- Fixed the search path for the XKB base directory.
diff --git a/nx-X11/CHANGELOG.NX.original b/nx-X11/CHANGELOG.NX.original
index f576284e1..800eb02bb 100644
--- a/nx-X11/CHANGELOG.NX.original
+++ b/nx-X11/CHANGELOG.NX.original
@@ -1,5 +1,9 @@
ChangeLog:
+nx-X11-3.3.0-4
+
+- Enabled the code resetting the Xlib buffer if an IO error occured.
+
nx-X11-3.3.0-3
- Fixed the search path for the XKB base directory.
diff --git a/nx-X11/CHANGELOG~ b/nx-X11/CHANGELOG~
deleted file mode 100644
index 754ee0702..000000000
--- a/nx-X11/CHANGELOG~
+++ /dev/null
@@ -1,1020 +0,0 @@
-ChangeLog:
-
-nx-X11-3.3.0-2
-
-- Fixed TR10F02116. The X11 agent could enter an indefinite wait state
- if connection to X display is broken and libX11 output buffer is not
- empty.
-
-nx-X11-3.3.0-1
-
-- Opened the 3.3.0 branch based on nx-X11-3.2.0-2.
-
-nx-X11-3.2.0-2
-
-- Imported patch fixing issues from X.Org security advisory, June
- 11th, 2008: Multiple vulnerabilities in X server extensions. CVE
- IDs: CVE-2008-1377, CVE-2008-1379, CVE-2008-2360, CVE-2008-2361,
- CVE-2008-2362.
-
-nx-X11-3.2.0-1
-
-- Opened the 3.2.0 branch based on nx-X11-3.1.0-6.
-
-nx-X11-3.1.0-6
-
-- Modified Xserver Imakefile to link the Xfixes library.
-
-nx-X11-3.1.0-5
-
-- Disabled the terminate action, just in case the TerminateServer
- symbol is binded to a non default key sequence.
-
-nx-X11-3.1.0-4
-
-- Imported patch fixing issues from X.Org security advisory, January
- 17th, 2008: Multiple vulnerabilities in the X server. CVE IDs:
- CVE-2007-5760 CVE-2007-5958 CVE-2007-6427 CVE-2007-6428
- CVE-2007-6429 CVE-2008-0006.
-
-nx-X11-3.1.0-3
-
-- Moved a variable definition placed in _mesa_make_current().
-
-nx-X11-3.1.0-2
-
-- Fixed TR10E01924. A crash could occur in _mesa_make_current().
-
-- Initialized after_ret variable in _XcmsGetProperty().
-
-nx-X11-3.1.0-1
-
-- Opened the 3.1.0 branch based on nx-X11-3.0.0-37.
-
-nx-X11-3.0.0-37
-
-- Changed the Xserver Imakefile to link against Xcomposite on the
- Cygwin platform too.
-
-nx-X11-3.0.0-36
-
-- Fixed TR07E01806. Modified host.def to build GLX code with symbol
- __GLX_ALIGN64 defined on Solaris platform.
-
-nx-X11-3.0.0-35
-
-- Flush explicitly the NX link before entering the select() in the
- WaitForReadable() and WaitForWritable() routines.
-
-nx-X11-3.0.0-34
-
-- Changed the agent Imakefile to link to the Xcomposite library.
-
-nx-X11-3.0.0-33
-
-- Fix the NX_TRANS_WAKEUP stuff in WaitForSomething() to not over-
- ride a valid timeout.
-
-- Check if the requesting client is gone in the XFixes functions
- sending the cursor events.
-
-nx-X11-3.0.0-32
-
-- Define DDXOSVERRORF and DDXOSFATALERROR symbols on Sun.
-
-- Changed the copyright attribution from Medialogic to NoMachine.
-
-nx-X11-3.0.0-31
-
-- Make SmartScheduleStopTimer() visible outside Xserver/os/utils.c
- so that it can be called by the agent. Export the declaration in
- dixstruct.h.
-
-nx-X11-3.0.0-30
-
-- The OsVendorVErrorFFatal flag is set to 1 if the function pointed
- by OsVendorVErrorFProc is called due to a fatal error.
-
-- Give the possibility to the agent to redirect the standard error
- during a Popen() or a System() by setting the OsVendorStartRedir-
- ectErrorFProc and OsVendorEndRedirectErrorFProc function pointers.
-
-nx-X11-3.0.0-29
-
-- Changed the default message printed on a fatal server error. The
- new message is:
-
- Error: Aborting session with 'Error text...'.
-
-- Hacked LogVWrite() to force all fatal error messages to have an
- uppercase initial. Also remove the trailing newline and the full-
- stop, if present.
-
-nx-X11-3.0.0-28
-
-- Corrected the typos in the ChangeLog.
-
-nx-X11-3.0.0-27
-
-- Fixed the cleanup of the X_RenderCompositeText16 padding bytes.
-
-- More code cleanup in the NX changes to the Xrender library.
-
-- Changed host.def to build the freetype and fontconfig libraries
- if the agent server is also built. Freetype is built as a shared
- library: this avoids the link error on 64 bit platforms.
-
-nx-X11-3.0.0-26
-
-- Applied the following security patches, from the X.Org security
- advisory, April 3rd, 2007 "Multiple vulnerability in X server,
- libXfont and libX11":
-
- xorg-xserver-1.2.0-xcmisc.diff
- xorg-libXfont-1.2.7-bdf-fontdir.diff
- xorg-libX11-1.1.1-xinitimage.diff
-
-nx-X11-3.0.0-25
-
-- Added the missing *.X.original file for ChkIfEv.c and Xlib.h.
-
-nx-X11-3.0.0-24
-
-- Changed Xrender to clean up the padding bytes in XRenderComposite-
- Text functions.
-
-- Added function XRenderCleanGlyphs() cleaning the padding bytes in
- the data section of RenderAddGlyphs requests.
-
-nx-X11-3.0.0-23
-
-- Removed the additional parameter from the call to NXTransFlush()
- in _XReply().
-
-- Call NXTransExit() on AbortServer() (called by FatalError()) to
- give the proxy a chance to shut down the NX transport.
-
-nx-X11-3.0.0-22
-
-- Moved the replacement of XCheckIfEvent() ChkIfEv.c with the name
- XCheckIfEventNoFlush().
-
-nx-X11-3.0.0-21
-
-- Set BUFSIZE to 8192 bytes. While the output buffer size can be
- configured by setting the XLIBBUFFERSIZE in the environment (see
- OpenDis.c), this constant is still used when reading from the
- socket.
-
-nx-X11-3.0.0-20
-
-- If set, the handler pointed by _NXDisplayWriteFunction is called
- after that more data is written to the display connection.
-
-nx-X11-3.0.0-19
-
-- Added a RejectWellKnownSockets() stub to make possible to compile
- the agent when the NX transport is disabled.
-
-- Added more useful logs to _XWaitForWritable().
-
-nx-X11-3.0.0-18
-
-- Changed Imakefile of X11 and Xserver in order to build nxcompshad
- just before the NX agent server.
-
-- Changed Imakefile in Xserver to add NXdamage.o to NXAGENTOBJS.
-
-nx-X11-3.0.0-17
-
-- Changed host.def in order to build Xdamage and Xrandr libraries.
-
-- Changed host.def in order not to build NXWin.
-
-nx-X11-3.0.0-16
-
-- Changed host.def in order to build Xtst as a shared library.
-
-nx-X11-3.0.0-15
-
-- Changes to comply with nxcompshad library.
-
-- Changed configuration to statically build Xtst library.
-
-- Restored parser directory under Xserver/hw/xfree86.
-
-nx-X11-3.0.0-14
-
-- Changed the LICENSE file to state that the software is only made
- available under the version 2 of the GPL.
-
-- Added file COPYING.
-
-- In nx-X11/programs and nx-X11/programs/Xserver/hw/xfree86, removed
- files and directories not needed to build servers.
-
-nx-X11-3.0.0-13
-
-- Changes aimed to link servers with static versions of Xdmcp and Xau
- libraries.
-
-nx-X11-3.0.0-12
-
-- Added references to implented FR in the ChangeLog.
-
-- Removed nx-X11/fonts and nx-X11/doc directories. They are not needed
- for building the NX components.
-
-nx-X11-3.0.0-11
-
-- Updated the copyright notices to year 2007.
-
-nx-X11-3.0.0-10
-
-- Applied the following security patches:
-
- x11r6.9.0-cidfonts.diff
- x11r6.9.0-dbe-render.diff
- x11r6.9.0-geteuid.diff
- x11r6.9.0-mitri.diff
- x11r6.9.0-setuid.diff
-
-nx-X11-3.0.0-9
-
-- Merged the NX changes to X11 with the X11R6.9.0 version of X.org.
-
-nx-X11-3.0.0-8
-
-- Changes to build Xshadow library when building X11.
-
-- Changes to Xserver Imakefile to link Xshadow library.
-
-- Changes to host.def in order to build on old distributions.
-
-nx-X11-3.0.0-7
-
-- Imported changes up to nx-X11-2.1.0-2
-
-- Fixed TR08D01485. Updated rgb file paths validation in order to
- support Ubuntu distribution.
-
-- Added Xtst to libraries to be linked by nxagent.
-
-- Changed Xpm Imakefile to build a shared library on Solaris.
-
-- Fixed build error on Solaris in xtrans.
-
-- Changed host.def not to build Xnest server.
-
-- Changed Xserver Imakefile to link nxaccess library.
-
-nx-X11-3.0.0-6
-
-- Added the path of nxaccess library to the server link command.
-
-nx-X11-3.0.0-5
-
-- Implemented FR10C01079 and FR10C01080. The merge of NX changes to
- the X.org code is complete.
-
-- Merged changes in config/cf. The NX-*.def files have been dismissed.
- Main platform dependent configurations have been moved to host.def.
-
-- Removed *.reference files from config/cf.
-
-- Fixed compilation for Cygwin platform.
-
-nx-X11-3.0.0-4
-
-- Imported all changes up to nx-X11-2.0.0-32.
-
-- Cleaned up lib/zlib directory.
-
-- Added missing file programs/Xserver/os/utils.c.NX.original.
-
-- Updated the copyright notice to year 2006.
-
-- The pointer to the display buffer is reset after an I/O error.
- This prevents leaving the buffer in an inconsistent state if the
- error occurs inside _XFlush().
-
-- Removed the modifications to the Xrender library. The cleanup of
- the padding bytes is now performed by the NX transport.
-
-- NX uses the updated ZLIB from its build tree, so Imake.tmpl will
- now assume that the platform as ZLIB unless otherwise stated.
-
-- The path of the SecurityPolicy file is searched and validated at
- runtime.
-
-- Added the _X11TransSocketProxyConnInfo() function to Xtranssock.c
- It returns the pointer to the XtransConnInfo private, if it is a
- valid _NXProxyConnInfo structure.
-
-- The above function is used by OpenDis.c to detect if the NX trans-
- port was requested on the display and avoid spurious error messa-
- ges in the case of a connection failure.
-
-- Added NXmiwindow.o to the NXAGENTOBJS in the Xserver's Imakefile
- and imported NXmiwindow.c in nxagent. This allows us to check the
- pointer to the pOldClip region in miSetShape() before going on
- freeing it.
-
-- The path of the XKB base directory and of the xkbcomp comand is
- validated at runtime.
-
-- Also added a check to verify the validity of the rgb file path.
-
-- Added NXresource.o to NXAGENTOBJS in the Imakefile of nxagent. We
- need this to a assign a resource to the pixmaps and other server
- objects which need to be enumerated at reconnection. Some objects,
- being created by the X server and not by the clients, don't pass
- through the resource assignment process operated by the dix. To
- ensure that all objects get a resource, we add a resource at the
- time the object is created and temporarily assign the resource to
- the server client. If the dix later assigns the resource to a va-
- lid client, the resource is removed from the server client's list.
-
-- The display block handler registered by the client is called in
- WaitForReadable() and WaitForWritable() before every select(),
- not only upon entering the function. The reason is that more
- data can be possibly produced for the NX link by the proxy it-
- self and, when setting the flush policy to deferred, the client
- may not have the chance of flushing the NX link.
-
-- Fixed a bug in XkbUseExtension() that caused Xlib to query the
- presence of the XKEYBOARD extension multiple times. This partial-
- ly implents the FR01D01275. The complete implementation required
- modifications to the X11 agent, implemented in nxagent-2.0.0-33.
-
-- Updated to comply with the new NXTransFlush() interface.
-
-- Both nxwin and nxagent now read the X authority file by using an
- fopen() instead of the system command 'cat'.
-
-- Removed NXmiwindow.o from the NXAGENTOBJ list. The agent will now
- use the original miwindow.c.
-
-- Added some additional logs in Xtranssock.c to follow the creation
- and removal of the X server's Unix listener.
-
-- Avoided the sleep of 5 seconds forced by Xtransutil.c if the dir-
- ectory where the Unix listener is created is not owned by root.
- This sleep is not executed on Cygwin (where the X socket can be
- hardly owned by root) but may delay the startup of the agent if
- the user chose a different NX_TEMP directory. Furthermore, it is
- unclear what real benefits such sleeps are intended to bring to
- the security of the X server. This can be controlled by defining
- the NX_TRANS_SLEEP directive in Xserver/os/Imakefile.
-
-- Added NXmiexpose.o to the NXAGENTOBJ.
-
-- Ensured that _X11TransSocketCloseConnInfo() now initiates the NX
- shutdown by calling NXTransClose().
-
-- Corrected a misplaced #else that made SocketUNIXConnect() skip a
- block if the connection was not to the NX transport.
-
-- Updated to comply with the new NX function prototypes introduced
- in nxcomp-2.0.0-31.
-
-- Moved the most important Xtranssock.c modifications into separate
- functions.
-
-- Ensured that the modifications enabling the internal connections
- to the proxy are compiled only when the TRANS_CLIENT directive is
- defined.
-
-- Solved a bug that prevented the X11 socket to be deleted at the X
- server shutdown. This needs further tests.
-
-- Added nxcompext to the link of nxagent, now that the dependency
- of libX11 from nxcompext is removed.
-
-- Improved the Xtranssock routines to never loop through the array
- of connection info.
-
-- Added a congestion flag to the connection info structure and a
- function querying the transport and reporting if a change in the
- congestion state has occurred. The code is currently not enabled,
- because instead of polling the transport, we let the proxy notify
- the changes in congestion state by using the callback. The code
- can be used in future to extend the library, for example, by add-
- ing some counters tracking the bandwidth usage of the socket con-
- nection, so that we can make the congestion notifications work
- even with a plain X11 connection.
-
-- Profiled the routines in XlibInt.c to reduce the number of calls
- to the error predicate function provided by the client.
-
-- Fixed the nxcompext build problem that caused make World to fail.
-
-- Added a 'CONF' target to the X11 and Xext Imakefiles so that the
- configure script is not run if the config.status exists.
-
-- Added the _NXDisplayBlockHandler hook. The function is called by
- Xlib before blocking. The parameter says if Xlib is going to wait
- for more input or because it needs to write to the display socket.
- The client can use the hook to perform any internal operation that
- may require some time to complete. The user, though, should not
- try to read or write to the display inside the callback routine.
-
-- Removed the outdated NX_TRANS_PROCESS, NX_TRANS_THREAD and NX_TR-
- ANS_INCLUDE defines.
-
-- Reverted the lib/Xext Imakefile to the original XF86 version and
- moved the build of the nxcompext library among the libX11 depend-
- encies.
-
-- Corrected the lib/X11 Imakefile so that a new build of nxcomp and
- nxcompext is not attempted if the libraries are up-to-date.
-
-- Removed the unused display buffer and image cleanup functions.
-
-- Reverted the PutImage.c file to the original XF86 version.
-
-- Added the _NXDisplayErrorPredicate function in XlibInt.c. It is
- actually a pointer to a function called whenever Xlib is going to
- perform a network operation. If the function returns true, the
- call will be aborted and Xlib will return the control to the ap-
- plication. It is up to the application to set the XlibDisplayIO-
- Error flag after the _NXDisplayErrorPredicate returns true. The
- function can be used to activate additional checks, besides the
- normal failures detected by Xlib on the display socket. For exam-
- ple, the application can set the funciton to verify if an inter-
- rupt was received or if any other event occurred mandating the
- end of the session.
-
-- Modified XIfEvent(), XMaskEvent() and XPeekIfEvent() to check the
- _NXDisplayErrorPredicate function and return immediately if the
- function returns true.
-
-- Modified _XWaitForReadable() to never enter the loop if the dis-
- play is broken.
-
-- Corrected a make problem on Windows that caused the nxcomp and
- nxcompext libraries to be referred with the wrong name, with the
- result that a new configure and make was attempted at each build
- attempt.
-
-- Merged all the changes to os, Xext, xkb, dix.
-
-- Changed host.def to build only the agent server.
-
-- Merged the changes to Xtranssock.c
-
-nx-X11-3.0.0-3
-
-- Merged the changes to lib/X11. Restored original PutImage.c and
- ClDisplay.c files.
-
-nx-X11-3.0.0-2
-
-- Created a directory named 'reference' to keep files that are chan-
- ged during the development of nx-X11 since the 1.5.0-16 to 2.0.0-32
- version. These files will be removed as long as the differences are
- merged to the 3.0.0 version. When all differences are merged, this
- directory will be removed.
-
-nx-X11-3.0.0-1
-
-- Opened the 3.0.0 branch based on the nx-X11-2.0.0-9. The 3.0.0
- branch will now support the migration toward the X.org tree. Due
- to time concerns, the 2.0.0 branch is going to be based on the
- same nx-X11 as the 1.5.0.
-
-nx-X11-2.0.0-9
-
-- Modified the agent link arguments to explicitly include the NX
- libraries.
-
-- Disabled the Xinerama extension to avoid further clashes with
- the redefinition of GC in Xlib.
-
-- Added os/libos.a at the end of the agent link.
-
-nx-X11-2.0.0-8
-
-- Moved the declarations of _NXEnable* and related structures from
- Xlibint.h to NXlibint.h.
-
-- Added provision for building the agent. This can be controlled by
- setting NXAgentServer to YES in host.def.
-
-- Setting the NXUpgradeAgentServer variable to YES in the host.def
- file will make the agent assume that it is being built in the new
- environment. This variable is normally unset when building in the
- 1.5.0 tree.
-
-nx-X11-2.0.0-7
-
-- Fixed a problem on AMD64 due to the size of the area pointed by
- the argument of _X11TransBytesReadable(). BytesReadable_t is long,
- at least on Linux, while the ioctl() requires a pointer to an int.
- The original _X11TransBytesReadable() function simply calls the
- ioctl() by passing the pointer that is provided. NXTransReadable(),
- instead, was correctly returning the value assuming a pointer to
- a long, but this crashes some applications, among them xterm. Now
- NXTransReadable() follows the same schema of the ioctl() call and
- stores the result assuming a pointer to an int.
-
-- Removed the outdated NX_TRANS_PROCESS and NX_TRANS_THREAD code.
-
-nx-X11-2.0.0-6
-
-- Made xterm work with the NX transport. This required small changes
- to the Xt toolkit's and the xterm's files to let them use the NX
- aware select(). This is useful to test the NX transport until the
- nxagent server is integrated.
-
-- When the transport is gone _X11TransSocketBytesReadable() returns
- EPIPE. This makes the client become aware of the closure of the
- connection.
-
-- Added a call to NXTransDestroy() in XCloseDisplay().
-
-- The exit() function in XlibInt.c causes a call to NXTransExit().
-
-- Merged changes to dix/pixmap.c, xkb/xkbDflts.h, mi/Imakefile.
-
-- Removed unneeded changes and files containing patches already in
- the latest X.org distribution: dix/dispatch.c, fb/fbcompose.c, fb/
- fbgc.c, xkb/ddxList.c, font/fontfile/dirfile.c, font/fontfile/
- encparse.c, font/fontfile/fontfile.c, font/FreeType/fttools.c,
- Xrender/FillRect.c, Xrender/Picture.c.
-
-nx-X11-2.0.0-5
-
-- Changes to the lib/X11/Imakefile to cleanly build the tree. This
- is obtained by creating a link to the Xcomp library in exports/lib
- without having to modify the programs' Imakefiles.
-
-- Finished merging the NX changes in the lib/X11 files.
-
-- Merged the CHANGELOG with the one from the 1.5.0 tree.
-
-nx-X11-2.0.0-4
-
-- Merged the NX changes in most Xtrans and lib/X11 files.
-
-nx-X11-2.0.0-3
-
-- Temporarily disabled the use of the MMX extensions in the Xserver's
- fb code to successfully compile with GCC 4.
-
-nx-X11-2.0.0-2
-
-- Imported the *.NX.reference and *.XF86.reference files that will
- be needed for the merge. These files are the *.original from the
- 1.5.0 tree. They will be removed as long as the merge advances.
-
-nx-X11-2.0.0-1
-
-- Created the 2.0.0 branch based on X.org the 6.8.99.16 snapshot.
-
-nx-X11-1.5.0-16
-
-- Added the missing *.XF86.original and *.NX.original files.
-
-nx-X11-1.5.0-15
-
-- Made the nxagent server use select() instead of poll() on Solaris
- so that it can leverage the new NX transport.
-
-- Moved the NXTransFlush() call to _XReply().
-
-nx-X11-1.5.0-14
-
-- Added the 'synchronous' parameter in the _XWaitForReadable() call
- to NXTransFlush().
-
-nx-X11-1.5.0-13
-
-- Removed the log entry in XlibInt.c on calling the NXTransFlush().
-
-nx-X11-1.5.0-12
-
-- Changed XlibInt.c and utils.c to call NXTransExit().
-
-nx-X11-1.5.0-11
-
-- Changed XlibInt.c to comply with the new NXTransFlush() interfa-
- ce introduced in nxcomp-1.5.0-42.
-
-- Cosmetic changes to messages printed for debug.
-
-nx-X11-1.5.0-10
-
-- Ensured that all calls to _XIOError() are followed by a return.
-
-- Put exiting the client program in the case of an I/O error under
- the control of the _NXContinueOnDisplayError flag. If set, the
- I/O error routine will simply return, leaving to the application
- the responsibility of checking the state of the XlibDisplayIOEr-
- ror flag.
-
-- Added some checks whenever a read or write is performed on the X
- connection, so that we can exit the I/O loop if the X channel is
- gone. It is likely that more work will be needed when trying to
- support XTHREADS enabled connections. This should not be a pro-
- blem for now, as the default is still to quit the application un-
- less the _NXContinueOnDisplayError flag is explicitly set.
-
-nx-X11-1.5.0-9
-
-- Removed the references to the cygipc library in NXWin. Now use the
- cygserver daemon to provide the MIT-SHM extension.
-
-- Fixed an error in the UseCygIPC definition.
-
-- Changed the cygwin.cf file to avoid redefinition of the BuildGlxExt,
- XWinServer and BuildGlxExt symbols.
-
-nx-X11-1.5.0-8
-
-- Added provision for deferred writes in the NX transport. When en-
- tering _XWaitForReadable() we must ensure that data is flushed to
- the proxy link.
-
-- Added the UseCygIPC define to NX-Cygwin.def.
-
-- Updated the NoMachine copyright notice on the modified files.
-
-nx-X11-1.5.0-7
-
-- Added the GLX extension in NX-Sun.def.
-
-- Added some more logs in WaitFor.c.
-
-nx-X11-1.5.0-6
-
-- Modified Xlibint.h and XlibInt.c to remove the _NXFlushSize para-
- meter. New agents run the NX transport in-process, so we don't get
- any benefit from increasing the display buffer size.
-
-- Modified NX-Darwin.def to not build the NXDarwin server. Since the
- 1.4.0 version the NXDarwin server is unsupported and the NX client
- for the Mac requires that the Apple X server is installed.
-
-- Changed NX-Linux.def to avoid the warning due to "SharedLibGLw"
- being not defined.
-
-nx-X11-1.5.0-5
-
-- Modified the Xserver Imakefile to link nxagent with FbPostFbLibs
- and avoid including mfb/libmfb.a.
-
-- Added the GLX extension in NX-Linux.def. This provides unaccelera-
- ted support in nxagent, with GLX operations translated into core X
- protocol primitives.
-
-- Fixed x-X11/programs/Xserver/GL/dri/Imakefile to look in ../../hw/
- /xfree86/os-support/bus for includes.
-
-nx-X11-1.5.0-4
-
-- Avoid calling NXTransSelect() if the transport is gone, so that we
- don't have to wait until the timeout.
-
-- Added the "-fno-strict-aliasing" option to linux.cf when compiling
- with a GCC version >= 4. In the words of Stefan Dirsch: "The opt-
- ion, which is default since gcc 3.1, can result in wrong code when
- the gcc warnings related to it are ignored. And as there are seve-
- ral warnings in X11 related to it, it has been disabled for X11
- from the beginning. This didn't change for gcc4, so it still needs
- to be used."
-
-- Added more logs in XlibInt.c and utils.c. A warning is printed if
- the SmartScheduler is initialized.
-
-nx-X11-1.5.0-3
-
-- Started integration of nxcomp with the X libraries. The Xtrans
- code creates an internal connection to the nxcomp library instead
- of a child proxy process.
-
-- Changed Xpoll.h and XlibInt.c to replace the standard Select
- with a version giving NX a chance to check its own descriptors.
-
-- Implemented the NXTransReadVector() and the NXTransWriteVector()
- functions to replace READV() and WRITEV().
-
-- Implemented memory-to-memory communication with the NX proxy by
- making use of the NXTransAgent() interface.
-
-nx-X11-1.5.0-2
-
-- We think that the way LoadAuthorization() is working is wrong.
- It doesn't reset the list of stored authorizations before reading
- the new cookies. Our take is that if a new auth file is to be
- read, the only cookies that are to be accepted are those that are
- in the new file, not those in the file -plus- those that have
- been in the file in the past. Furthermore, if the list can't be
- read or it is empty, it should assume that it ignores which co-
- okies are valid and thus it should disable any access. Your mile-
- age can vary. A less draconian approach could be to leave the old
- cookies if the file can't be read and remove them only if the
- file is empty.
-
- Adding the cookies without removing the old values for the same
- protocol has an important implication. If an user shares the co-
- okie with somebody and later wants to revoke the access to the
- display, changing the cookie will not work. This is especially
- important with NX. For security reasons, after reconnecting the
- session to a different display, it is advisable to generate a
- new set of cookies, but doing that it is useless with the current
- code, as the old cookies are going to be still accepted. On the
- same topic, consider that once an user has got access to the X
- server, he/she can freely enable host authentication from any
- host, so the safe behaviour should be to reset the host based
- authenthication at least at reconnection, and keep as valid only
- the cookies that are actually in the file. This behaviour would
- surely break many applications, among them a SSH connection run
- inside a NX session, as ssh -X reads the cookie for the display
- only at session startup and does not read the cookies again
- when the auth file is changed.
-
- Another bug (or feature, depending on how you want to consider
- it) is that if the authority file contains entries for different
- displays (as it is the norm when the authority file is the default
- .Xauthority in the user's home), the X server will match -any- of
- the cookies, even cookies that are not for its own display. This
- means that you have to be careful when passing an authority file
- to nxagent and maybe keep separate files for letting nxagent find
- the cookie to be used to connect to the remote display and for
- letting it find what cookies to accept. If the file is the same,
- clients will be able to connect to nxagent with both the cookies.
- This bug obviously affects any X server, also the real X server
- running on the workstation, so it is common to see nxagent being
- able to connect to the X server even if no cookie matches the
- real display.
-
-- Added a check in lib/Xau/AuRead.c to prevent the fread() call to
- be interrupted by SIGCHLD while reading the auth file. Due to the
- way the old code worked, this could lead to the server enabling
- local host access to the display. This problem had been identified
- in the past. We just found that all the code dealing with reading
- the auth file was affected. The code calls sigprocmask() to block
- the signal (though it leaves some other calls unprotected) but the
- SIGCHLD was not included in the set.
-
-- Added SIGCHLD to the set of signals that are blocked when reading
- the authorization file.
-
-- As I was at it, I changed the path to the SecurityPolicy file. A
- few Linux ditributors ship the file in $LIBDIR/xserver, a few only
- in /etc/X11/xserver, most others in both places. It seems that
- those who ship in $LIBDIR/xserver do also in /etc/X11 but the op-
- posite is not true, so I switched to /etc/X11.
-
-nx-X11-1.5.0-1
-
-- Opened the 1.5.0 branch.
-
-nx-X11-1.4.1-2
-
-- Set parameter UseCygIPC on cygwin conf file in order to force the
- build of MIT-SHM estension.
-
-- Removed some spurius object file.
-
-nx-X11-1.4.1-1
-
-- Opened the 1.4.1 branch.
-
-nx-X11-1.4.0-8
-
-- Changed DefaultFontPath and DefaultRGBDatabase in
- NX-Cygwin.def.
-
-nx-X11-1.4.0-7
-
-- Imported dispatch in nxdarwin package, in order to let
- nxdarwin being able to detect new client connection.
-
-- Changed the Xpm Imakefile to make also .a static library
- on Solaris. To link nxviewer and nxdestkop staticaly.
-
-nx-X11-1.4.0-6
-
-- XInput extension enabled on MacOSX.
-
-- Added some missing backup files of the original XFree86
- package.
-
-nx-X11-1.4.0-5
-
-- Changed the mi Imakefile in order to let xfree86 servers use
- the normal mi extension initialization for the XInput exten-
- sion.
-
-- XInput extension enabled on Solaris.
-
-nx-X11-1.4.0-4
-
-- Removed the RejectWellKnownSocket for the cygwin and
- MacOSX environments that doesn't use the Xtransport library.
-
-nx-X11-1.4.0-3
-
-- Changed the implementation of the reject method in the
- Xtransport library, now close any new incoming connection
- immediately without reading or writing to it.
-
-nx-X11-1.4.0-2
-
-- Implemented a reject method in the Xtransport library,
- this function accept and close every connection attempt,
- on the specified listening socket.
-
-- Added the new function RejectWellKnownSocket to the os
- connection code.
- This function use the new transport reject function on
- all listening socket.
-
-nx-X11-1.4.0-1
-
-- Opened the 1.4.0 branch.
-
-- Removed forgotten nxagent-1.3.2-20 directory.
-
-nx-X11-1.3.2-9
-
-- Prevents NX Darwin server going through the reset. On Darwin
- we found that the it is not possible to get the correct key-
- board layout unless it is set on the local machine, before
- the NX session is started, by using xmodmap. As we set the
- keyboard locally, we must prevent the X server to reset, or
- we would loose any local configuration.
-
-nx-X11-1.3.2-8
-
-- Removed action associated to keysym XK_Terminate_Server. This
- could cause agent to be terminated when pressing shift + back-
- space if using the default US keyboard mapping.
-
-- Disabled the remaining debug logs in lib/X11/PutImage.c
-
-nx-X11-1.3.2-7
-
-- Fixed the wrong programs/Xserver/Imakefile in 1.3.2-6 package.
-
-nx-X11-1.3.2-6
-
-- Changed the define from NX_CLEAN_IN_PLACE to NX_CLEAN_INPLACE.
- Definition of symbol is now placed in the Imakefile.
-
-- The new _NXEnableCleanInplace Xlib variable does control which
- algorithm is used to clean the images. Setting NX_IMAGEINPLACE
- in the environment will activate the in-place cleanup.
-
-- The default value of _NXEnableCleanInplace is -1. Leaving it to
- a value <= 0 disables use of CleanInplace.
-
-nx-X11-1.3.2-5
-
-- Patch in config/cf/sun.cf. Fix for libfontconfig compilation
- during gmake Everything on Solaris.
-
-- Patch in lib/X11/Imakefile. Fix for nxcomp compilation during
- gmake World on Solaris.
-
-nx-X11-1.3.2-4
-
-- Image cleanup is now performed by using NXCleanInPlaceImage from
- nxcompext. This function saves a buffer copy by cleaning the
- padding bytes in the same buffer provided by the caller. Note that
- to prevent memory violations in the case the image was allocated
- in a static buffer, the function will temporarily redefine the
- SIGSEGV handler. The former handler is restored before returning
- to the caller. This can potentially affect some multithreaded
- clients. Is to be decided if the function is safe enough to be
- included in the production release.
-
-nx-X11-1.3.2-3
-
-- More debug logs in programs/Xserver/xkb/ddxLoad.c.
-
-nx-X11-1.3.2-2
-
-- Added NXmiwindow.o to NXAGENTOBJS in programs/Xserver/Imakefile.
- File was not linked into the resulting nxagent. This solves the
- problem of missing repaints in CDE and other Xt applications.
-
-nx-X11-1.3.2-1
-
-- Added some debug logs in programs/Xserver/xkb/ddxLoad.c. Function
- XkbDDXCompileKeymapByNames is called by OpenOffice to read the
- keyboard configuration whenever a drop-down menu is accessed. It
- seem to always fail with the following error:
-
- The XKEYBOARD keymap compiler (xkbcomp) reports:
- > Error: Can't find file "unknown" for geometry include
- > Exiting
- > Abandoning geometry file "default"
-
-- Opened the 1.3.2 development branch.
-
-nx-X11-1.3.1-12
-
-- Fixed a problem in xkb/ddxLoad.c on Solaris where Pclose was
- always returning an error code despite the fact that command
- was executed properly.
-
-nx-X11-1.3.1-11
-
-- Changed default GCC flags from '-O2 -fno-strength-reduce' to
- -O3. No platform where NX is targeted is currently using a
- GCC 2.x affected by the -fno-strength-reduce bug. Note also
- that nxcomp is already compiled with -O3 since 1.1.1, so it
- can be considered safe.
-
-nx-X11-1.3.1-10
-
-- Imported an updated fbcompose.c file from XFree86-4.3.99.902.
- This fixes "uninitialized value" problems reported by Valgrind.
-
-- Fixed further buffer overflows by updating the following file
- with recent versions coming from the XFree86-4.3.99.902 tree.
-
- nx-X11/lib/font/fontfile/dirfile.c
- nx-X11/lib/font/fontfile/encparse.c
- nx-X11/lib/font/fontfile/fontfile.c
-
-- Fixed a possible buffer overflow in lib/font/FreeType/fttools.c.
- Verified that the change is already in the XFree86 4.4.0 CVS.
-
-nx-X11-1.3.1-9
-
-- Fixed Xserver/Imakefile which was still referencing NXpixmap.o.
-
-nx-X11-1.3.1-8
-
-- Imported an updated fbgc.c from XFree86-4.3.99.902. This fixes
- some minor problems reported by Valgrind.
-
-- A major problem was reported by Valgrind about reading after
- the block allocated in fbCreatePixmap from AllocatePixmap. The
- file pixmap.c has been modified so that 4 bytes are added to
- the pixmap buffer at any new allocation. This quick hack should
- solve the problem for both nxagent and the NXWin server. Further
- investigation is planned for the next release.
-
-- Fixed Xtranssock.c to compile on Solaris where struct sigaction
- doesn't have the sa_restorer member.
-
-nx-X11-1.3.1-5
-
-- Renamed the NX-sun.def configuration file to NX-Sun.def.
-
-- Renamed the non-standard NX_iPAQ_XServer and NX_Zaurus_XServer
- symbols to NXiPAQXServer and NXZaurusXServer.
-
-- Added the missing sun.cf.XF86.original file in config/cf.
-
-- Added the missing empty file host.def.XF86.original in the
- same directory.
-
-- Added initialization of sa.sa_mask when setting sigaction()
- for SIGCHLD. The problem was reported by Valgrind running
- nxagent.
-
-- Removed an unused block of code from WaitFor.c. The code had
- been commented out in previous versions.
-
-- Removed the non-standard colon at the end of version in this
- CHANGELOG.
-
-- Removed the spurious spaces in this CHANGELOG.
-
-nx-X11-1.3.1-4
-
-- Added a little workaround to the top Imakefile intended to
- hide the makedepend warnings about non portable whitespaces
- in sources.
-
-nx-X11-1.3.1-3
-
-- Fixed compilation problem with nxagent-1.3.1-13.
-
-nx-X11-1.3.1-2
-
-- Changes in NX-sun.def configuration file for Solaris to allow
- compilation of the XKB extension.
-
-nx-X11-1.3.1-1
-
-- Opened the 1.3.1 development branch.
-
-nx-X11-1.3.0-6
-
-- Original output buffer size in stock XFree86 is 2048. We try
- to reduce context switches and help stream compression by
- increasing the maximum size of the buffer 8192. _NXFlushSize
- determines when the display buffer is actually flushed. It is
- set by default to 4096 but agents should set it to 0 if they
- want to disable early flush.
-
-- Added the _NXLostSequenceFunction function pointer to let NX
- agents suppress the error message and modify the default Xlib
- behaviour when out-of-order sequence numbers are received.
diff --git a/nx-X11/lib/X11/XlibInt.c b/nx-X11/lib/X11/XlibInt.c
index 9a8ac4b73..97758e7ab 100644
--- a/nx-X11/lib/X11/XlibInt.c
+++ b/nx-X11/lib/X11/XlibInt.c
@@ -1840,7 +1840,7 @@ _XSend (
int congestion;
#endif
-#ifdef AGENT_SERVER
+#ifdef NX_TRANS_SOCKET
if (!size || (dpy->flags & XlibDisplayIOError))
{
if (dpy->flags & XlibDisplayIOError)
diff --git a/nx-X11/lib/X11/XlibInt.c.NX.original b/nx-X11/lib/X11/XlibInt.c.NX.original
index 9a8ac4b73..97758e7ab 100644
--- a/nx-X11/lib/X11/XlibInt.c.NX.original
+++ b/nx-X11/lib/X11/XlibInt.c.NX.original
@@ -1840,7 +1840,7 @@ _XSend (
int congestion;
#endif
-#ifdef AGENT_SERVER
+#ifdef NX_TRANS_SOCKET
if (!size || (dpy->flags & XlibDisplayIOError))
{
if (dpy->flags & XlibDisplayIOError)