aboutsummaryrefslogtreecommitdiff
path: root/nx-X11
Commit message (Collapse)AuthorAgeFilesLines
* nxagent: Use SetNotifyFd to receive events.Mike Gabriel2017-03-174-3/+12
| | | | | | | | | | | | | Inspired by X.org commit: commit 55c2e1a3aa587c58a74066724e11e30b3df267b8 Author: Keith Packard <keithp@keithp.com> Date: Mon Dec 7 15:11:33 2015 -0800 xnest: Use SetNotifyFd to receive events Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
* os: Add NotifyFd interfacesKeith Packard2017-03-155-0/+118
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backported from X.org: commit 0c41b7af4ab0c8d22b88f201293f59524d1e7317 Author: Keith Packard <keithp@keithp.com> Date: Wed Nov 11 22:02:02 2015 -0800 os: Add NotifyFd interfaces This provides a callback-based interface to monitor file descriptors beyond the usual client and device interfaces. Modules within the server using file descriptors for reading and/or writing can call Bool SetNotifyFd(int fd, NotifyFdProcPtr notify_fd, int mask, void *data); mask can be any combination of X_NOTIFY_READ and X_NOTIFY_WRITE. When 'fd' becomes readable or writable, the notify_fd function will be called with the 'fd', the ready conditions and 'data' values as arguments, When the module no longer needs to monitor the fd, it will call void RemoveNotifyFd(int fd); RemoveNotifyFd may be called from the notify function. Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Keith Packard <keithp@keithp.com> Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
* Xserver/include/list.h: Add list.h from X.org (from X.org commit 63f83d1).Mike Gabriel2017-03-152-0/+495
|
* os/xdmcp: Just send XDMCP keepalive packets once every three minuteKeith Packard2017-03-151-22/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backported from X.org: commit db1089eafc1c5371fa0030202de588d2e2b4f8e5 Author: Keith Packard <keithp@keithp.com> Date: Mon Sep 21 07:16:17 2015 +0100 os/xdmcp: Just send XDMCP keepalive packets once every three minutes There was a complicated scheme to increase the time between keepalives from 3 minutes up to as much as 24 hours in an attempt to reduce network traffic from idle X terminals. X terminals receiving X traffic, or receiving user input would use the 3 minute value; X terminals without any network traffic would use a longer value. However, this was actually broken -- any activity in the X server, either client requests or user input, would end up resetting the keepalive timeout, so a user mashing on the keyboard would never discover that the XDMCP master had disappeared and have the session terminated, which was precisely the design goal of the XDMCP keepalive mechanism. Instead of attempting to fix this, accept the cost of a pair of XDMCP packets once every three minutes and just perform keepalives regularly. This will also make reworking the block and wakeup handler APIs to eliminate select masks easier. Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Keith Packard <keithp@keithp.com> Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
* Keystroke.c: remove unneeded capital keys for default keystrokesUlrich Sibiller2017-03-131-11/+0
|
* Keystroke.c: add new keystroke to reread keystroke configUlrich Sibiller2017-03-132-6/+34
| | | | Default is ctrl-alt-k
* Keystroke.c: simplify parse_keystroke_fileUlrich Sibiller2017-03-131-36/+15
|
* Keystroke.c: fix formattingUlrich Sibiller2017-03-131-1/+1
|
* Keystroke.c: use an own environment variable for X2GoUlrich Sibiller2017-03-131-3/+10
|
* Keystroke.c: make nxagentKeystrokeFileParsed localUlrich Sibiller2017-03-131-4/+5
|
* Keystroke.c: add missing Mod5 modifierUlrich Sibiller2017-03-131-0/+1
|
* Keystroke.c: fix code orderUlrich Sibiller2017-03-131-1/+3
| | | | Do not use map before calling parse_keystroke_file() since it will malloc map.
* Keystroke.h: sane struct initUlrich Sibiller2017-03-131-0/+1
| | | | | Correctly use constant for unused structs instead of implicitly setting it through calloc().
* Keyboard.c: Introduce separate masks for Alt and MetaUlrich Sibiller2017-03-131-0/+8
| | | | Unclear why they have been merged at all.
* Keystroke.c: Fix modifier handlingUlrich Sibiller2017-03-131-1/+2
| | | | | | Code could not distinguish between ctrl-alt-shift and ctrl-alt. Fixes ArcticaProject/nx-libs#395
* Keystroke.c: more/fixed debug outputUlrich Sibiller2017-03-131-2/+17
|
* Keystroke: whitespace fixesUlrich Sibiller2017-03-132-2/+2
|
* Keystroke.c: arrange switch_all_screens and fullscreen close togetherUlrich Sibiller2017-03-132-17/+17
| | | | | Both use the same keystroke 'f' (with different modifiers) for a very similar function.
* Keystroke.c: print keystroke name in TEST modeUlrich Sibiller2017-03-131-2/+6
|
* Keystroke.c: improve TEST outputUlrich Sibiller2017-03-131-3/+3
|
* Keystroke.c: add another FIXMEUlrich Sibiller2017-03-131-0/+2
|
* Keystroke.c: Simplify read_binding_from_xmlnodeUlrich Sibiller2017-03-131-16/+17
|
* Keystroke.c: use symbols instead of integersUlrich Sibiller2017-03-131-2/+4
| | | | We have defined them, so use them!
* Keystroke.c: Boolify read_binding_from_xmlnodeUlrich Sibiller2017-03-132-45/+45
|
* Keystroke.c: Boolify nxagentCheckSpecialKeystrokeUlrich Sibiller2017-03-132-8/+8
|
* Keystroke.c: reorder parse_keystroke_fileUlrich Sibiller2017-03-131-7/+5
| | | | for better readability
* Keystroke.c: handle parsing state in parse_keystroke_file()Ulrich Sibiller2017-03-131-5/+6
|
* Keystroke.c: simplify nxagentCheckSpecialKeystrokeUlrich Sibiller2017-03-131-19/+3
|
* Keystroke.c: fix code formattingUlrich Sibiller2017-03-131-5/+4
|
* Keystroke.c: rework read_binding_from_xmlnode()Ulrich Sibiller2017-03-111-54/+30
| | | | code cleanup
* Keystroke.c: use Bool type where appropriateUlrich Sibiller2017-03-111-4/+4
|
* Xext: fix compiler warningUlrich Sibiller2017-03-101-1/+1
| | | | | | xf86bigfont.c: In function ‘ProcXF86BigfontQueryFont’: xf86bigfont.c:724:9: warning: ‘pDesc’ may be used uninitialized in this function [-Wmaybe-uninitialized] if (!pDesc) free(pCI);
* xfixes: fix compiler warningUlrich Sibiller2017-03-101-2/+3
| | | | | | | | | | | | | | | | | | | cursor.c: In function ‘TestForCursorName’: cursor.c:649:30: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] return (pCursor->name == (Atom) closure); ^ cursor.c: In function ‘ProcXFixesChangeCursorByName’: cursor.c:665:45: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] ReplaceCursor (pSource, TestForCursorName, (void *) name); ^ Backport of commit 019ad5acd20e34dc2aa3b89cc426138db5164c48 Author: Eamon Walsh <ewalsh@tycho.nsa.gov> Date: Tue Feb 5 15:44:41 2008 -0500 XFixes: squash a pointer/integer size mismatch warning.
* xfixes: fix compiler warningsUlrich Sibiller2017-03-101-2/+2
| | | | | | | | | | | cursor.c: In function ‘ProcXFixesGetCursorName’: cursor.c:399:6: warning: assignment discards ‘const’ qualifier from pointer target type [enabled by default] str = NameForAtom (pCursor->name); ^ cursor.c: In function ‘ProcXFixesGetCursorImageAndName’: cursor.c:453:10: warning: assignment discards ‘const’ qualifier from pointer target type [enabled by default] name = pCursor->name ? NameForAtom (pCursor->name) : ""; ^
* render/filter.c: add missing return valueUlrich Sibiller2017-03-101-1/+1
| | | | | | | | | Fixes filter.c: In function ‘SetPicturePictFilter’: filter.c:363:5: warning: ‘return’ with no value, in function returning non-void [enabled by default] return ; ^
* record.c: fix compiler warningsUlrich Sibiller2017-03-101-3/+3
| | | | | | | | | | | | | | | | | | | | | | record.c: In function ‘RecordAReply’: record.c:714:7: warning: passing argument 4 of ‘RecordAProtocolElement’ discards ‘const’ qualifier from pointer target type [enabled by default] pri->replyData, pri->dataLenBytes, /* continuation */ -1); ^ record.c:286:1: note: expected ‘void *’ but argument is of type ‘const void *’ RecordAProtocolElement(RecordContextPtr pContext, ClientPtr pClient, ^ record.c:724:10: warning: passing argument 4 of ‘RecordAProtocolElement’ discards ‘const’ qualifier from pointer target type [enabled by default] pri->replyData, pri->dataLenBytes, pri->bytesRemaining); ^ record.c:286:1: note: expected ‘void *’ but argument is of type ‘const void *’ RecordAProtocolElement(RecordContextPtr pContext, ClientPtr pClient, ^ record.c:746:5: warning: passing argument 4 of ‘RecordAProtocolElement’ discards ‘const’ qualifier from pointer target type [enabled by default] pri->dataLenBytes, pri->bytesRemaining); ^ record.c:286:1: note: expected ‘void *’ but argument is of type ‘const void *’ RecordAProtocolElement(RecordContextPtr pContext, ClientPtr pClient, ^
* fb: fix compiler warningUlrich Sibiller2017-03-101-2/+0
| | | | | | fbtrap.c: In function ‘fbRasterizeTrapezoid’: fbtrap.c:113:12: warning: variable ‘x_off_fixed’ set but not used [-Wunused-but-set-variable] xFixed x_off_fixed;
* dix: Fix compiler warningUlrich Sibiller2017-03-101-1/+2
| | | | | | devices.c: In function ‘_AddInputDevice’: devices.c:120:22: warning: assignment from incompatible pointer type [enabled by default] dev->devPrivates = dev->unwrapProc = NULL;
* Display.c: remove unused logo codeUlrich Sibiller2017-03-101-37/+0
|
* Rootless.c: improve debugging outputUlrich Sibiller2017-03-101-4/+4
|
* Rootless.c: improve malloc failure handlingUlrich Sibiller2017-03-101-2/+34
|
* Rootless.c: fix possible memleakUlrich Sibiller2017-03-101-0/+1
|
* Display.c: pid is always 0, remove checkUlrich Sibiller2017-03-101-1/+1
|
* Window.c: Fix reference before check for null pointerUlrich Sibiller2017-03-101-3/+7
|
* Keyboard.c: Simplify if clauseUlrich Sibiller2017-03-101-4/+2
|
* Rootless.c: Fix wrongly negated comparisonsUlrich Sibiller2017-03-101-2/+2
|
* Args.c: Fix missing parenthesesUlrich Sibiller2017-03-101-0/+2
|
* xkb: Allow NULL as rulesFile in XkbSetRulesDflts.Peter Hutterer2017-03-071-5/+25
| | | | | | | | | | | If no rules file is given, simply re-use the previous one. If no RF is given the first time this function is called, use the built-in default. This includes fixing the built-in default to something that actually exists. Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com> Backported-to-NX-by: Ulrich Sibiller <uli42@gmx.de> Fixes ArcticaProject/nx-libs#371
* os: add timingsafe_memcmp to ImakeUlrich Sibiller2017-03-042-2/+10
| | | | | There might be some library linking missing on platforms that deliver timingsafe_memcmp but I cannot test that here.
* Backport CVE-2017-2624 (timingsafe_memcmp)Ulrich Sibiller2017-03-034-3/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes ArcticaProject/nx-libs#365 These two commits: commit 5c44169caed811e59a65ba346de1cadb46d266ec Author: Adam Jackson <ajax@redhat.com> Date: Thu Mar 2 17:20:30 2017 -0500 os: Squash missing declaration warning for timingsafe_memcmp timingsafe_memcmp.c:21:1: warning: no previous prototype for ‘timingsafe_memcmp’ [-Wmissing-prototypes] timingsafe_memcmp(const void *b1, const void *b2, size_t len) Signed-off-by: Adam Jackson <ajax@redhat.com> commit d7ac755f0b618eb1259d93c8a16ec6e39a18627c Author: Matthieu Herrb <matthieu@herrb.eu> Date: Tue Feb 28 19:18:25 2017 +0100 Use timingsafe_memcmp() to compare MIT-MAGIC-COOKIES CVE-2017-2624 Provide the function definition for systems that don't have it. Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>