Commit Graph

532 Commits

Author SHA1 Message Date
Srivats P.
09a79a010d Fixing compiler warning 2014-07-06 19:28:30 +05:30
Srivats P.
63ea66fa4f Fix sys.path in rpctest.py to prepend instead of append the binding directory 2014-07-06 18:59:59 +05:30
Srivats P.
470d390658 fix gcc warnings 2014-07-06 18:36:01 +05:30
Srivats P.
347fc02dcf Drone prints version/revision information at startup 2014-07-06 13:02:59 +05:30
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.
048777c064 IGMPv3/MLDv2 Query widget now displays the Group Address field
Fixes issue 107
2014-06-30 20:25:39 +05:30
Srivats P.
1ea635bcfb Renamed RPCs start/stopTx as start/stopTransmit 2014-06-30 19:49:17 +05:30
Srivats P.
3b546637e4 Updated About Dialog with copyright date and web URLs 2014-06-29 21:04:19 +05:30
Srivats P.
7bfb146284 Fixed StreamConfigDialog Tab Order 2014-06-29 20:31:34 +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.
4b19d8e1e7 start/stop Transmit/Capture return only after transmit/capture has been started/stopped. Removed sleep between startCapture and startTx from example.py 2014-06-21 19:55:55 +05:30
Srivats P.
ebab0e62af CLI: Updated example.py to exit if drone has no ports 2014-06-18 19:02:46 +05:30
Srivats P.
3770e4bcc3 CLI: Added topology information to example.py 2014-06-17 18:08:53 +05:30
Srivats P.
0d3b36b943 CLI: minor changes to python binding code 2014-06-16 19:53:03 +05:30
Srivats P.
a6bfb0d393 CLI: fixed extra space in description 2014-06-14 17:20:01 +05:30
Srivats P.
d11e82cc33 CLI: Changed python package long_description to match description 2014-06-14 17:18:39 +05:30
Srivats P.
ace1a3694d CLI: changed python package description to match long_description 2014-06-14 17:16:41 +05:30
Srivats P.
278a85d606 CLI: renamed the python sdist as 'python-ostinato'; marked development status as Beta; classified it for use with python 2.7 only 2014-06-14 17:02:40 +05:30
Srivats P.
288380227e Minor changes to ease porting to Python 3 in the future 2014-06-14 15:31:02 +05:30
Srivats P.
3406d68697 CLI: Added logging to the ostinato modules for debugging; -d option to example.py skips user input and uses default values instead 2014-06-13 20:55:15 +05:30
Srivats P.
2a83b1a61b CLI: cleaned up exceptions to make code more readable 2014-06-12 07:11:32 +05:30
Srivats P.
30e9496270 CLI: Added exception handling to python RPC 2014-06-11 20:39:55 +05:30
Srivats P.
02ac4e7dff CLI: Added LICENSE.txt to python packaging; explicitly identified example.py as a script for packaging 2014-06-10 19:20:45 +05:30
Srivats P.
f75a99c834 CLI: modified python binding example script to take user input; enhanced DroneProxy to assume a default request type of Void if none is provided by user to make it intuitive for end users 2014-06-10 18:24:39 +05:30
Srivats P.
3b4b5a19b9 Moved generation of pkg_info from setup.py to qmake/make - version.pri refactored suitably. Reimplemented sdist_clean as a new setuptools command 2014-06-08 19:10:49 +05:30
Srivats P.
8f51e6f07a Added classifiers to the python packaging 2014-06-07 20:58:50 +05:30
Srivats P.
d3b9d9be83 Updated python packaging 2014-06-07 20:12:51 +05:30
Srivats P.
13ff09f421 CLI: Added BLOB RPC support to python binding; updated the binding example to use the RPC; added a convenience method - saveCaptureBuffer() to DroneProxy 2014-06-04 07:35:43 +05:30
Srivats P.
35472a6ac7 CLI: Initial Commit for Python Bindings 2014-06-03 07:14:54 +05:30
Srivats P.
2e8e7c0440 Merge with TOT 2014-05-22 20:38:25 +05:30
Srivats P.
8336d77dfa Added ReadWriteLock to protect RPC service methods in a multi-threaded environment 2014-05-22 20:37:53 +05:30
Srivats P.
0ebff976d8 Fixed build warnings 2014-05-22 20:24:04 +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
Srivats P.
34d9da4a42 Merged NOX with latest HEAD 2014-05-10 11:27:16 +05:30
Srivats P.
8a74987fa5 NOX: Doxygen-style documentation for PdmlProtocol. Added SamplePdmlProtocol with TODO comments on the same lines as SampleProtocol 2014-05-09 07:21:42 +05:30
Srivats P.
5ee4786008 NOX: moved uintToHexStr() definition from AbstractProtocol to AbstractProtocolConfigForm because it is supposed to be used by config widgets in their load methods. For Mac/Arp protocols which were using it to display mac address as text a new macro uintToMacStr() was added and used 2014-05-02 04:52:00 +05:30
Srivats P.
40837fae40 NOX - Extracted each xxxPdmlProtocol from pdmlprotocols.h/.cpp into its own .h/.cpp. It is now more evident that while implementing a new protocol, one has to implement the xxxConfigFrom and xxxPdmlProtocol as well. 2014-05-01 21:15:41 +05:30
Srivats P.
6193db495d NOX: SampleProtocol - separated protocol and widget as per new framework 2014-04-25 07:52:55 +05:30
Srivats P.
7d3caad43c NOX: UserScript - separated protocol and widget as per new framework 2014-04-25 06:58:38 +05:30
Srivats P.
88ec853d09 NOX: HexDumpProtocol - separated protocol and widget as per new framework 2014-04-22 06:03:40 +05:30
Srivats P.
bacee5dd18 NOX: TextProtocol - Separated protocol and widget as per new framework 2014-04-19 12:36:14 +05:30
Srivats P.
30c70a73e4 NOX: ICMP - Separated protocol and widget as per new framework 2014-04-17 07:10:13 +05:30
Srivats P.
bbe645725a NOX: Udp - separated protocol and widget as per new framework 2014-04-15 05:31:28 +05:30
Srivats P.
481e517fa6 NOX: GMP, IGMP, MLD - Separated protocol and widget as per new framework 2014-04-10 18:24:30 +05:30