aboutsummaryrefslogtreecommitdiff
path: root/nx-X11
Commit message (Collapse)AuthorAgeFilesLines
* nx-X11/config/cf/{gnu,lnx}Lib.rules: add RPATH entries for temporary nxcomp ↵Mihai Moldovan2018-01-112-6/+6
| | | | | | | | and nxcompshad libraries. No change to the actually installed relinked nxagent(-relink) binary that gets installed - only affects the temporary executable build binary.
* panoramiX: fix includesUlrich Sibiller2018-01-082-4/+4
|
* Re-enable XC-MISC extensionUlrich Sibiller2018-01-082-2/+3
| | | | | | Got dropped by accident in 9bc6ff269aa8bf4c41696ebf4a686c93729ba151 Fixes ArcticaProject/nx-libs#589
* Display.c: drop helper variable in loopUlrich Sibiller2018-01-071-4/+2
|
* Error.c: replace malloc+strcpy by strdupUlrich Sibiller2018-01-071-5/+3
|
* Events.c: add FIXMEUlrich Sibiller2018-01-071-0/+1
|
* Keyboard.c: rework string allocation/buildingUlrich Sibiller2018-01-071-14/+10
|
* Keystroke.c: replace calloc + 2 * strcpy by asprintfUlrich Sibiller2018-01-071-3/+1
|
* Font.c: replace malloc + strcpy by strdup + fix memleakUlrich Sibiller2018-01-071-2/+3
|
* Font.c: free possibly allocated memUlrich Sibiller2018-01-071-0/+5
| | | | even if we issue a FatalError afterwards
* Font.c: replace memcpy by sprintf preventing possible buffer overflowsUlrich Sibiller2018-01-071-9/+3
| | | | | | I am not sure about the maximum font name length in X but just in case use snprintf instead of memcpy to be sure nothing dangerous can happen here.
* Args.c: simplify nxagentGetDialogName()Ulrich Sibiller2018-01-071-11/+4
|
* Args.c, Error.[ch]: introduce own length macro for nxagentClientsLogNameUlrich Sibiller2018-01-073-5/+6
|
* Args.c: use strdup instead of mallocUlrich Sibiller2018-01-071-35/+7
|
* Error.c: update nxagentPrintErrorUlrich Sibiller2018-01-071-6/+8
| | | | | | | This is a partial copy from XlibInt.c's _XPrintDefaultError, which had some minor changes since being copied. Update to reflect these changes. Also comment some more lines as their result was unused an cluttered the output.
* Error.c: replace strcpy/strcat by snprintfUlrich Sibiller2018-01-072-21/+13
|
* Error.c: use standard file descriptor macrosUlrich Sibiller2018-01-071-3/+3
|
* Error.c: remove trailing whitespaceUlrich Sibiller2018-01-071-5/+5
| | | | and insert one single space
* Error.c: remove empty ifdefUlrich Sibiller2018-01-071-4/+0
|
* Font.c: pass down sizeUlrich Sibiller2018-01-071-6/+5
|
* Display.c: pass down buffer size to nxagentLookForIconFileUlrich Sibiller2018-01-071-24/+22
| | | | Also comment the code and convert error messages to warnings.
* Replace hardcoded string lengths by macrosUlrich Sibiller2018-01-076-69/+43
|
* Font.c: make nxagentGetFontServerPath more readableUlrich Sibiller2018-01-071-4/+5
|
* Screen.c: string handling improvementsUlrich Sibiller2018-01-071-16/+10
|
* Font.c: shorten string handlingUlrich Sibiller2018-01-071-18/+7
|
* Keyboard.c: replace malloc + strcpy by asprintfUlrich Sibiller2018-01-071-6/+4
|
* Keyboard.c: improve user messages for keyboard file handlingUlrich Sibiller2018-01-071-1/+1
|
* Keyboard.c: fix memory leakUlrich Sibiller2018-01-071-1/+3
|
* Dialog.c: fix possible buffer overflowsUlrich Sibiller2018-01-071-0/+13
| | | | Fix write past the end of singlePath if PATH contains dirs longer than PATH_MAX.
* Dialog.c,Display.c,NXdixfonts.c: replace strncpy() by snprintf where appropriateUlrich Sibiller2018-01-075-17/+11
|
* Dialog.c,Display.c,Font.c,NXdixfonts.c: don't use hardcoded string buffer ↵Ulrich Sibiller2018-01-074-20/+18
| | | | lengths
* nx-X11: reintroduce creation of libX11 compat symlinks.Mihai Moldovan2017-12-302-0/+25
| | | | | We need this to be able to execute the resulting nxagent binary from within the build directory.
* nx-X11: build programs with a temporary RPATH/RUNPATH value and a relinked ↵Mihai Moldovan2017-12-307-10/+78
| | | | | | | | | version with the system location. While the install target explicitly installs the relinked system-location version of a program, we do not actually use this. Currently, we copy nxagent directly out of the build root.
* nx-X11/config/cf/{gnu,lnx}Lib.rules: enable new ELF dtags to force RUNPATH ↵Mihai Moldovan2017-12-302-6/+6
| | | | creation for nxagent.
* nxagent: implement RPATH/RUNPATH override for libX11.Mihai Moldovan2017-12-303-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | As discussed in ArcticaProject/nx-libs#610, we need a way to load libNX_X11 as a fake version of libX11 into nxagent's address space. For doing so, we have to link against libX11 at build-time and specify a(n) RPATH/RUNPATH to our libX11 -> libNX_X11 compat symlinks. This commit is essentially doing a cross between options 3 and 4 discussed in the provided GH issue. We link libX11 early (before specifying -Lcompat_symlinks_dir), so that the linker finds the "real" libX11 version with the libX11 SONAME. This leads to our binary depending upon both libX11 and libNX_X11 SONAMEs. We already always added RPATH/RUNPATH, but these values are not passed down to dependent libraries. What happens at run-time is that the loader searches for a libX11 SONAME, takes RPATH/RUNPATH into account and loads our libNX_X11 library instead via the compat symlinks. This satisfies the libX11 SONAME and dependent libraries will *not* load the system libX11 version again. Debian's dpkg-shlibdeps isn't quite happy about this mismatching SONAME situation, so instruct to look the other way while we're minding our business. Fixes: ArcticaProject/nx-libs#610
* reduce usage of uninitialised bytesUlrich Sibiller2017-12-2812-104/+86
| | | | as reported by valgrind
* nx-X11/programs/Xserver/hw/nxagent/Screen.c: re-enable normal error/warning ↵Mihai Moldovan2017-12-241-2/+2
| | | | | | output. Was dropped erroneously in cec31e2f06b29b332ee78cfefeefa7bfa136be75.
* nx-X11/programs/Xserver/hw/nxagent/Screen.c: update screen size after ↵Mihai Moldovan2017-12-241-0/+7
| | | | | | | modifying CRTC modes. This should get rid of the infamous "800x600 screen size" issue reproduced in X2Go whole display setups.
* nx-X11/extras/Mesa.patches_6.4.2/4002_no-special-glx-memfunctions.patch: ↵Mihai Moldovan2017-12-191-5/+6
| | | | | | | include stdlib.h and string.h for memset, malloc and free prototypes. Without that they are only implicitly defined - leading to build failures on *SUSE.
* Drop SHMNAME workaround again, it *is* defined in shmstr.h, which is ↵Mihai Moldovan2017-12-163-8/+2
| | | | actually header I was searching for.
* nx-X11/programs/Xserver/Xext/shape.c: avoid pulling in Xlib in legacy mode ↵Mihai Moldovan2017-12-161-0/+7
| | | | via the _SHAPE_SERVER_ macro.
* nx-X11/programs/Xserver/Xext/shape.c: pull in shapestr.h for legacy Xext ↵Mihai Moldovan2017-12-161-1/+1
| | | | proto versions, since shape.h would pull in Xlib.
* Handle SHAPE proto splitup gracefully for legacy Xext proto versions.Mihai Moldovan2017-12-161-0/+4
|
* zlib compatibility: whenever we want -I flags only, assume that the headers ↵Mihai Moldovan2017-12-162-3/+3
| | | | | | are directly available. Especially don't add linking flags willy-nilly.
* nx-X11/programs/Xserver/include/misc.h: add compat define for SHMNAME.Mihai Moldovan2017-12-161-0/+6
|
* Support building with legacy zlib versions that do not ship a pkg-config file.Mihai Moldovan2017-12-163-4/+4
|
* Support building with legacy (pre-7.1.0) Xext proto versions.Mihai Moldovan2017-12-165-1/+29
| | | | | Legacy Xext proto versions are automatically detected by the main Makefile.
* Support building with legacy (pre-1.4.2) libXfont(1) versions.Mihai Moldovan2017-12-165-0/+28
| | | | | | | | Partly reverts ec30a857eb0d67b232f8d43e63a6370023f4c4d0, but in a forward-compatible manner. Legacy libXfont1 versions are automatically detected by the main Makefile.
* {nx-X11/lib,nxproxy}/Makefile.am: also use correct aclocal flags in the ↵Mihai Moldovan2017-12-151-0/+2
| | | | other locations.
* nx-X11/config/cf/linux.cf: recursive macros aren't a thing.Mihai Moldovan2017-12-151-1/+1
| | | | Just copy-paste the initial definition to avoid recursion.