Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | nx-X11/config/cf/{gnu,lnx}Lib.rules: add RPATH entries for temporary nxcomp ↵ | Mihai Moldovan | 2018-01-11 | 2 | -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. | ||||
* | Merge branch 'Ionic-bugfix/ctime' into 3.6.x | Mihai Moldovan | 2018-01-09 | 3 | -22/+66 |
|\ | | | | | | | | | | | Attributes GH PR #623: https://github.com/ArcticaProject/nx-libs/pull/623 Fixes: ArcticaProject/nx-libs#616 | ||||
| * | nxcomp/src/Timestamp.{cpp,h}: use ::ctime_s or ::ctime_r instead of plain ↵ | Mihai Moldovan | 2018-01-09 | 2 | -22/+49 |
| | | | | | | | | | | | | ctime, on-stack buffers and return std::string objects. Fixes: ArcticaProject/nx-libs#616 | ||||
| * | nxcomp/configure.ac: add check for ::ctime_s. | Mihai Moldovan | 2018-01-08 | 1 | -0/+17 |
|/ | |||||
* | Merge branch 'uli42-pr/fix_xext_includes' into 3.6.x | Mihai Moldovan | 2018-01-08 | 2 | -4/+4 |
|\ | | | | | | | Attributes GH PR #629: https://github.com/ArcticaProject/nx-libs/pull/629 | ||||
| * | panoramiX: fix includes | Ulrich Sibiller | 2018-01-08 | 2 | -4/+4 |
|/ | |||||
* | Merge branch 'uli42-pr/reenable_xc-misc' into 3.6.x | Mihai Moldovan | 2018-01-08 | 2 | -2/+3 |
|\ | | | | | | | | | | | Attributes GH PR #628: https://github.com/ArcticaProject/nx-libs/pull/628 Fixes: ArcticaProject/nx-libs#589 | ||||
| * | Re-enable XC-MISC extension | Ulrich Sibiller | 2018-01-08 | 2 | -2/+3 |
|/ | | | | | | Got dropped by accident in 9bc6ff269aa8bf4c41696ebf4a686c93729ba151 Fixes ArcticaProject/nx-libs#589 | ||||
* | Merge branch 'uli42-pr/fix_strings' into 3.6.x | Mihai Moldovan | 2018-01-07 | 14 | -275/+182 |
|\ | | | | | | | Attributes GH PR #567: https://github.com/ArcticaProject/nx-libs/pull/567 | ||||
| * | Display.c: drop helper variable in loop | Ulrich Sibiller | 2018-01-07 | 1 | -4/+2 |
| | | |||||
| * | Error.c: replace malloc+strcpy by strdup | Ulrich Sibiller | 2018-01-07 | 1 | -5/+3 |
| | | |||||
| * | Events.c: add FIXME | Ulrich Sibiller | 2018-01-07 | 1 | -0/+1 |
| | | |||||
| * | Keyboard.c: rework string allocation/building | Ulrich Sibiller | 2018-01-07 | 1 | -14/+10 |
| | | |||||
| * | Keystroke.c: replace calloc + 2 * strcpy by asprintf | Ulrich Sibiller | 2018-01-07 | 1 | -3/+1 |
| | | |||||
| * | Font.c: replace malloc + strcpy by strdup + fix memleak | Ulrich Sibiller | 2018-01-07 | 1 | -2/+3 |
| | | |||||
| * | Font.c: free possibly allocated mem | Ulrich Sibiller | 2018-01-07 | 1 | -0/+5 |
| | | | | | | | | even if we issue a FatalError afterwards | ||||
| * | Font.c: replace memcpy by sprintf preventing possible buffer overflows | Ulrich Sibiller | 2018-01-07 | 1 | -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 Sibiller | 2018-01-07 | 1 | -11/+4 |
| | | |||||
| * | Args.c, Error.[ch]: introduce own length macro for nxagentClientsLogName | Ulrich Sibiller | 2018-01-07 | 3 | -5/+6 |
| | | |||||
| * | Args.c: use strdup instead of malloc | Ulrich Sibiller | 2018-01-07 | 1 | -35/+7 |
| | | |||||
| * | Error.c: update nxagentPrintError | Ulrich Sibiller | 2018-01-07 | 1 | -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 snprintf | Ulrich Sibiller | 2018-01-07 | 2 | -21/+13 |
| | | |||||
| * | Error.c: use standard file descriptor macros | Ulrich Sibiller | 2018-01-07 | 1 | -3/+3 |
| | | |||||
| * | Error.c: remove trailing whitespace | Ulrich Sibiller | 2018-01-07 | 1 | -5/+5 |
| | | | | | | | | and insert one single space | ||||
| * | Error.c: remove empty ifdef | Ulrich Sibiller | 2018-01-07 | 1 | -4/+0 |
| | | |||||
| * | Font.c: pass down size | Ulrich Sibiller | 2018-01-07 | 1 | -6/+5 |
| | | |||||
| * | Display.c: pass down buffer size to nxagentLookForIconFile | Ulrich Sibiller | 2018-01-07 | 1 | -24/+22 |
| | | | | | | | | Also comment the code and convert error messages to warnings. | ||||
| * | Replace hardcoded string lengths by macros | Ulrich Sibiller | 2018-01-07 | 6 | -69/+43 |
| | | |||||
| * | Font.c: make nxagentGetFontServerPath more readable | Ulrich Sibiller | 2018-01-07 | 1 | -4/+5 |
| | | |||||
| * | Screen.c: string handling improvements | Ulrich Sibiller | 2018-01-07 | 1 | -16/+10 |
| | | |||||
| * | Font.c: shorten string handling | Ulrich Sibiller | 2018-01-07 | 1 | -18/+7 |
| | | |||||
| * | Keyboard.c: replace malloc + strcpy by asprintf | Ulrich Sibiller | 2018-01-07 | 1 | -6/+4 |
| | | |||||
| * | Keyboard.c: improve user messages for keyboard file handling | Ulrich Sibiller | 2018-01-07 | 1 | -1/+1 |
| | | |||||
| * | Keyboard.c: fix memory leak | Ulrich Sibiller | 2018-01-07 | 1 | -1/+3 |
| | | |||||
| * | Dialog.c: fix possible buffer overflows | Ulrich Sibiller | 2018-01-07 | 1 | -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 appropriate | Ulrich Sibiller | 2018-01-07 | 5 | -17/+11 |
| | | |||||
| * | Dialog.c,Display.c,Font.c,NXdixfonts.c: don't use hardcoded string buffer ↵ | Ulrich Sibiller | 2018-01-07 | 4 | -20/+18 |
|/ | | | | lengths | ||||
* | Merge branch 'Ionic-bugfix/rpath' into 3.6.x | Mihai Moldovan | 2018-01-05 | 12 | -23/+132 |
|\ | | | | | | | | | | | Attributes GH PR #614: https://github.com/ArcticaProject/nx-libs/pull/614 Fixes: ArcticaProject/nx-libs#610 | ||||
| * | nxproxy/src/Makefile.am: build library using RUNPATH instead of RPATH. | Mihai Moldovan | 2018-01-03 | 1 | -0/+1 |
| | | | | | | | | | | Will only be useful at build time, since installation strips any RPATH/RUNPATH again. | ||||
| * | nxproxy/configure.ac: enable libtool support. | Mihai Moldovan | 2018-01-03 | 1 | -0/+3 |
| | | | | | | | | | | | | | | | | Using libtool, the nxproxy binary will be replaced by a shell script wrapper that correctly pulls in required libraries (like libXcomp), thus making it possible to start the binary directly in the build directory. This wrapper is dropped during installation time. | ||||
| * | nxproxy/configure.ac: drop --enable-cxx11. | Mihai Moldovan | 2018-01-03 | 1 | -6/+0 |
| | | | | | | | | | | | | | | | | This is a C program, so enabling or disabling C++11 support will not do anything useful. At most it'll lead to errors when using libtool, which is the next change to come... | ||||
| * | Makefile: only try to copy/dereference libNX* files when installing data. | Mihai Moldovan | 2017-12-30 | 1 | -1/+1 |
| | | |||||
| * | nx-X11: reintroduce creation of libX11 compat symlinks. | Mihai Moldovan | 2017-12-30 | 2 | -0/+25 |
| | | | | | | | | | | We need this to be able to execute the resulting nxagent binary from within the build directory. | ||||
| * | Makefile: install relinked program binary instead of the "temporary" one. | Mihai Moldovan | 2017-12-30 | 1 | -1/+1 |
| | | |||||
| * | nx-X11: build programs with a temporary RPATH/RUNPATH value and a relinked ↵ | Mihai Moldovan | 2017-12-30 | 7 | -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. | ||||
| * | nxcompshad/src/Makefile.am: enable new ELF dtags to force RUNPATH creation ↵ | Mihai Moldovan | 2017-12-30 | 1 | -0/+1 |
| | | | | | | | | for libXcompshad. | ||||
| * | nx-X11/config/cf/{gnu,lnx}Lib.rules: enable new ELF dtags to force RUNPATH ↵ | Mihai Moldovan | 2017-12-30 | 2 | -6/+6 |
| | | | | | | | | creation for nxagent. | ||||
| * | nxcompshad/src/Makefile.am: implement libX11 RPATH/RUNPATH override. | Mihai Moldovan | 2017-12-30 | 1 | -1/+5 |
| | | | | | | | | | | | | | | Same method as used in the previous commit, but easier done thanks to autotools and libtool. Fixes: ArcticaProject/nx-libs#610 | ||||
| * | nxagent: implement RPATH/RUNPATH override for libX11. | Mihai Moldovan | 2017-12-30 | 4 | -2/+15 |
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 | ||||
* | Merge branch 'uli42-pr/fix_abstract' into 3.6.x | Mihai Moldovan | 2017-12-30 | 6 | -109/+175 |
|\ | | | | | | | | | | | | | Attributes GH PR #615: https://github.com/ArcticaProject/nx-libs/pull/615 Fixes: ArcticaProject/nx-libs#612 Fixes: ArcticaProject/nx-libs#572 |