aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* nxagent: add command line switch to enable compositeUlrich Sibiller2021-06-085-7/+20
| | | | We have it disabled by default but there hasn't been a way to enable it.
* Compext.c: fix comparisons of 16bit sequence numbersUlrich Sibiller2021-06-081-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rep->generic.sequenceNumber is of type CARD16 state->sequence is of type unsigned long Converting state->sequence to an int as it has been done since the first version of nxcomp I know of (1.3.0-18 from 2003) is wrong here because for numbers > INT_MAX this will result in a negative number, which, after applying the 16bit modulo, will not match rep->generic.sequenceNumber. Example with numbers: CARD16 c = 24565 unsigned long u = 3179110389 c % 65536 = 24565 u % 65536 = 24565 (int)(u) = -1115856907 (int)(u) % 65536 = -40971 -40971 will not match 24565 To fix this we need to ensure the number stays positive. We use CARD16 for this to match the type in the request which is a 16bit number. On my system CARD16 is unsigned short which is guaranteed to contain _at least_ the 0-65,535 range. As there is no upper limit of the range we cannot drop the modulo because we need this value to be 16bit and not more. Thanks to Norm Green for providing log after log until we could finally identify the reason for him seeing "Xlib: unexpected async reply (sequence 0x94b01439)!" when pasting stopped working.
* Compext.c: fix misleading error messageUlrich Sibiller2021-06-081-5/+6
| | | | | An X reply contains a type which is X_Reply or X_Error. This is not an opcode which is used when installing the handler.
* Compext.c: print received vs expected sequence numberUlrich Sibiller2021-06-081-0/+28
| | | | Should help in debugging "unexpected async reply" problems
* Compext.c: document function return codesUlrich Sibiller2021-06-081-0/+64
|
* document additional options only nxagent knows aboutUlrich Sibiller2021-06-083-36/+58
|
* Error.c: untabifyUlrich Sibiller2021-06-081-75/+75
|
* nxagent: drop NXAGENT_SHAPE2 defineUlrich Sibiller2021-06-082-26/+10
| | | | | it was the default for years now, so let's drop the define and include the code unconditonally.
* nxagent: drop NXAGENT_SHAPE defineUlrich Sibiller2021-06-082-16/+5
| | | | | was never used in the past years, we were always compiling with -DNXAGENT_SHAPE2
* nxagent: make X2GO support optionalUlrich Sibiller2021-06-0810-3/+39
|
* Use NXAGENT_ONSTART define at more locationsUlrich Sibiller2021-06-086-2/+15
| | | | | marking all the code that is not really required when not using nomachine's nxclient.
* Compext.c: add specific DEBUG and TEST macrosUlrich Sibiller2021-06-081-143/+159
|
* Compext.c: some scope improvementsUlrich Sibiller2021-06-081-37/+10
|
* Merge branch 'Ponce-binutils-2.36' into 3.6.xMike Gabriel2021-06-081-12/+0
|\ | | | | | | Attributes GH PR #1012: https://github.com/ArcticaProject/nx-libs/pull/1012
| * fix building with binutils >= 2.36.ponce2021-06-081-12/+0
|/ | | | | | The l option of ar in the newer binutils versions switched from being unused to being used to specify dependencies so here should be safely removed
* Merge branch 'uli42-pr/fix_randr_crash' into 3.6.xMike Gabriel2021-06-081-0/+3
|\ | | | | | | Attributes GH PR #1011: https://github.com/ArcticaProject/nx-libs/pull/1011
| * randr: Do not update ConnectionInfo if NULLUlrich Sibiller2021-06-081-0/+3
|/ | | | | | | | | | | | | | | | | | | | | | Backport of this xorg-xserver commit: commit 941aeb3b92e644923bd112eef8023f033a140ee6 Author: Olivier Fourdan <ofourdan@redhat.com> Date: Fri May 13 08:58:58 2016 +0200 randr: Do not update ConnectionInfo if NULL RRScreenSizeNotify() will update the connection information block, but if this occurs during initialization before ConnectionInfo is even initialized, this will lead to a crash. Simply check for ConnectionInfo prior to update it to avoid the crash. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95337 Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Olivier Fourdan <ofourdan@redhat.com> Fixes ArcticaProject/nx-libs#1009
* Merge branch 'uli42-pr/fix_async_replies' into 3.6.xMike Gabriel2021-06-081-4/+4
|\ | | | | | | Attributes GH PR #1010: https://github.com/ArcticaProject/nx-libs/pull/1010
| * Compext.c: fix comparisons of 16bit sequence numbersUlrich Sibiller2021-06-081-4/+4
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rep->generic.sequenceNumber is of type CARD16 state->sequence is of type unsigned long Converting state->sequence to an int as it has been done since the first version of nxcomp I know of (1.3.0-18 from 2003) is wrong here because for numbers > INT_MAX this will result in a negative number, which, after applying the 16bit modulo, will not match rep->generic.sequenceNumber. Example with numbers: CARD16 c = 24565 unsigned long u = 3179110389 c % 65536 = 24565 u % 65536 = 24565 (int)(u) = -1115856907 (int)(u) % 65536 = -40971 -40971 will not match 24565 To fix this we need to ensure the number stays positive. We use CARD16 for this to match the type in the request which is a 16bit number. On my system CARD16 is unsigned short which is guaranteed to contain _at least_ the 0-65,535 range. As there is no upper limit of the range we cannot drop the modulo because we need this value to be 16bit and not more. Thanks to Norm Green for providing log after log until we could finally identify the reason for him seeing "Xlib: unexpected async reply (sequence 0x94b01439)!" when pasting stopped working.
* Merge branch 'vatral-support_cygwin64' into 3.6.xMike Gabriel2021-06-0810-25/+25
|\ | | | | | | Attributes GH PR #1008: https://github.com/ArcticaProject/nx-libs/pull/1008
| * nxcomp/src/BlockCacheSet.cpp: Amend comment behind if-clause closure.Mike Gabriel2021-06-081-1/+1
| |
| * nxcomp: Support Cygwin64.Vadim Troshchinskiy2021-06-0810-25/+25
|/ | | | 64 bit Cygwin defines __CYGWIN__ instead of __CYGWIN32__
* Merge branch 'uli42-pr/dialog_text' into 3.6.xMike Gabriel2021-06-083-21/+47
|\ | | | | | | Attributes GH PR #1004: https://github.com/ArcticaProject/nx-libs/pull/1004
| * nxagent: fix RESIZE dialog text to not end with a linefeedUlrich Sibiller2021-06-082-5/+3
| | | | | | | | It was the only dialog that had a linefeed a the end.
| * nxcomp/Children.cpp: print a message if the dialog could not be displayedUlrich Sibiller2021-06-081-0/+9
| |
| * nxcomp/Children.cpp: reformat codeUlrich Sibiller2021-06-081-11/+0
| | | | | | | | drop some superflous empty lines to make code more compact.
| * nxcomp/Children.cpp: also try searching nxdialog, not only nxclientUlrich Sibiller2021-06-081-2/+20
| |
| * nxcomp/Children.cpp: add macro checks around some log/stderr printsUlrich Sibiller2021-06-081-2/+6
| | | | | | | | This helps no flooding the output with (double) messages.
| * nxcomp/Children.cpp: display dialog text in outputUlrich Sibiller2021-06-081-1/+9
|/ | | | | | | | This ensures the dialog text is visible in the log which is useful when the dialog display tool (nxclient, nxdialog, ...) fails or cannot be found. Fixes ArcticaProject/nx-libs#915
* Merge branch 'uli42-pr/forward_clientmessages' into 3.6.xMike Gabriel2021-06-083-0/+72
|\ | | | | | | Attributes GH PR #1016: https://github.com/ArcticaProject/nx-libs/pulls
| * Forward ClientMessages to nxproxy sideUlrich Sibiller2021-06-073-0/+72
|/ | | | | | | | | | | | This should help with clients requesting window manager actions like maximizing or minimizing. This is a first version as it only handles messages of type WM_STATE_CHANGE and _NET_WM_STATE. But ICCCM and EWMH know some more. The other direction, setting of properties by the WM, is already implemented in Rootless.c. Fixes ArcticaProject/nx-libs#1015
* Merge branch 'sunweaver-pr/fix-ci-builds-against-fedora-greater-than-33' ↵Mike Gabriel2021-06-072-1/+5
|\ | | | | | | | | | | into 3.6.x Attributes GH PR #1017: https://github.com/ArcticaProject/nx-libs/pull/1017
| * nx-libs.spec: In Fedora 34 and beyond, files from xorg-x11-xkb-utils-devel ↵Mike Gabriel2021-06-071-0/+4
| | | | | | | | have been moved into bin:pkg xkbcomp-devel.
| * .github/workflows/nx-libs.yml: In Fedora 34 and beyond, files from ↵Mike Gabriel2021-06-071-1/+1
|/ | | | xorg-x11-xkb-utils-devel have been moved into bin:pkg xkbcomp-devel.
* Merge branch 'uli42-pr/pylint_fixes' into 3.6.xMike Gabriel2021-06-071-26/+35
|\ | | | | | | Attributes GH PR #1002: https://github.com/ArcticaProject/nx-libs/pull/1002
| * nxdialog: fix/suppress some pylint findingsUlrich Sibiller2021-06-071-26/+35
|/ | | | | | | | | | | | | | Increase pylint scrore from 9.5 to 10.0 I: 61, 0: Locally disabling wrong-import-position (C0413) (locally-disabled) W:119, 0: TODO: Show title item in bold font (fixme) W:390, 0: TODO: Implement all dialog types (fixme) C: 41, 0: Trailing whitespace (trailing-whitespace) C: 50, 0: Line too long (108/100) (line-too-long) W:158,30: Unused argument '_ypos' (unused-argument) W:158,23: Unused argument '_xpos' (unused-argument) W:291,15: Catching too general exception Exception (broad-except) R:333, 4: Too many branches (15/12) (too-many-branches)
* Merge branch 'mjtrangoni-fix-shellcheck-issues' into 3.6.xMike Gabriel2021-06-073-13/+13
|\ | | | | | | Attributes GH PR #1001: https://github.com/ArcticaProject/nx-libs/pull/1001
| * shellcheck: Fix SC2230 issueMike Gabriel2021-06-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | ./nx-X11/x-indent.sh line 5: INDENT=$(which gnuindent || which gindent || which indent) ^---^ SC2230: which is non-standard. Use builtin 'command -v' instead. ^---^ SC2230: which is non-standard. Use builtin 'command -v' instead. ^---^ SC2230: which is non-standard. Use builtin 'command -v' instead. For more information: https://www.shellcheck.net/wiki/SC2230 -- which is non-standard. Use builti... Signed-off-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
| * shellcheck: Fix SC2022 issueMario Trangoni2021-06-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | $ find . -name "*.sh" | xargs shellcheck -i SC2022 In ./roll-tarballs.sh line 120: ls -d nx-X11/extras/* | grep -v "nx-X11/extras/tmpMesa*" | xargs rm -r ^----------------------^ SC2022: Note that unlike globs, a* here matches 'aaa' but not 'alpha'. For more information: https://www.shellcheck.net/wiki/SC2022 -- Note that unlike globs, a* here m... Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
| * shellcheck: Fix SC2064 issuesMario Trangoni2021-06-071-1/+1
| | | | | | | | | | | | | | For more information: https://www.shellcheck.net/wiki/SC2064 -- Use single quotes, otherwise this... Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
| * shellcheck: Fix SC2164 issuesMario Trangoni2021-06-071-10/+10
|/ | | | | | | For more information: https://www.shellcheck.net/wiki/SC2164 -- Use 'cd ... || exit' or 'cd ... |... Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
* Merge branch 'test-github-actions' into 3.6.xMike Gabriel2021-06-077-224/+394
|\ | | | | | | Attributes GH PR #974: https://github.com/ArcticaProject/nx-libs/pull/974
| * Add pylint to GitHub ActionsMario Trangoni2021-02-071-0/+21
| | | | | | | | Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
| * Install build-essentials on clangMario Trangoni2021-02-071-0/+3
| | | | | | | | Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
| * Add linter referencesMario Trangoni2021-02-071-0/+4
| | | | | | | | Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
| * Fix missing quilt on CentOS7Mario Trangoni2021-02-071-2/+4
| | | | | | | | Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
| * Build nx-libs on different architecturesMario Trangoni2021-02-061-0/+81
| | | | | | | | Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
| * linters: Enable shellcheckMario Trangoni2021-02-061-1/+1
| | | | | | | | | | | | This will be green after #1001 get merged. Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
| * Move PVS run to GitHub ActionsMario Trangoni2021-02-063-42/+59
| | | | | | | | Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
| * Replace TravisCI with GitHub ActionsMario Trangoni2021-02-063-187/+1
| | | | | | | | Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>