aboutsummaryrefslogtreecommitdiff
path: root/nxcomp/src
Commit message (Collapse)AuthorAgeFilesLines
* EncodeBuffer.cpp: add VALGRIND guardUlrich Sibiller2017-12-291-0/+7
| | | | | | | Same as in WriteBuffer.cpp Valgrind will complain about uninitialized data, but we are only writing to the memory here.
* nxcomp: implement correct length handling for unix socket structsUlrich Sibiller2017-12-292-28/+57
| | | | (partially) fixes ArcticaProject/nx-libs#612
* Loop.cpp: drop ugly ifdef indentationUlrich Sibiller2017-12-291-9/+6
|
* Loop.cpp: create xServerAddrUNIX only if requiredUlrich Sibiller2017-12-291-4/+3
|
* Loop.cpp: improve/fix usage of s(n)printfUlrich Sibiller2017-12-291-4/+6
|
* Loop.cpp: some reformatting/simplification/FIXMEsUlrich Sibiller2017-12-291-5/+11
| | | | (partially) fixes ArcticaProject/nx-libs#612
* Loop.cpp: delete passed object prior to overwriting itUlrich Sibiller2017-12-291-1/+4
|
* ChannelEndPoint.cpp: re-scope/improve getSpecUlrich Sibiller2017-12-292-9/+21
|
* Loop.cpp: delete structs when no longer requiredUlrich Sibiller2017-12-291-0/+2
| | | | | | Fix another memleak (partially) fixes ArcticaProject/nx-libs#612
* Loop.cpp: always close testSocketFDUlrich Sibiller2017-12-291-1/+2
| | | | | | was missing in the non-abstract code path (partially) fixes ArcticaProject/nx-libs#612
* Loop.cpp: free display before leaving SetupDisplaySocket()Ulrich Sibiller2017-12-291-0/+5
| | | | fixes a memory leak
* Loop.cpp: Fix memset (size was 0)Ulrich Sibiller2017-12-291-1/+1
| | | | (partially) fixes ArcticaProject/nx-libs#612
* nxcomp/src/Log.h: take a reference-type in generic has_newline() function.Mihai Moldovan2017-12-271-1/+1
| | | | Should avoid copy-constructing objects again.
* nxcomp/src/Log.cpp: don't confuse users with useless warning messages in ↵Mihai Moldovan2017-12-271-8/+12
| | | | case that a log line append operation was requested, but the message level has lower precedence than the current log filter.
* 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.