aboutsummaryrefslogtreecommitdiff
path: root/nxcomp/src
Commit message (Collapse)AuthorAgeFilesLines
* nxcomp/src/Log.h: make sure we don't pass NULL pointers to strstr().Mihai Moldovan2017-12-271-1/+8
|
* nxcomp/src/Loop.cpp: whitespace in log messages only.Mihai Moldovan2017-12-251-4/+4
|
* nxcomp/src/Loop.cpp: use new log continuation mechanism.Mihai Moldovan2017-12-251-18/+18
| | | | | | | | | | | Especially don't flush data out mid-append. Doing so will lead to the next append operation failing. Should fix messages queuing up indefinitely (until they are discarded at program termination, at least) and missing messages in general. Fixes: ArcticaProject/nx-libs#577 Fixes: ArcticaProject/nx-libs#611
* nxcomp/src/Loop.cpp: whitespace only.Mihai Moldovan2017-12-251-3/+3
|
* nxcomp/src/Log.{cpp,h}: provide infrastructure for appending to already ↵Mihai Moldovan2017-12-252-23/+89
| | | | | | | | | existing log lines. Also handle errors due to missing buffers gracefully. This error is surprisingly easy to trigger, so we should make sure that the program does not crash.
* nxcomp/src/Log.h: NXLogStamp constructor should actually take a size_t-typed ↵Mihai Moldovan2017-12-251-1/+1
| | | | line parameter.
* nxcomp/src/Log.h: use initializer lists instead of initializing member ↵Mihai Moldovan2017-12-251-17/+4
| | | | variables in-block.
* nxcomp/src/ChannelEndPoint.cpp: don't use C-style casting in C++ code...Mihai Moldovan2017-12-241-3/+3
|
* nxcomp/src/Loop.cpp: fix small memory leak.Mihai Moldovan2017-12-241-0/+2
|
* nxcomp/src/Loop.cpp: log message fixups only.Mihai Moldovan2017-12-181-2/+2
|
* nxcomp/src/Log.cpp: only create a new queue entry if we actually intend to ↵Mihai Moldovan2017-12-111-3/+3
| | | | | | write it out later. Fixes: ArcticaProject/nx-libs#596
* nxcomp: fix shadow warningUlrich Sibiller2017-12-111-2/+2
| | | | | | | | | | | | | | Fixes this: CXX Loop.lo Loop.cpp: In function 'void handleCheckResultInLoop(int&, int&, int&, fd_set&, fd_set&, timeval&, timeval&)': Loop.cpp:14080:68: warning: declaration of 'startTs' shadows a global declaration [-Wshadow] struct timeval &startTs) ^ Loop.cpp:1020:13: note: shadowed declaration is here T_timestamp startTs; Fixes ArcticaProject/nx-libs#545
* nxcomp: use new macro SAFE_FREE(ptr)Ulrich Sibiller2017-12-094-39/+33
| | | | | Should be used instead of free() calls and will clear the pointer after calling free(). This can prevent double-free or use-after-free errors.
* Loop.cpp: fix more memory leaksUlrich Sibiller2017-12-091-1/+15
| | | | | | | The thread specific stringstream objects on the stack need to be deleted, not just pop()ed. Fixes ArcticaProject/nx-libs#573 (partially)
* Loop.cpp: fix two memleaksUlrich Sibiller2017-12-091-4/+19
|
* ChannelEndPoint.cpp: fix two memleaksUlrich Sibiller2017-12-091-4/+10
|
* nxcomp: simplify free callsUlrich Sibiller2017-12-091-3/+3
| | | | free() can handle NULL itself
* nxcomp: fix double freeUlrich Sibiller2017-12-091-0/+2
| | | | Fixes ArcticaProject/nx-libs#569
* nxproxy/nxcomp: document logging optionsUlrich Sibiller2017-12-071-0/+14
|
* nxcomp/nxproxy: slightly improve the usage message of nxproxyUlrich Sibiller2017-12-071-6/+8
|
* nxcomp/nxproxy: add missing hint for keyconv optionUlrich Sibiller2017-12-071-0/+1
|
* nxcomp: use lowercase abbreviations for seconds and millisecondsUlrich Sibiller2017-12-029-71/+71
|
* nxcomp: remove unused return valuesUlrich Sibiller2017-12-021-19/+12
| | | | Some functions' return values are never used anywhere, so drop them.
* nxcomp: Fix setting of global tcpFDUlrich Sibiller2017-12-021-1/+2
| | | | | | | This corrects a flaw that stayed undetected for 2.5 years, introduced via c5a2cf82f6baf7a9e64ec2328a5bac0dfee453ef Fixes ArcticaProject/nx-libs#573
* nxcomp/src/Misc.cpp: Update explanation for the NX_TEMP env variable.Mike Gabriel2017-11-221-2/+1
|
* nxcomp/src/Loop.cpp: hardcode X11 and (legacy/xfs) font UNIX paths.Mihai Moldovan2017-11-041-15/+7
| | | | | | | | Fixes: ArcticaProject/nx-libs#536 Allowing overrides via NX_TEMP and TEMP breaks system using pam_tmpdir.so and most server infrastructure expects the location to be fixed anyway.
* nxcomp/src/Auth.cpp: handle launchd sockets in DISPLAY variable correctly ↵Mihai Moldovan2017-11-031-3/+23
| | | | when fetching X cookie.
* Regression fix for f855b3b6. Caused FTBFS with Loop.cpp:2669:0: error: ↵Mike Gabriel2017-10-271-1/+0
| | | | unterminated #ifdef (#ifdef TIME).
* nxcomp/src/Loop.cpp: fix whitespace errors on continued lines.Mihai Moldovan2017-10-271-810/+810
|
* Remove leading \n in NXTrans* loggingVadim Troshchinskiy2017-10-271-3/+3
|
* Fix whitespace and line splitting issues reported by ionicVadim Troshchinskiy2017-10-271-10/+19
|
* Conversion of Loop.cpp to the new log systemVadim Troshchinskiy2017-10-271-2560/+1285
|
* nxcomp/src/Log.h: prepare for logger testing application.Mihai Moldovan2017-10-271-0/+4
| | | | DO NOT USE!
* nxcomp/src/Log.cpp: add PID to thread ID output if requested.Mihai Moldovan2017-10-271-1/+2
| | | | | | | | The default function we use (if a thread name is not specified explicitly) is pthread_self(). This function returns a number that is guaranteed to be unique for each thread within a process, but this assertion doesn't hold globally. Hence only using the thread ID is ambiguous when logging from multiple processes.
* nxcomp/src/Log.h: block signals while writing out data.Mihai Moldovan2017-10-271-0/+20
| | | | | Prevents race conditions caused by signal handlers while flushing out our log queue.
* nxcomp/src/Log.{cpp,h}: port to std::stack as internal buffer structure.Mihai Moldovan2017-10-272-23/+37
| | | | | | | | This has one drawback: after flushing log data to its underlying output, a new NXLogStamp object MUST be written to the NXLog object in order to create a new entry within the stack. This can be changed if necessary. For now I'd like to keep it as-is.
* nxcomp/{configure.ac,Log.cpp}: implement configure-time std::put_time check ↵Mihai Moldovan2017-10-271-1/+2
| | | | and use macro value in Log.cpp.
* nxcomp/Log.h: delete stream_ member before class object destruction.Mihai Moldovan2017-10-271-0/+4
|
* nxcomp/Log.h: also clear the buffer after setting it to an empty string.Mihai Moldovan2017-10-271-1/+2
|
* Set default log level to WARNINGVadim Troshchinskiy2017-10-271-1/+1
| | | | | This is to ensure the log output is the same as previous releases, which didn't have INFO defined by default.
* New logging implementationVadim Troshchinskiy2017-10-274-0/+719
| | | | | | | | Features: * Works without ifdefs * Configurable with commandline arguments * Log level configurable per file * Thread safe
* nxcomp: add AX_PTHREAD code from autoconf-archive and check for pthread support.Mihai Moldovan2017-10-271-1/+7
|
* Fix bug #525: PANIC! No port specified for multimedia connectionsVadim Troshchinskiy2017-10-103-11/+19
| | | | | | | Commit 5f1eb0dc3eb89e84a3b146975e147b995fb7673f introduced a regression that made the use of the multimedia port mandatory. Fixes ArcticaProject/nx-libs#525
* nxcomp/src/Loop.cpp: Reduce control->TokenSize slightly again in order to ↵Simon Matter2017-10-091-2/+2
| | | | fix fragmentation of packages when on VPN (or otherwise encapsulated) connections.
* nxcomp/src/Loop.cpp: whitespace fixes only.Mihai Moldovan2017-09-291-6/+6
|
* Fix nxagent argument parsing logicVadim Troshchinskiy2017-09-292-57/+51
| | | | | | | | | This makes it so that slave=1 works again as it should. The changes introduced earlier resulted in the unintentional requirement to specify the actual port number, breaking backwards compatibility. Fixes: ArcticaProject/nx-libs#518
* nxcomp/src/{Loop,Proxy}.cpp: On Debian/kFreeBSD (and other *BSD variants) ↵Mike Gabriel2017-09-062-0/+16
| | | | | | the sockaddr_un.sun_path property is 104 chars long, not 108. Hard-coding Unix domain sockets in nxcomp the string length 104. Fixes ArcticaProject/nx-libs#507.
* nxcomp: Add __attribute__((noreturn)) to more functions where appropriate.Mike Gabriel2017-07-263-4/+4
|
* nxcomp/src/Loop.cpp: Don't mix using global proxyFD and a local p(roxy)FD ↵Mike Gabriel2017-07-261-16/+16
| | | | variable (in WaitForRemote() and ConnectToRemote()). Rename local variable name.
* nxcomp/src/Loop.cpp: Don't use global variables as function paramters in ↵Mike Gabriel2017-07-261-4/+4
| | | | handleLogReopenInLoop().