Commit Graph

217 Commits

Author SHA1 Message Date
Srivats P
495b99beda Use streamIndex in PseudoIpCksum calculation
This bug was introduced while fixing #271
2018-09-17 17:26:51 +05:30
Srivats P
9c319f97e5 Bugfix: Don't pad HexDump unless it's the last protocol 2018-09-14 18:29:23 +05:30
Srivats P
488a2ea730 Bugfix: Fix incorrect cksums
Presence of IPv6 Extension Headers was causing incorrect TCP/UDP/ICMP
cksums. Verified that with these changes, cksums are correct for all
combinations of L3 and L4 headers with/without options/extHdrs

Fixes #271
2018-09-13 12:32:36 +05:30
Srivats P
4924d7fe60 Bugfix: Encode hexdump and IPv4 options correctly
Using QString().fromStdString() caused conversion to Unicode via utf8
instead of using the plain binary data
2018-09-13 12:29:13 +05:30
Srivats P
73043f6fe6 HostDev: Added Linux host device code 2018-09-02 19:45:08 +05:30
Srivats P
8adb3d79aa Add custom TOS/DSCP config widget for IPv4/IPv6
Fixes #45
2018-05-18 22:19:54 +05:30
Srivats P
a16eefbff4 Treat warnings as errors and fix existing warnings 2018-04-20 20:50:51 +05:30
Srivats P
db231054da Fix Qt4 to Qt5 porting issues with debug build
Also update modeltest to Qt5
2018-03-27 20:02:36 +05:30
Srivats P
e3c2f37956 Support Qt5.2 since Travis uses Trusty/Qt5.2 2018-03-15 20:03:22 +05:30
Srivats P
f801982830 Port common, rpc and client code to Qt5
Still pending
* server port to Qt5
* verify/test the port
2018-03-14 21:58:56 +05:30
Srivats P
b6c46e27e9 Warn when tx time < 1s not <=1s in preflight check 2018-02-22 20:49:14 +05:30
Srivats P
8350f1ec6a Fix payload protocol frame value variable identification 2018-02-08 22:39:22 +05:30
Srivats P
cd6948b18c Add preflight check for variableCount > frameCount 2018-02-08 22:39:22 +05:30
Srivats P
ece4ce35ea Make mac address editing more intuitive and easier
Fixes #248
2018-01-31 22:03:04 +05:30
Srivats P
6dd6511269 Merge branch 'master' into sign 2017-12-03 12:59:26 +05:30
Srivats P
81e7e735bc sign: Resolve a few FIXMEs
* Rename track_stream_stats to is_tracking_stream_stats for consistency
with other bool params
* Change signature magic value to CODA
* Resolve notify memory leak
2017-12-03 11:26:09 +05:30
Srivats P
e05fa5a690 UI improvements/fixes for Mac protocol
* Change count/step to IntEdit with suitable minimums
* Change mac address to MacEdit

