Commit graph

146 commits

Author SHA1 Message Date
Renovate Bot
246b0b1f28 Update github.com/elazarl/goproxy commit hash to d06c3be 2021-11-17 09:25:30 +00:00
Renovate Bot
a305b7e681 Update module google.golang.org/grpc to v1.42.0 2021-11-02 19:04:39 +00:00
Renovate Bot
31e0165100 Update golang.org/x/net commit hash to d418f37 2021-10-22 07:05:16 +00:00
896b7ded65 Introduce DNS-over-HTTPS and HTTP2 support
- add more advanced multiplexing to match on HTTP request properties
- introduce custom DNS client to cover traditional UDP/TCP and HTTPS transport with the same client
- add HTTP2 check module and server functionality where applicable
2021-10-22 06:58:22 +00:00
Renovate Bot
e64cd5dd94 Update module google.golang.org/grpc to v1.41.0 2021-10-13 12:05:40 +00:00
Renovate Bot
3bb5339692 Update module github.com/spf13/viper to v1.9.0 2021-10-13 11:16:56 +00:00
Renovate Bot
5184a41452 Update module github.com/maxatome/go-testdeep to v1.10.1 2021-10-13 10:58:07 +00:00
Renovate Bot
bdf8068c2c Update module go.uber.org/zap to v1.19.1 2021-10-13 10:30:06 +00:00
Renovate Bot
d85d4899b7 Update module github.com/mitchellh/mapstructure to v1.4.2 2021-10-13 08:31:26 +00:00
4d81e8f3df
Prepare to run a whole check script for integration tests 2021-08-27 16:04:02 +02:00
a8294037ee
Upgrade to Go 1.17 and add some more linters 2021-08-19 20:04:30 +02:00
7867325603 Include PPROF handler to improve observability
Closes #33
2021-08-11 07:33:32 +00:00
c5abd1c0a7
Small cleanups and improvements 2021-08-09 11:27:59 +02:00
2d26a8d16f
Add offset to maintain stable index through 'indefinite' slice - tests for edge cases are missing 2021-07-08 18:27:38 +02:00
6e18bb79c7
Fix dependencies 2021-07-06 15:55:56 +02:00
f3c842de0b
Update dependencies
- replace gopacket with fork until patch is merged
2021-07-06 15:42:46 +02:00
02560254a9
Update dependencies and pin versions 2021-07-05 19:15:00 +02:00
3098c09953
Update dependencies 2021-06-21 19:36:17 +02:00
e2c30b0c3c
Update to multierr 1.7 and update usages 2021-05-07 11:53:14 +02:00
6ec6561a93
Add check command to imctl 2021-05-05 22:09:36 +02:00
2b56eeb0dd
Add middleware to automatically interpret context errors 2021-05-03 14:35:19 +02:00
2220c17be3
Rework checker API
- migrate gRPC API to official health check
- add HTTP endpoint implementation for checker
- add some gRPC middlewares
2021-05-03 08:27:14 +02:00
45a6d11d5b
Extend grammar and test suite 2021-04-28 17:03:04 +02:00
27c01a1918
Add basic grammar 2021-04-28 17:02:54 +02:00
e6fc96aa14 Get rid of reflect.DeepEqual
- add security scanners
- extend test suite
2021-04-24 14:52:34 +00:00
6442f9f915 Cleanup 2021-04-22 20:19:07 +00:00
463c66b073
Concise StopPCAPFileRecord gRPC method
- fix logging issue in test logger
- adopt change in all components
- update dependencies
2021-03-04 18:19:28 +01:00
3ae3eefbac
Complete CLI integration 2021-02-17 15:39:06 +01:00
864de9f20b
Initial draft of PCAP capturing 2021-02-16 16:50:23 +01:00
d70ba748f5 Introduce Lifecycle for every endpoint and manage listeners in the renamed Orchestrator
- merge packages to get a more concise layout because plugins are no more and therefore there's not a lot to be exported
- fix test logger
- rework config parsing to be easier and more transparent
- remove unnecessary APIs because dynamic endpoint handling is rather a won't implement
2021-02-10 20:26:45 +00:00
2d97beaf70
Refactor gRPC sink
- rename it to GenericSink
- add tests
- update dependencies
- improve test step to always get a report
- add NoOpSink for tests
2021-01-27 13:31:51 +01:00
0138b57782
Merged CLI and server app init 2021-01-26 18:19:54 +01:00
1e8139e845
Add first draft of event stream 2021-01-26 18:17:37 +01:00
49e58ac2e4 Add advanced matching options to HTTP handler
- move to Gitlab
- make code better testable
- create app abstraction for server
- cleanup
2020-12-26 13:11:49 +00:00
57a7e10e74
Add Prometheus metrics (#10)
* Add Prometheus metrics

- cleanup
- update dependencies
- improve parsing of options where possible
- Update Go to latest version
2020-10-02 11:56:48 +02:00
460940e4d8
Fixed TLS issue with mismatching certificates
- fixed fallback to P256 curve
- added option to configure minimal TLS version
- added option to include insecure cipher suites
2020-06-24 12:25:34 +02:00
108444e094 Add health API and basic CLI support
- remove plugin API due to incompatibility issues
- add Docker build to GitHub Actions
- add custom container friendly config file
2020-06-15 12:32:18 +02:00
2ff0e7cb56 Fix container build
- change build stage to Alpine
- adapt changes in CI pipeline to generate code that is not checked in anymore
- update dependencies
2020-06-15 12:32:18 +02:00
def844c5fe Cleanup
- remove *.pb.go files
- remove *.mock.go files
- remove config2 references to get cleaner imports
- update dependencies
2020-06-15 12:32:18 +02:00
1ef1f59402 Add gRPC API implementation
- add config struct for API
- add UUID to endpoint to be able to address them uniquely
- add manager to handle all gRPC services
2020-06-15 12:32:18 +02:00
7c2a41ad25 Move TLS/cert handling to main app
- apply changes in proxy plugin and TLS interceptor
- add HTTPS proxy support
- move ca-generation command to main app
- minor refactoring to improve API stability
- move mocks to extra packages to avoid cycling imports
- fix bug in multi-port configuration
- change HTTP proxy to redirect to HTTP mock instead of maintaining custom rules
2020-04-26 00:32:46 +02:00
9236a38be0 Moved endpoint handling to new module
- introduce new endpoints module
- introduce Endpoint and EndpointManager
- introduce new Logging abstraction API to allow proper mocking
- add error return value to Start and Shutdown of endpoints
- add mocks of some internals to allow easier testing
- add generate target to take care of all code generation
2020-04-14 00:15:33 +02:00
ca1ac7d89a
Move plugins to top level directory in repository
- update Makefiles and GoReleaser config
- update dependencies
2020-04-11 15:31:08 +02:00
ac067cd288
Fix plugin modules and test make target 2020-04-11 13:48:13 +02:00
63ba6da810
Add basic DNS and DNS-over-TLS implementation
- add random and incremental DNS fallback strategy
- add option to handle DNS requests based on regex patterns
- made Makefiles plugin independent
- extended config
- set default plugins directory in Dockerfile
2020-04-02 00:58:44 +02:00
a720b0ee41
Initial working version
* supports HTTP
* support TLS interception e.g. for HTTPS
* support CA generation via cli
* first draft of plugin API
* support commands from plugins
* includes Dockerfile
* includes basic configuration
2020-04-01 04:08:21 +02:00