Commit Graph

9 Commits

Author SHA1 Message Date
Srivats P.
57be4f3ada Drone now disconnects only if version is incompatible or if any other RPC is received before versionCheck() - for all other errors/failures, drone does not disconnect the connection with client 2014-07-06 11:26:26 +05:30
Srivats P.
9955d31b77 Added RPC for version compatibility check between client and server; both GUI and DroneProxy call this as the first RPC before proceeding ahead; if client is inompatible, drone additionally closes the connection; drone won't handle any RPCs untiil version check is performed and client is found compatible; fixed DroneProxy bug which did not allow to connect again after disconnect; fixed RPC bug which failed to detect unsupported method id; RPC-server now returns RPC error in case of failure; added a bunch of RPC tests for version compat 2014-07-06 11:19:22 +05:30
Srivats P.
42a23b12ed Added a Error Msg Type to underlying RPC infra; RPC service now returns error for add/modify/delete stream if transmit is running; added prints for start/stop transmit/capture NOP cases; added a rpctest.py script 2014-06-29 20:07:01 +05:30
Srivats P.
584362406e Fixed a nasty drone crash caused by incorrect usage of qPrintable() in a QtMsgHandler 2014-06-22 10:43:54 +05:30
Srivats P.
8e14e0c15b Prepended qDebug output with connection id for easier debugging 2014-05-22 06:20:55 +05:30
Srivats P.
87982a4227 RpcConnection now uses the common idiom of peekHdr-getMsgLen-waitForLenBytes-readMsg for reading RPC messages from client 2014-05-21 05:35:04 +05:30
Srivats P.
f7c3c06845 Converted some static vars in RpcConnection:on_clientSock_dataAvail() into member vars to avoid contention across connections; fixed condition which causes a portgroup to never query for stats (it assumes a GetStats is already outstanding) caused by a timing condition (repeated connect/disconnect); improved debug output for RPCs on both client and server side 2014-05-19 18:26:20 +05:30
Srivats P.
b470ed84bb Reworked the multi-threaded RPC server/connection architecture into a worker-thread arch as reccomended by Qt 2014-05-17 18:45:02 +05:30
Srivats P.
1a6b23e31d Enabled multiple client connections to server, each in its own thread. Need to redo the thread design 'coz subclassing QThread with slots may cause problems. 2014-05-17 10:12:29 +05:30