aboutsummaryrefslogtreecommitdiff
path: root/nxcomp
Commit message (Collapse)AuthorAgeFilesLines
* LICENSE files: Have a main LICENSE file and one for nxcomp in the project's ↵Mike Gabriel2016-07-051-90/+0
| | | | | | base folder. Drop other LICENSE files added by NoMachine scattered all over the code tree.
* Drop multiple COPYING files contaning the GPL-2 license text.Mike Gabriel2016-07-051-339/+0
| | | | One COPYING file in the project's base folder is sufficient.
* nxcomp/Loop.cpp: Add Unix file socket support for proxy <-> proxy connection.Mike Gabriel2016-07-043-222/+607
|
* merge code paths depending on acceptHost being ""Salvador Fandino2016-07-041-11/+5
|
* remove now unused function ParseListenOptionSalvador Fandino2016-07-041-20/+0
|
* rewrite WaitForRemote to build on top of ListenConnectionTCPSalvador Fandino2016-07-041-61/+2
|
* remove unused listenHost parameterSalvador Fandino2016-07-041-19/+3
|
* Remove work around for OS/X that was doing nothingSalvador Fandino2016-07-041-24/+0
| | | | | | Remove an old work around that's not needed anymore. Tested on OS/X 10.10 for x86.
* Simplify ParseListenOptionSalvador Fandino2016-07-041-12/+4
| | | | | | Merge code paths. Use GetHostAddress to resolve the target host address instead of inet_aton.
* rewrite SetupUnixSocket to use ListenConnectionUnixSalvador Fandino2016-07-041-70/+20
|
* Rework SetupTcpSocket to use ListenConnectionTCPSalvador Fandino2016-07-041-66/+1
|
* OPTFLAGS: Properly propagate build option flags to nxcomp{,ext,shad} and the ↵Mike Gabriel2016-07-012-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | nx-X11 build scripts. Note: - The "normal" way to inject CFLAGS (and CPPFLAGS) into nx-X11 builds is copying those options over into the variable CDEBUGFLAGS. - LDFLAGS have to be handed to nx-X11 via LOCAL_LDFLAGS. This change also includes a slight change in the nx-X11 build order. Old build order: Main Makefile: - [...] - libNX_X11 + implicitly building nxcomp + implicitly building nxcompext - [...] - nxagent + implicitly building nxcompshad - [...] New build ordner: Main Makefile: - [...] - nxcomp - setup nx-X11 build env + cd nx-X11 && make BuildEnv - nx-X11/lib/* - nxcompext - nxcompshad - [...] - nxagent - [...] Fixes ArcticaProject/nx-libs#141 Fixes X2GoBTS#84
* nx-X11/config/{imake,makedepend}: Use system-wide available imake and ↵Mike Gabriel2016-06-301-10/+0
| | | | makedepend tools.
* {nx-X11/programs/Xserver/hw/nxagent/{{Args,Handlers,Image,Options}.c,Options ↵Mihai Moldovan2016-06-172-2/+4
| | | | .h},nxcomp/{Loop,Misc}.cpp}: add configurable sleep delay if session is suspended.
* nx-X11/programs/Xserver: Include nxcomp{,ext,shad} headers like one would do ↵Mike Gabriel2016-06-131-1/+1
| | | | with system-wide shared libraries.
* nxcomp/Makefile.in: Only install MD5.h, NX.h, NXalert.h, NXpack.h, NXproto.h ↵Mike Gabriel2016-06-131-3/+5
| | | | | | | and NXvars.h as publicly available header files. * Also adapt debian/libxcomp-dev.install.in accordingly. * Also adapt nx-libs.spec accordingly.
* Fix debugging function for Loop.cpp. getDebugSpec was replaced by << operand ↵Nito Martinez2016-05-311-6/+6
| | | | in ChannelEndPoint.{h|cpp}, fixes #130
* display version number in nxcomp log, fixes #127Nito Martinez2016-05-312-3/+2
|
* Provide support for channel endpoints being UNIX file sockets in addition to ↵Salvador Fandino2016-04-2710-315/+634
| | | | being TCP/IP sockets.
* nxcomp: Rephrase comment in previous commit.Mike Gabriel2016-04-271-3/+3
|
* Clean up compiler warnings in nxcompFernando Carvajal2016-04-275-61/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit removes several warnings in nxcomp related to unused but set variables. It also replaces tempnam function with the more secure one mkstemp and there has been removed another warning related to setgid and setuid returning values not being checked. So these were the compiler warnings in nxcomp that have been fixed: Loop.cpp: In function ‘int ParseRemoteOptions(char*)’: Loop.cpp:9423:7: warning: variable ‘hasLimit’ set but not used [-Wunused-but-set-variable] int hasLimit = 0; ^ Loop.cpp:9424:7: warning: variable ‘hasRender’ set but not used [-Wunused-but-set-variable] int hasRender = 0; ^ Loop.cpp:9425:7: warning: variable ‘hasTaint’ set but not used [-Wunused-but-set-variable] int hasTaint = 0; ^ Loop.cpp:9427:7: warning: variable ‘hasStrict’ set but not used [-Wunused-but-set-variable] int hasStrict = 0; ^ Loop.cpp:9428:7: warning: variable ‘hasShseg’ set but not used [-Wunused-but-set-variable] int hasShseg = 0; ^ ServerChannel.cpp: In member function ‘virtual int ServerChannel::handleWrite(const unsigned char*, unsigned int)’: ServerChannel.cpp:2132:9: warning: variable ‘hit’ set but not used [-Wunused-but-set-variable] int hit; ^ Proxy.o: In function `Proxy::handleSaveAllStores(char const*) const': Proxy.cpp:(.text+0x2cac): warning: the use of `tempnam' is dangerous, better use `mkstemp' Pipe.cpp: In function ‘FILE* Popen(char* const*, const char*)’: Pipe.cpp:240:23: warning: ignoring return value of ‘int setgid(__gid_t)’, declared with attribute warn_unused_result [-Wunused-result] setgid(getgid()); ^ Pipe.cpp:241:23: warning: ignoring return value of ‘int setuid(__uid_t)’, declared with attribute warn_unused_result [-Wunused-result] setuid(getuid()); ^ There was also a hidden problem in the way Proxy::handleSaveAllStores was checking for an error in the returning value from the call to the virtual method handleSaveAllStores of the specific proxy class really being used (ClientProxy or ServerProxy). Former code was considering the value 0 as the returning value in case of an error whereas both subclasses return the value -1 when there is an error in their handleSaveAllStores method. This bug has been fixed in this commit taking advantage of the modification that was already being made to this method in order to replace tempnam function with the more secure one mkstemp. Fixes: ArcticaProject/nx-libs#103
* Fix copyright notice in nxcomp/Version.cSalvador Fandino2016-04-201-19/+10
| | | | | | It was GPL3 instead of GPL2! Fixes ArcticaProject/nx-libs#112
* Remove TextCompressor class and files from nxcompFernando Carvajal2016-04-157-143/+0
| | | | | | | | | | | | This commit removes TextCompressor class references from ClientCache and ServerCache as it's no longer used after removing old protocol's compatibility code from nxcomp. It also removes the attribute textCache from both classes as it's no longer used either. Finally the header and source files associated with the TextCompressor class are also deleted and removed from the compilation process. Refs: ArcticaProject/nx-libs#108
* Remove obsolete compatibility files from nxcompFernando Carvajal2016-04-1225-3960/+1
| | | | | | | | This commit removes obsolete compatibility files whose components were only used to handle compatibility with old protocol versions that are no longer supported. Refs: ArcticaProject/nx-libs#108
* Remove compatibility code for nxcomp before 3.5.0Fernando Carvajal2016-04-1258-2492/+649
| | | | | | | | | | | | | | As a part of nxcomp's clean-up process, compatibility with old protocol versions has been set now at 3.5.0. This commit removes compatibility code from nxcomp so the minimum supported version changes from 1.5.0 (protocol step 6) to 3.5.0 (protocol step 10). At this moment the removal is not complete and it will be followed by some other commits, in order to get rid of several components and files that are no longer used as they were only needed to work with old protocol versions. Refs: ArcticaProject/nx-libs#108
* nxcomp: Properly define NX*Version(void) prototypes in NX.h.Mike Gabriel2016-03-221-5/+5
| | | | Fixes ArcticaProject/nx-libs#104
* Rename file for windows environments, Fixes #96Nito Martinez2016-03-021-1/+1
|
* nxcomp: Make nxcomp/nxproxy aware of nxagent's xinerama option in the ↵Mike Gabriel2015-12-301-1/+2
| | | | $DISPLAY variable.
* Provide support for re-enabling Xinerama on session resumptions.Mike Gabriel2015-12-301-0/+1
| | | | | | | | | | | | | | By design, when resuming a session, Xinerama can only be re-enabled by NX option parsing. Thus, this change introduces a "xinerama" NX option that can be loaded via an options file into NX agent when resuming a session. The new xinerame NX session option also allows switching on Xinerama at session startup via an option file. When implementing the new NX Xinerama support into clients (like TheQVD, X2Go Client, etc., this new xinerama NX option should be used for activating Xinerama in the NX / QVD / X2Go session.
* Merge pull request #64 from uli42/pr/add_pkgconfigMike Gabriel2015-09-281-0/+2
|\ | | | | Various fixes for pkgconfig file creation.
| * Fix "Makefile.in seems to ignore the --datarootdir setting" warningUlrich Sibiller2015-08-261-0/+2
| |
| * create pkgcnfig dir before copying anythingUlrich Sibiller2015-08-261-0/+1
| |
* | nxcomp{,ext,shad}/Makefile.in: Create pkgconfigdir before putting files in it.Mike Gabriel2015-07-141-0/+1
| |
* | nxcomp{,shad,ext}: Remove nxcomp*.pc file on clean and distclean.Mike Gabriel2015-07-141-1/+1
|/
* Add pkg-config support to nxcomp, nxcompext and nxcompshadUlrich Sibiller2015-07-123-9/+30
|
* nxcomp/Loop.cpp: tiny whitespace fix. No functional change.Mihai Moldovan2015-06-161-1/+1
|
* Merge pull request #28 from theqvd/3.6.xMike Gabriel2015-06-161-1/+37
|\ | | | | Fix negotiation in stage 10 error.
| * Fix negotiation in stage 10 errorVadim Troshchinskiy2015-05-201-1/+37
| | | | | | | | | | Problem fixed by adding a select() call to implement a timeout, and retrying writes if needed.
* | nxcomp/README.on-retroactive-DXPC-license: Some layout and interpunctuation ↵Mike Gabriel2015-05-291-1/+1
| | | | | | | | fixes.
* | nxcomp/Misc.cpp: fix build failure introduced in ↵Mihai Moldovan2015-05-281-3/+3
| | | | | | | | 1f44331574bdbe4069d13e4c26df18094b49e658.
* | Document retroactive re-licensing of the original DXPC code (closes #30).Mike Gabriel2015-05-263-6/+328
|/ | | | | | | | | | | * Update nxcomp/LICENSE. * Add nxcomp/README.on-retroactive-DXPC-license, giving a short overview of the flow of discussions * Add "modified or unmodified" to the license information printed out to stdout in nxcomp/Misc.cpp * Fix copyright year (2006->2003) for Gian Filippo Pinzari (and move him to the GPL-2 section). * Add the complete .mbox file of Debian bug #748565.
* Merge pull request #26 from nitomartinez/fix_developer_debuggingMike Gabriel2015-05-163-3/+3
|\ | | | | This patch is some code fixes to allow developer debuging by using TEST macros in the NX code
| * This patch is some code fixes to debug some debuging macro usage in the NX code.Nito Martinez2015-05-153-3/+3
| | | | | | | | Particularly the following macros have been tested -DTEST -DDEBUG -DDUMP -DFLUSH -DTOKEN -DSPLIT -DPING -DMIXED -DMATCH -DTIME
* | This patch allows to cleanup the nxcomp resources to allow for a second ↵Nito Martinez2015-05-153-0/+36
|/ | | | | | | | | | | | | | | connection inside the same process, instead of a new process as is the nxproxy case. This involves creating a new API call void NXTransCleanupForReconnect(void); which basically cleans up the global state for the connection but does not exit the process. Background ========== This is needed for the IOS platform, where the nxproxy model of forking does not work. Also NX handles most of the errors with an "exit" call which in IOS cannot be easily handled.
* nxcomp{,ext,shad}: only use the first three numbers in the full version for ↵Mihai Moldovan2015-03-261-1/+2
| | | | current_version on OS X. ld(1) on 10.6 fails otherwise.
* nx{comp{,ext,shad},proxy}: try really hard to find makedepend. Do not fail ↵Mihai Moldovan2015-03-162-2/+12
| | | | if it is not available.
* nxcomp{,ext,shad}: use the correct library naming scheme on OS X. It differs ↵Clemens Lang2015-03-151-7/+15
| | | | from other UNIX-based systems.
* nxcomp{,shad}: fix dynamic library linking on OS X. Use -dynamiclib instead ↵Clemens Lang2015-03-151-2/+2
| | | | of -bundle.
* nx{comp{,ext,shad},proxy}: use path discovery for finding makedepend. Remove ↵Clemens Lang2015-03-151-14/+1
| | | | old cruft.
* VERSION file: master VERSION file is in base folder, symlinked from ↵Mike Gabriel2015-02-141-1/+1
| | | | | | | | | | | | | | | | | | nx*/VERSION and hw/nxagent/VERSION. This commit removes the debian/VERSION file at makes it now unnecessary to copy/symlink the VERSION file at build time. These build scripts got adapted: debian/roll-tarballs.sh debian/rules nx-libs.spec Furthermore, all NX component now use the main VERSION file as reference. typechange: nxcomp/VERSION typechange: nxcompext/VERSION typechange: nxcompshad/VERSION typechange: nxproxy/VERSION