| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Backported from X.org:
commit 6178b1c91cfc9e860914acc6f0be2f2d2e07a124
Author: Adam Jackson <ajax@redhat.com>
Date: Tue Jun 7 15:52:11 2016 -0400
dix: Use OsSignal() not signal()
As the man page for the latter states:
The effects of signal() in a multithreaded process are unspecified.
We already have an interface to call sigaction() instead, use it.
Signed-off-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
commit e10ba9e4b52269b2ac75c4802dce4ca47d169657
Author: Keith Packard <keithp@keithp.com>
Date: Wed Nov 11 22:02:01 2015 -0800
Remove non-smart scheduler. Don't require setitimer.
This allows the server to call GetTimeInMillis() after each request is
processed to avoid needing setitimer. -dumbSched now turns off the
setitimer.
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
commit 1f915e8b524dd02011158aa038935970684c7630
Author: Daniel Drake <drake@endlessm.com>
Date: Wed May 20 13:16:12 2015 -0600
Keep SIGALRM restart flag after Popen
Commit 94ab7455 added SA_RESTART to the SIGALRM handler. However, the
Popen code tears down and recreates the SIGALRM handler via OsSignal(),
and this flag is dropped at this time.
Clean the code to use just a single codepath for creating this signal
handler, always applying SA_RESTART.
[ajax: Fixed commit id]
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Daniel Drake <drake@endlessm.com>
commit 94ab7455abc213fc96760e29ab2e943ec682fb22
Author: Daniel Drake <drake@endlessm.com>
Date: Tue May 12 16:39:22 2015 -0600
Allow system call restarts upon signal interruption
The X server frequently deals with SIGIO and SIGALRM interruptions.
If process execution is inside certain blocking system calls
when these signals arrive, e.g. with the kernel blocked on
a contended semaphore, the system calls will be interrupted.
Some system calls are automatically restartable (the kernel re-executes
them with the same parameters once the signal handler returns) but
only if the signal handler allows it.
Set SA_RESTART on the signal handlers to enable this convenient
behaviour.
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Daniel Drake <drake@endlessm.com>
commit a6c71ce5d2d2fe89e07a2ef5041c915acc3dc686
Author: Tiago Vignatti <tiago.vignatti@nokia.com>
Date: Mon Mar 28 19:21:28 2011 +0300
os: fix memory and fd leaks in Popen
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Nicolas Peninguy <nico@lostgeeks.org>
commit c9051b684b524549eab6d5b88ee3e195a6f6fbe8
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date: Wed Nov 5 18:25:57 2008 -0800
Use OsSignal in Popen/Pclose to avoid SysV signal() stupidity
commit 0e9ef65fa583bf2393dd0fda82df6f092387b425
Author: Keith Packard <keithp@koto.keithp.com>
Date: Wed Nov 7 16:33:10 2007 -0800
Don't frob timers unless SmartSchedule is running
commit 2338d5c9914e2a43c3a4f7ee0f4355ad0a1ad9e7
Author: Arjan van de Ven <arjan@linux.intel.com>
Date: Sun Oct 28 09:37:52 2007 +0100
reduce wakeups from smart scheduler
The smart scheduler itimer currently always fires after each request
(which in turn causes the CPU to wake out of idle, burning precious
power). Rather than doing this, just stop the timer before going into
the select() portion of the WaitFor loop. It's a cheap system call, and
it will only get called if there's no more commands batched up from the
active fd.
This change also allows some of the functions to be simplified;
setitimer() will only fail if it's passed invalid data, and we don't do
that... so make it void and remove all the conditional code that deals
with failure.
The change also allows us to remove a few variables that were used for
housekeeping between the signal handler and the main loop.
Signed-off-by: Keith Packard <keithp@koto.keithp.com>
**Note**: The above change also required ABI changes in hw/nxagent/.
commit abe0a51f3f790f8c055289465e130177c4b647cc
Author: Ben Byer <bbyer@bbyer.apple.com>
Date: Fri Sep 21 17:07:36 2007 -0700
So, like, checking return codes of system calls (signal, etc) is good.
Also, only restore an old signal handler if one was actually set
(prevents the server from dying on OS X).
commit 6da39c67905500ab2db00a45cda4a9f756cdde96
Author: Eric Anholt <eric@anholt.net>
Date: Wed Sep 12 13:23:13 2007 +0000
Fix build on FreeBSD after Popen changes.
commit a5b8053606d6e786cdcf6734f271acc05f9cc588
Author: Adam Jackson <ajax@benzedrine.nwnk.net>
Date: Tue Sep 11 11:37:06 2007 -0400
Ignore - not just block - SIGALRM around Popen()/Pclose().
Because our "popen" implementation uses stdio, and because nobody's stdio
library is capable of surviving signals, we need to make absolutely sure
that we hide the SIGALRM from the smart scheduler. Otherwise, when you
open a menu in openoffice, and it recompiles XKB to deal with the
accelerators, and you popen xkbcomp because we suck, then the scheduler
will tell you you're taking forever doing something stupid, and the
wait() code will get confused, and input will hang and your CPU usage
slams to 100%. Down, not across.
Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Content of that file is now hard-coded.
Adopting an exact copy of os/oscolor.c from X.org leads to this compiler warning:
```
oscolor.c:844:1: warning: string length ‘7614’ is greater than the length ‘4095’ ISO C99 compilers are required to support [-Woverlength-strings]
};
^
```
This will be address later in coordination with X.org.
Note: there is a tiny change in oscolor.c as we ship it. The original X.org file includes <X11/keysym.h> which seems
unneeded. We drop that one line from oscolor.c.
Fixes ArcticaProject/nx-libs#259.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Backported from X.org:
commit 9f9268821b13038556fbc029df54ab0e9b2aa77f
Author: Mathieu Bérard <mathieu.berard@crans.org>
Date: Mon Aug 11 13:52:38 2008 -0400
The smart scheduler is not optional.
Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
|
|
|
|
| |
Relates to ArcticaProject/nx-libs#275.
|
|
|
|
| |
Relates to ArcticaProject/nx-libs#275.
|
|
|
|
| |
Relates to ArcticaProject/nx-libs#275.
|
|
|
|
| |
Fixes ArcticaProject/nx-libs#274.
|
|
|
|
| |
Fixes ArcticaProject/nx-libs#272.
|
|
|
|
| |
Fixes ArcticaProject/nx-libs#271.
|
| |
|
| |
|
|
|
|
| |
Just like upstream does
|
|
|
|
| |
just like upstream does
|
|
|
|
| |
that NoMachine placed there own copyright statement in.
|
|
|
|
|
|
|
|
|
| |
There's no sense verifying that we can create the lock file and then
ignoring the return value from write.
Signed-off-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Jamey Sharp <jamey@minilop.net>
Backport to nx-libs: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
{X,XNF}{alloc,calloc,realloc,free,strdup} from pre-C89 baggage
Backported from X.org:
commit cad9b053d52f62432dfd70e42e0240de77027cae
Author: Adam Jackson <ajax@redhat.com>
Date: Tue Jul 8 13:24:25 2014 -0400
os: Remove deprecated malloc/free wrappers
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
commit e983848ab44b0769f97f6207f1aa8b4f127be6a9
Author: Mikhail Gusarov <dottedmag@dottedmag.net>
Date: Thu May 6 00:16:24 2010 +0700
Clean {X,XNF}{alloc,calloc,realloc,free,strdup} from pre-C89 baggage
C89 guarantees alignment of pointers returned from malloc/calloc/realloc, so
stop fiddling with alignment manually and just pass the arguments to library
functions.
Also convert silent error when negative size is passed into function into
warning in log file.
Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Backport to nx-libs: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
|
| |
|
| |
|
|
|
|
| |
Fixes ArcticaProject/nx-libs#105
|
|
|
|
| |
(+|-rrxinerama).
|
|
|
|
| |
with system-wide shared libraries.
|
|
|
|
| |
extension.
|
| |
|
|
|
|
| |
extension.
|
|
|
|
| |
extension.
|
| |
|
| |
|
|
|
|
| |
extension.
|
| |
|
|
|
|
| |
extension.
|
| |
|
|
|
|
| |
extension.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the process of building nxagent against more and more system-wide installed
X.org libraries, we come to the limit of including structs from this (bundled
nx-X11) and that (system-wide X.Org) library.
This commit introduces a clear namespace separation of headers provided by
nx-X11 and headers provided by X.Org. This approach is only temporary as we
want to drop all nx-X11 bundled libraries from nx-libs.
However, for a while we need to make this separation clear and also ship
some reduced fake X.Org headers that avoid pulling in libX* and libNX_X*
symbols at the same time.
This patch has been tested on Debian jessie and unstable and requires no
overall testing on various distros and distro versions, as we finally will
drop all libNX_X* libraries and build against X.org's client libs.
For now, this hack eases our development / cleanup process.
|
|
|
|
|
|
|
|
|
|
| |
This lets us stop using the 'pointer' typedef in Xdefs.h as 'pointer'
is used throughout the X server for other things, and having duplicate
names generates compiler warnings.
Signed-off-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Rebased against NX: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
|
| |
|
|
|
|
|
|
|
|
| |
commit 6ba44b91e37622ef8c146d8f2ac92d708a18ed34
use O_NOFOLLOW to open the existing lock file, so symbolic links
aren't followed, thus avoid revealing if it point to an existing
file.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
relinquishing privileges (602_nx-X11_initgroups.full.patch).
The Fedora review of NX (redistributed) caught the following rpmlint issue:
This executable is calling setuid and setgid without setgroups or initgroups.
There is a high probability this mean it didn't relinquish all groups, and this
would be a potential security issue to be fixed. Seek POS36-C on the web for
details about the problem.
Ref POS36-C:
https://www.securecoding.cert.org/confluence/display/seccode/POS36-C.+Observe+correct+revocation+order+while+relinquishing+privileges
This patch adds initgroups() calls to the code to initialize the supplemental group list.
|
|
|
|
|
|
|
|
| |
Summary: Imported nx-X11-3.5.0-1.tar.gz
Keywords:
Imported nx-X11-3.5.0-1.tar.gz
into Git repository
|
|
|
|
|
|
|
|
| |
Summary: Imported nx-X11-3.4.0-3.tar.gz
Keywords:
Imported nx-X11-3.4.0-3.tar.gz
into Git repository
|
|
|
|
|
|
|
|
| |
Summary: Imported nx-X11-3.4.0-1.tar.gz
Keywords:
Imported nx-X11-3.4.0-1.tar.gz
into Git repository
|
|
|
|
|
|
|
|
| |
Summary: Imported nx-X11-3.3.0-5.tar.gz
Keywords:
Imported nx-X11-3.3.0-5.tar.gz
into Git repository
|
|
Summary: Imported nx-X11-3.1.0-1.tar.gz
Keywords:
Imported nx-X11-3.1.0-1.tar.gz
into Git repository
|