Commit Graph

33 Commits

Author SHA1 Message Date
Nick Bolton c44971b43d fixed: warnings on mac os x 2014-02-25 15:03:43 +00:00
Nick Bolton c368013f13 Patch by Jerry for issue 46:
- Unit test for sending file data from server to client.
- Removed singleton pattern from CSocketMultiplexer for easier unit testing.
- Incremented protocol version from 1.4 to 1.5 (new file chunk message).
- Storing pointer to CConfig instead of copying in CServer (so we can mock it).
- Created a common event queue for testing (timeout, quit event, etc).
- Fixed code style.
2013-07-16 19:02:30 +00:00
Nick Bolton 608074c041 - made unit testing easier by (mostly) removing the event queue singleton.
- fixed code style in many places (mostly indentation).
2013-06-29 14:17:49 +00:00
Nick Bolton 7f6eca9eb4 corrected license and author attribution (cs 2002-2012, nb 2008-2012) 2012-09-04 02:09:56 +00:00
Nick Bolton 268f3a99bb added process elevation support to the relauncher, very experimental, has some bugs. 2012-07-28 02:59:20 +00:00
Nick Bolton 4378e520f0 fixed: on windows xp daemon deadlocks and synergys crashes on startup. also fixed uninitialized ipc program args value (always turning ipc on). moved the event queue further up the stack for (client, server and daemon) so that it's always available (not just in the main loop). 2012-07-14 00:15:07 +00:00
Nick Bolton 764d63a5d5 improved ipc log messages. 2012-07-13 17:34:59 +00:00
Nick Bolton 738c321bae fixed lousy ipc client/server cleanup and shutdown doubled timeout. 2012-07-13 17:08:00 +00:00
Nick Bolton 82d91605fa changed ipc protocol to be more like original synergy protocol (4 byte message codes and better use of protocol util class). 2012-07-11 18:06:10 +00:00
Nick Bolton eca240eec7 changed integ tests to use another port for ipc. 2012-07-11 12:07:13 +00:00
Nick Bolton 5f0402d47b fixed linux syntax and build errors 2012-07-10 18:35:33 +00:00
Nick Bolton f9f04034c9 fixed: ipc client running on synergyc wasn't sending hello message, and so wasn't getting shutdown message. edits to CIpcClient or CIpcTests weren't really needed, but looks slightly better this way maybe. 2012-07-10 11:23:08 +00:00
Nick Bolton 5be1fd0cfa made ipc log outputter message drop mechanism only drop messages from the buffer thread (*should* not cause deadlock, but feels a bit risky). 2012-07-10 10:04:52 +00:00
Nick Bolton 8bad45e8a2 * fixed a shit-ton of memory leaks (lots in the ipc log handler, oops)
* added non-pod data support to events (event delete can now call dtors)
* improved cleanup of ipc message objects (because of non-pod event data support)
* moved the "message received" event up to ipc server and client (passed on from proxies)
2012-07-10 01:51:51 +00:00
Nick Bolton 21cf3f2478 fixed minor warning - type signing mismatch. 2012-07-09 12:27:13 +00:00
Nick Bolton 346666791e * made gui ipc reader more robust by getting rid of reader thread (but read wait now blocks gui thread)
* separated ipc client proxy mutex into read and write (i think read was deadlocking write)
* fixed cpu spinning on ipc log send buffer thread (now uses wait cond like before).
2012-07-09 12:09:24 +00:00
Nick Bolton e501552f24 * increased gui ipc read check (yes yes, i should be using wait cond... but qt mutexes suck)
* added mutex to client proxy to protect stream
* added try/catch to ipc log outputter buffer thread
* protected ipc client proxy list with mutex (saw a weird stl error, might be caused by cross-thread weirdness)
2012-07-08 17:49:45 +00:00
Nick Bolton ecf1833f36 * removed wait cond and mutex usage from gui ipc log reader (it was being used incorrectly anyway)
* raised the log-to-console level to DEBUG2
* added force option to ipc log buffer (to side-step the anti-recursion "mechanism")
* made relauncher always relay server/client messages to ipc client (gui)
2012-07-08 16:27:28 +00:00
Nick Bolton f0493351a1 attempting to solve ipc recursion/deadlock problem by always buffering in the log outputter. 2012-07-08 16:01:27 +00:00
Nick Bolton af9a6beb78 made ipc reader on gui side more robuts, but deadlocking issue on ipc server still exists (caused by sending log messages). 2012-07-06 22:17:26 +00:00
Nick Bolton 663cd28f2d attempting to fix deadlocks by going mutex crazy (this never ends well) 2012-07-06 16:18:21 +00:00
Nick Bolton 17a92f4f4c attempted to fix deadlock caused by ipc logger causing recursion. 2012-07-06 14:46:46 +00:00
Nick Bolton 12eb8efb61 implemented ipc message buffering (dequeues on gui reconnect) 2012-07-06 12:27:22 +00:00
Nick Bolton fbc4a89653 added retry to installer for synrgyhk.dll file delete problem, seems to help.
added hack to daemon to suppresses service controller false positive error.
tidied up a few of the log lines to make the place look nicer for newbies.
removed annoying build line from dist command.
2012-07-05 21:26:41 +00:00
Nick Bolton ddb2d7feeb fixed: ipc client connected event was being wiped out
daemon now communicates graceful shutdown message through new ipc system.
2012-07-05 19:10:04 +00:00
Nick Bolton 3d6551f708 moved stream into synergy namespace (to prevent naming collision in win libs)
implemented ipc "hello" message (to identify client type)
integ tests working for hello message, but use of ipc in main program has problem with events.
2012-07-05 18:05:35 +00:00
Nick Bolton 0537bbdfad increased ipc message length. 2012-07-03 17:33:19 +00:00
Nick Bolton 7d5fbde71d fully replaced gui/daemon named pipes ipc with tcp ipc. 2012-07-03 14:15:05 +00:00
Nick Bolton 79d73bd163 ipc send message to client finished. 2012-07-02 15:28:23 +00:00
Nick Bolton 97b2cd669d finished ipc send to server. 2012-07-02 13:45:52 +00:00
Nick Bolton 05775bc73d finished ipc connect with unit test. 2012-07-01 21:18:21 +00:00
Nick Bolton 218e98398f ipc client connect test with working unit tests. 2012-06-29 11:33:21 +00:00
Nick Bolton 7d8fd5927d skeleton for new ipc code. 2012-06-28 07:29:06 +00:00