Fixes #224 fixes #188
2017-10-24 18:21:56 +05:30
Srivats P
c53a1866b8 UX: Show stream check results as a bulleted list 2017-09-30 22:17:06 +05:30
Srivats P
a757b9e353 UX: Warn for very short duration stream transmits
Changed the default num_packets from 1 to 10, because otherwise the
default stream values will trigger this warning, which is not a good
experience for the user
2017-09-30 19:32:27 +05:30
Srivats P
f01bdd257f Inform user that Ostinato TCP is stateless 2017-09-25 18:19:45 +05:30
Srivats P
cca2e94bb3 Detect when port config has changed and needs to APPLY'd
For now we prompt user to click Apply, in future we can use this to do a
"Auto Apply"
2017-09-14 20:38:13 +05:30
Srivats P
95f00f2673 Add documentation to python binding
Also some minor documentation for some .proto that goes into the API
guide
2017-08-14 10:43:11 +05:30
Srivats P
a8ec2f1bda Fix IPv4/IPv6 PDML import with Tshark 2.x
Fixes #219
2017-07-06 20:05:15 +05:30
Srivats P
8b2541fbaf Fix incorrect extension id for STP
There was a discrepancy between Protocol::kStpFieldNumber (209) and the
one defined in stp.proto (210) which caused protobuf reflection to fail
when queried for a descriptor corresponding to 209. Referencing the null
descriptor further in the code caused a crash.
2017-04-10 20:59:17 +05:30
Steven
a27634ab66 Corrected spelling of Destination 2017-02-23 11:33:01 -05:00
Srivats P
81bb5f54ba Bugfix: Fix failure parsing Ostinato file format 2017-01-28 10:55:07 +05:30
Srivats P
cfa7d80f7b Convert stream preflight checks to bullet points 2016-12-10 13:50:52 +05:30
Srivats P
a838d09fbd sign: Inform user when stream stats is not enabled
If Sign protocol is configured without enabling stream statistics on
port, inform user that stream statistics will not be available till
it is enabled on port
2016-12-10 13:40:28 +05:30
Srivats P
ac1356ed53 Optimize stream preflight check for performance
Loop only once for all packets of the stream
2016-12-09 18:48:08 +05:30
Srivats P
e9bdfa04ea sign: implemented rx stream stats - loopback problem to be fixed 2016-11-17 21:44:34 +05:30
Srivats P
f8575ef101 sign: post tx stream stats collection; testing pending 2016-11-13 19:11:24 +05:30
Srivats P
cffada4c07 sign: server rpc implementation of stream stats; actual collection of stream stats pending 2016-11-10 18:18:27 +05:30
Srivats P
783db4e832 sign: add stream GUID to sign protocol 2016-11-07 20:09:17 +05:30
Srivats P
bf92ea09df sign: TDD test script for stream stats 2016-11-06 21:28:31 +05:30
Srivats P
0833e5d27c sign: add stream stats related messages and RPCs 2016-11-06 11:40:53 +05:30
Srivats P
e0bf173b39 sign: remove sign stats and remnants of signed streams 2016-11-05 19:53:01 +05:30
Srivats P
1986845bae sign: remove streamsType and associated code 2016-11-05 19:41:02 +05:30
Srivats P
2f9769d0ed sign: rename byteswap.h to avoid name clash with the standard one on Linux 2016-11-05 11:33:47 +05:30
Srivats P
46449a02a3 sign: fix PayloadCksum for odd boundary between protocols 2016-11-01 16:30:13 +05:30
Srivats P
50fec9fa5a sign: fix and move swapXX into a .h file for reuse 2016-11-01 16:28:48 +05:30
Srivats P
b9fd68f71d sign: fix payload/hexdump to not assume they are the last 2016-11-01 13:18:55 +05:30
Srivats P
3ed956eebc sign: added sign protocol 2016-10-31 21:38:19 +05:30
Srivats P
15b88a480b Fix User-Agent header 2016-10-29 12:26:42 +05:30
Srivats P
c2f36c5cb3 IPv4 now supports options - configured as a hex string for now; fixes #120 2016-10-27 23:51:55 +05:30
Srivats P
a79bbb1fcd sign: signed tx stats infra; actual tx signing pending 2016-10-23 17:24:23 +05:30
Srivats P
a8f9795c85 Fix incorect logic of isNewerVersion 2016-09-17 15:21:31 +05:30
Srivats P
10559c2a56 sign: stats infra extended for sign stats 2016-08-22 23:26:33 +05:30
Srivats P
8bfeafddf9 Fix warning 2016-06-25 20:07:34 +05:30
Srivats P
75efed5ec4 Add extension while saving streams and sessions, if user doesn't specify one.
Fixes #187
2016-06-14 18:56:29 +05:30
Srivats P
5e918cf084 Fix STP protocol builder warnings 2016-06-01 20:58:26 +05:30
Srivats P
78957a019f Bugfix: Use char* for kFileMagicValue to avoid dynamic initialization and consequent ordering problems 2016-06-01 19:19:45 +05:30
Srivats P
bdbbd8f0a1 Moved Updater to common ostproto lib, Updater sends UserAgent 2016-05-31 20:23:54 +05:30
Srivats P
24fd176802 Merge pull request #184 from pstavirs/emul
Device Emulation
2016-05-25 18:57:08 +05:30
Srivats P
96ed163ab0 Merge pull request #183 from pstavirs/session
Save/Open Session
2016-05-25 18:43:07 +05:30
Srivats P
a0485cca01 Device Emulation (contd.): took decision on DeviceList+DeviceNeigh vs DeviceInfo API 2016-05-25 18:31:56 +05:30
Srivats P
6cc7231e7f Refactored StreamFileFormat and subclasses' methods to be consistent with SessionFileFormat 2016-05-20 20:30:57 +05:30
Srivats P
ff066ea657 Renamed AbstractFileFormat to StreamFileFormat and FileFormat to OstmFielFormat to be consistent with the new convention introduced with SessionFileFormat/OssnFileFormat 2016-05-19 21:54:28 +05:30
Srivats P
c8a31f3068 Refactor stream file supportedFileTypes() to accept operation - Open/Save and return fileTypes accordingly 2016-05-19 21:05:32 +05:30
Srivats P
822ee2a4b4 Save/Open Session - refactor supportedFileTypes() to accept operation - Open/Save as input parameter and return file types accordingly 2016-05-19 20:50:33 +05:30
Srivats P
29f840c91c Use .ostm as default extension for Saved Stream(s) file and use it as default filter for open stream file 2016-05-18 21:33:26 +05:30
Srivats P
8bea5636ab Open Session: Fixing problem with previous commit where valid format file was also declared invalid/unkonwn 2016-05-17 22:16:52 +05:30
Srivats P
ba754c1043 Open Session - check fileType for native file formats while identifying the file format from filename; also find size of metadata and use it when parsing just the metadata instead of the whole file 2016-05-17 20:47:10 +05:30
Srivats P
bcb5376f9d Save/Open Session - added UI and related infra to invoke OssnFileFormat; code to build sessionContent incomplete 2016-04-14 07:44:07 +05:30
Srivats P
2a77f73e9c Save/Open Session - Implemented OssnFileFormat; code to build SessionContent still pending 2016-03-29 18:55:22 +05:30
Srivats P
c98104f078 Refactored native streams file format to share code with native session file format. Added skeletal code for session/ossn file format 2016-03-28 21:23:10 +05:30
Srivats P
5b46bdd8fc Save/Open Session - Defined the file format for a session file 2016-03-27 11:23:56 +05:30
Srivats P
8b80b4c3ef Device Emulation (contd.): Checked and decided on a couple of FIXMEs/TODOs 2016-03-24 18:47:43 +05:30
Srivats P
fbb56720ba Device Emulation (contd.): Renamed Device List and Device Neighbor List fields so that the names are better reflective of what they contain 2016-03-22 20:18:53 +05:30
Srivats P
803242db38 Device Emulation (contd.): Use portId as part of the default IP address assigned to a deviceGroup 2016-03-19 18:17:50 +05:30
Srivats P
c3fe9b0334 Device Emulation (contd.): Inform user that src/dst mac resolve requires a corresponding device 2016-03-18 19:23:26 +05:30
Srivats P
476bcd850a Bugfix: Preflight check failure strings should not be repeated for each frame in the stream that fails 2016-03-17 20:53:48 +05:30
Srivats P
e7571b2022 Device Emulation (contd.): Add 'resolve' mode for src/dst mac address for GUI configuration of stream 2016-03-08 20:51:02 +05:30
Srivats P
db8ad92738 Device Emulation (contd.): Assign a random mac address to a DeviceGroup at alloc time to ensure unique device keys when enumerating devices from device groups 2016-03-07 21:40:48 +05:30
Srivats P
586a177332 Device Emulation (contd.): Change SpinBoxDelegate for our needs and relicense under GPLv3; use SpinBoxDelegate for the Vlan Table validation 2016-03-03 18:23:25 +05:30
Srivats P
98c8149fbf Device Emulation (contd.): Added SpinBox Delegate (Qt Example) - unmodified code 2016-03-02 22:32:21 +05:30
Srivats P
0ef0c6cfc0 Device Emulation (contd.): Added a IntEdit class and used in DeviceGroup Dialog 2016-03-02 22:14:14 +05:30
Srivats P
2d8510cd3a Device Emulation (contd.): Fix build break due to case typo 2016-03-02 21:41:56 +05:30
Srivats P
ff757d59c6 Device Emulation (contd.): Add default values for IPv6 fields, update IPv6 gateway if addr/pfxlen changes; define and use class Ip6Edit 2016-03-02 06:13:56 +05:30
Srivats P
0edfee8cdf Device Emulation (contd.): Add default values for IPv4 address/gateway, update gateway as address/pfxlen are edited; define and use a Ip4Edit class 2016-03-01 18:48:35 +05:30
Srivats P
9619439e6a Device Emulation (contd.): Use a default Mac address as per RFC 4814; define and use new MacEdit class 2016-02-29 20:12:02 +05:30
Srivats P
a4a654fb02 Device Emulation (contd.): Implemented load/store for the DeviceGroupDialog and supporting code - incomplete 2016-02-25 19:03:00 +05:30
Srivats P
c569328bb3 Device Emulation (contd.): Added DeviceGroupModel on the GUI client 2016-02-12 19:10:19 +05:30
Srivats P
e3a3a0cf1f Device Emulation (contd.): Fix frames not being truncated (introduced by recent changes in StreamBase::frameValue()); add test case for the same and add checksum/error check to pktlentest(s) 2016-01-27 20:39:54 +05:30
Srivats P
754a9ac20e Merge branch 'master' into emul 2016-01-27 18:46:07 +05:30
Srivats P
ad866e3025 Bugfix: Fix incorrect IPv4 pseudo-header checksum calculation for a stream with incrementing/decrementing packet length (regression bug caused by variable fields feature introduced in 0.7) 2016-01-27 18:26:49 +05:30
Srivats P
f1ff9e2616 Device Emulation (contd.) - StreamBase::frameValue() now returns truncated packet content and length instead of bailing out if the passed in buffer size is less than the packet length. This is useful for some of the device emulation code which needs packet content only uptil the IP header but not beyond, so we don't need to unnecessarily create the entire packet with payload for these cases 2016-01-15 09:37:43 +05:30
Srivats P
eff603304e Device Emulation (contd.): Receive, parse IPv6 Neigh Advt and update NDP Table 2016-01-06 18:10:28 +05:30
Srivats P
d9be523827 Device Emulation (contd.) - Implemented sending of IPv6 Neighbor Solicitation packets for IPv6 resolution 2016-01-01 20:17:54 +05:30
Srivats P
0b573d572e Device Emulation (contd.) - added intelligence for single or dual ip stack; fixed pktBuf memory leak 2016-01-01 11:59:31 +05:30
Srivats P
aaf6dbcbf2 Device Emulation (contd.) - Implemented IPv6 device creation and deletion 2015-12-31 20:17:56 +05:30
Srivats P
12d17ef6de Feature (contd.): Device Emulation - added/updated IPv6 fields in emulproto 2015-12-24 19:00:32 +05:30
Srivats P
9cd92c47ab Pull Cleanup: Minor changes and cleanup after merging the STP protocol builder contribution - removal of compilation errors, unncessary code, trailing whitespace 2015-12-17 21:15:47 +05:30
Srivats P
c3c1ca84da Merge branch 'plvision' of https://github.com/tpetriv/ostinato 2015-12-17 18:10:23 +05:30
Srivats P
71d04b63bc Feature (contd.): Device Emulation - refactored and moved EncapEmulation as a native field of DeviceGroup instead of a extension - now the device_count comment of "per encap" makes more sense with encap at the same level as device_count 2015-12-16 20:48:17 +05:30
Srivats P
147469beee Bugfix: Don't use c_str for protobuf type bytes as an intermediate 0x00 is interpreted as terminator; fixes #170 2015-12-11 20:57:48 +05:30
Srivats P
c022290da1 Merge branch 'master' of https://github.com/pstavirs/ostinato into emul
Conflicts:
	server/pcapport.cpp
2015-12-01 21:00:41 +05:30
Srivats P
bed034a08b Merge branch 'master' into emul 2015-12-01 19:16:24 +05:30
Srivats P
cad62c1fd7 Feature (contd.): Device Emulatiom - converted emulation tests to use the py.test framework 2015-11-29 12:52:08 +05:30
Taras Petriv
5a51e13ad9 Some changes 2015-11-24 14:33:25 +02:00
Taras Petriv
f5c4648bb1 Adding STP protocol support 2015-11-24 14:31:17 +02:00