Commit Graph
1120 Commits
Author SHA1 Message Date
Urban IshimweandGitHub fdc8b094f0 Benchmarking, packaging, and fix issues, tests and perfomance (#797)
### performance
- handling of the very big packet(any size that can be buffered)
- speeding up TCP sessions by using message hints: Added **proto.HasFullPayload** that helps to validate the entire HTTP request, it supports `Chunked` encoding too! Added **proto.HasRequestTitle** and **proto.HasResponseTitle** for validating the beginning of HTTP request. Those methods are used `input_raw.go` with `TCP`.
- supports Keep-Alive: the above functions helps to support keep-alive

### Packaging
- **capture:** engines(capture/doc.go)
- **tcp:** tcp message parser (tcp/doc.go)

### benchmarking
- **capture.BenchmarkPcapDump:** the benchmarks regarding dumping packets in a pcap file
- **capture.BenchmarkPcapFile:** the benchmarks of reading packets from a pcap file
- **capture.BenchmarkPcap:** the benchmarks of parsing packets from the loopback interface with pcap handles
- **proto.BenchmarkHasFullPayload:**: benchmarking this function which validates the HTTP payload
- **tcp.BenchmarkPacketParseAndSort:** benchmarks of parsing and sorting packets
- **tcp.BenchmarkMessageParserWithoutHint:** benchmarks of message reasembling by using `SYN` and `FIN` flag
- **tcp.BenchmarkMessageParserWithHint:** benchmarks of message reasembling by using `proto.HasRequestTitle` and `proto.HasFullPayload` flag

### issues
see linked issues

###  tests
- fixed input raw and engine tests

**Most of the changed of the files, was about using functionalities of** `tcp` **and** `capture` **in existing functionalities**
2020-08-11 12:44:53 +03:00
Arijit DasandGitHub 2f81fba370 Merge pull request #792 from buger/flag-mapping
Map Appsetting to flag names.
2020-07-25 00:52:04 +05:30
arijitad 8e7cf658b2 Merge remote-tracking branch 'origin/master' into flag-mapping 2020-07-23 10:06:23 +05:30
arijitad 01b6f1129c Restructre AppSetting and address comments. 2020-07-23 10:00:16 +05:30
Urban IshimweandGitHub 3da60ed4b6 Merge pull request #796 from sonmezonur/prettify_http_usage_fix
Fix typo in usage text of --prettify-http flag
2020-07-17 17:31:05 +02:00
Onur Sonmez 8593af3e8a Fix typo in usage text of --prettify-http flag 2020-07-17 17:45:06 +03:00
Urban IshimweandGitHub 99f44a6718 Merge pull request #791 from suiwenfeng/master
fix wrong param value updated while --http-set-param
2020-07-15 15:26:34 +02:00
arijitad 80b19f918b Map Appsetting to flag names. 2020-07-15 00:14:38 +05:30
suiwenfeng aaf8c81c91 fix wrong param value updated while --http-set-param 2020-07-14 22:37:04 +08:00
Leonid Bugaev 839b41f91c Fix scripts to build packages, and MacOS pkg, and remove java dependency
Plus updated version.go
2020-07-06 14:51:54 +03:00
Urban IshimweandGitHub 5cbb5ea85f updating modules (#778)
the major purpose of this PR is to update modules to their recent **minor version**.
this is helpful in terms of having update functionalities and fixing some issues caused by non-up-to-date modules.
v1.1.0
2020-06-24 17:19:19 +03:00
Romanenko AlexeyandGitHub ea822d83da Correct size for gz file (#777)
Fix #775 

When we are using .gz for output we are counting incorrect file size. Now it should be ok
2020-06-23 18:11:45 +03:00
gavinsharkandGitHub 3dff07107a bugfix:fix the bug that middleware will return illegal http body when http body is empty (#737)
If the http body is empty. The httpBody function will return HTTP header content from index 3. This is unexpected.
Function caller also cannot tell whether the httpbody is empty or not.
2020-06-22 14:53:49 +03:00
Urban IshimweandGitHub c20b2734dc Merge pull request #771 from buger/pro-merge
Pro merge
2020-06-16 22:53:43 +02:00
Urban Ishimwe 39b1f80457 Merge branch 'master' into pro-merge 2020-06-16 22:43:08 +02:00
Arijit DasandGitHub 8462d5d09f Merge pull request #769 from buger/arijitAD/refactor_emitter
Refactor emitter.go and fix test accordingly.
2020-06-15 07:59:57 +05:30
Urban Ishimwe a7c5788052 Merge branch 'master' into pro-merge 2020-06-13 11:39:51 +02:00
Urban IshimweandGitHub a63ce611df Merge pull request #768 from buger/optimize-raw-socket
make raw socket usable and minor optimization.
2020-06-12 10:58:21 +02:00
Arijit Das f89c52445b Fix test. 2020-06-12 00:29:12 +05:30
Arijit Das 60d949a243 Fix test. 2020-06-12 00:02:36 +05:30
Arijit Das 9d5caade25 Minor revert. 2020-06-11 21:15:37 +05:30
Arijit Das 28688e29e8 Fix test. 2020-06-11 21:13:37 +05:30
Arijit Das e9bbc252e0 Fix input raw test and go fmt. 2020-06-11 20:34:09 +05:30
Arijit Das 73e26d48d9 Fix CI comments. 2020-06-11 19:24:38 +05:30
Arijit Das 1c87a339a5 Address comments. 2020-06-11 19:21:31 +05:30
Urban Ishimwe 312d9e8b7d optimizing raw socket 2020-06-08 16:22:04 +02:00
Leonid Bugaev 540e42b9d4 Add more PRO protection 2020-06-08 14:35:38 +03:00
Leonid Bugaev 15bd2608f7 Fix Makefile 2020-06-08 14:34:19 +03:00
Leonid Bugaev d67bc13db3 Merging PRO functionality back to OSS repo 2020-06-08 14:29:32 +03:00
Leonid Bugaev ab2ba8400d Improve S3 debugging 2020-06-06 17:07:51 +03:00
Arijit Das db28858804 Refactor emitter.go and fix test accordingly. 2020-06-06 16:00:43 +05:30
Urban Ishimwe 9d71900ad9 listener tests fix 2020-06-06 10:39:06 +02:00
Urban Ishimwe 0b437716be make raw socket usable, minor optimazation and fixed tests.
- ListenPacket can now capture request(non-multicast)
2020-06-06 09:54:25 +02:00
Romanenko AlexeyandGitHub 932c894b6b Merge pull request #767 from slimus/540-clean-code
clean code with #540
2020-06-06 14:15:53 +07:00
Romanenko AlexeyandGitHub 73b1621656 Merge pull request #765 from slimus/fix-flag-settings
Settings parse and some typo fixes
2020-06-06 14:15:31 +07:00
Alexey Romanenko b1ab61f2b2 clean code with #540 2020-06-05 23:05:58 +07:00
Alex Romanenko 080240ca9f add default values for settings 2020-06-05 15:05:26 +07:00
Alex Romanenko b0f3048876 add default setting to emitter_test 2020-06-05 14:16:53 +07:00
Alexey Romanenko 261c592b83 fix parse settings; fix typo 2020-06-04 23:20:23 +07:00
Arijit DasandGitHub 766cb77410 Merge pull request #764 from buger/fix-race-fileinput
Fix race input_file.go while closing the file and remove dead code.
2020-06-04 17:02:15 +05:30
Arijit Das e1bf25682f Minor changes. 2020-06-03 22:41:58 +05:30
Arijit Das 039d7c3f26 Fix race input_file.go while closing the file and remove dead code. 2020-06-03 22:35:47 +05:30
Romanenko AlexeyandGitHub 71387ffc90 Merge pull request #745 from relunctance/master
Fixed Wrong parameters entered by user (#703)
2020-06-03 11:00:59 +07:00
Romanenko AlexeyandGitHub dbead6b428 Update input_raw.go 2020-06-03 10:52:44 +07:00
Romanenko AlexeyandGitHub 2fb9b2054e fix #730 (#763)
libpcap has a bug if timeout more than 1 second. We should use 1 second by default for mac os x before it will fixed
2020-06-02 20:27:48 +03:00
Arijit DasandGitHub 17f7c3c74b Merge pull request #759 from buger/graceful-goroutine-close
Wait for goroutines to close in emitter.go.
2020-06-02 22:57:14 +05:30
Arijit Das 8c1a194a51 Addressed comment. 2020-06-02 22:54:02 +05:30
Romanenko AlexeyandGitHub 857bef93f0 Merge pull request #761 from slimus/update-travis-go-version
Update go version in travis environment
2020-06-02 22:12:50 +07:00
Arijit Das aa1eb9f8b7 Address comment. 2020-06-02 12:20:19 +05:30
Alexey Romanenko 7925dbb0b1 update go version in travis environment 2020-06-01 21:54:50 +07:00