Aldo Cortesi
af1a4ffdcd
Ditch the addon stdout wrapper
...
This results in a 30% improvement in our core request throughput.
Fixes #3102
2018-05-08 14:26:41 +12:00
Aldo Cortesi
717fbaa990
optmanager: refactor for coverage and clarity
2018-05-08 14:24:41 +12:00
Aldo Cortesi
76a7883c8b
events: document behaviour of done() more fully
2018-05-08 11:09:10 +12:00
Aldo Cortesi
1b0eed19d1
benchmarks: quick-run scripts for mitmproxy and mitmdump
2018-05-08 11:08:37 +12:00
Aldo Cortesi
9b51393b6d
benchmark: keep track of requests/responses seen by proxy
2018-05-08 11:00:20 +12:00
Aldo Cortesi
f7d7e31f06
options: add the concept of deferred settings
...
We've had a perpetual sequencing problem with addon startup. Users need to be
able to specify options to addons on the command-line, before addons are
actually loaded. This is only exacerbated with the new async core, where load
order can't be relied on.
This patch introduces deferred options. Options passed with "--set" on the
command line are deferred if they are unknown, and are automatically applied by
the addon manager once matching addons are registered and their options are defined.
2018-05-08 10:56:00 +12:00
Aldo Cortesi
7ec9c5524f
Merge pull request #3104 from cortesi/cmdcall
...
Zap some commands.call invocations that were missed in the rename
2018-05-07 19:19:51 +12:00
Aldo Cortesi
39e5f94cf1
Zap some commands.call invocations that were missed in the rename
2018-05-07 18:46:17 +12:00
Thomas Kriechbaumer
2a0da34a0c
Merge pull request #3103 from mhils/fix-processing
...
Remove leftover processing_complete
2018-05-06 18:37:24 +02:00
Maximilian Hils
752a367436
remove leftover processing_complete
2018-05-06 15:47:12 +02:00
Thomas Kriechbaumer
44d788ff96
Merge pull request #2986 from miheerdew/patch-1
...
Workaround for MacOS transparent proxy
2018-05-06 12:24:24 +02:00
Thomas Kriechbaumer
eecb576aff
Merge pull request #3100 from cortesi/block
...
Remove allowremote addon, add an improved take called block
2018-05-06 11:40:46 +02:00
Aldo Cortesi
60acbd79b9
Remove allowremote addon, add an improved take called block
...
We now have two options: block_global blocks global networks, block_private
blocks private networks. The block_global option is true by default, and
block_private is false by default. The addon name is "block" so the options are
correctly prefixed.
Also make option documentation precise, reduce verbosity of logs.
2018-05-06 12:43:25 +12:00
Aldo Cortesi
c53bc39c95
Merge pull request #3099 from Kriechi/fix-3024
...
fix #3024
2018-05-06 11:27:14 +12:00
Thomas Kriechbaumer
54e2daa21e
fix #3024
2018-05-05 14:38:02 +02:00
Thomas Kriechbaumer
b4f618e801
Merge pull request #3098 from drzax/patch-1
...
Fix typo in addons-overview.md
2018-05-05 12:34:22 +02:00
Simon Elvery
48ba4eb737
Fix typo in addons-overview.md
2018-05-05 20:24:49 +10:00
Aldo Cortesi
a3007aa223
Merge pull request #3093 from cortesi/diecustom
...
Remove custom events
2018-05-05 10:05:57 +12:00
Aldo Cortesi
9e283b2779
Merge pull request #3097 from cortesi/examp
...
Revamp dup_and_replay example
2018-05-05 10:05:43 +12:00
Aldo Cortesi
f5dc0aace1
Revamp dup_and_replay example
...
- Exposes view.add as a command
- Copes with cases where a view addon isn't present
- Avoids infinite loop caused by replaying replays
Fixes #3096
2018-05-05 09:34:22 +12:00
Aldo Cortesi
6bd2d5059b
Remove custom events
...
These were always weird, and were added to support exit when processing
completed to mitmdump. We now have better ways to do this.
2018-05-03 09:42:51 +12:00
Aldo Cortesi
165a4be7a9
Merge pull request #3091 from cortesi/dietick
...
Remove the tick event
2018-05-03 08:54:58 +12:00
Aldo Cortesi
f380a77dee
Remove the tick event
...
Mitmproxy: the tickless wonder.
2018-05-02 14:29:15 +12:00
Aldo Cortesi
d12186a935
Merge pull request #3090 from cortesi/iflight
...
Redesign keepserving
2018-05-02 13:45:06 +12:00
Aldo Cortesi
2f3ba1f66d
Catch some stray command.call invocations
2018-05-02 12:08:15 +12:00
Aldo Cortesi
0f6072050a
Merge pull request #3089 from cortesi/creplay
...
Revamp client replay
2018-05-02 11:33:45 +12:00
Aldo Cortesi
38ff8109fb
taddons: remove has_event
...
We no longer use this anywhere, so ditch it.
2018-05-02 11:31:28 +12:00
Aldo Cortesi
22a4b1d5d4
Redesign keepserving
...
- Instead of listening for a pseudo-event, we periodically check whether client
replay, server replay or file reading is active.
- Adjust server replay not to
use tick.
- Adjust readfile to expose a command to check whether reading is in progress.
2018-05-02 11:26:40 +12:00
Aldo Cortesi
e963408434
console: use replay count commands in statusbar
...
Also add a periodic refresh every 0.5 seconds for the statusbar. This is in
addition to refreshes upon event update notifications, and picks up replay
status changes not linked to flow events.
2018-05-02 09:43:42 +12:00
Aldo Cortesi
42b04a5413
server replay: expose the replay.server.count command
2018-05-02 09:02:27 +12:00
Aldo Cortesi
204726349d
client replay: replaying flows in-flight should be added to count()
2018-05-02 08:50:17 +12:00
Aldo Cortesi
00d790fe84
commands: clarify command call interface, fix web app replay
2018-05-02 08:36:15 +12:00
Aldo Cortesi
09c36a8c7c
client replay: use count command for console statusbar
2018-05-01 09:04:59 +12:00
Aldo Cortesi
6d27b28b85
client replay: expad and consolidate tests
2018-05-01 08:47:26 +12:00
Aldo Cortesi
e8dac2d290
client replay: revert our changes if replay is aborted
2018-04-30 17:19:39 +12:00
Aldo Cortesi
236a2fb6fd
client replay: re-design
...
Re-design the way client replay works. Before, we would fire up a thread,
replay, wait for the thread to complete, get the next flow, and repeat the
procedure. Now, we have one replay thread that starts when the addon starts,
which pops flows off a thread-safe queue. This is much cleaner, removes the
need for busy tick, and sets the scene for optimisations like server connection
reuse down the track.
2018-04-30 17:17:03 +12:00
Aldo Cortesi
28d53d5a24
client replay: move all client replay-related code into addon
2018-04-27 16:34:56 +12:00
Aldo Cortesi
bc3ace6082
Merge pull request #3082 from p1uymi/patch-2
...
Changed syntax of two options (from v2 to v3)
2018-04-27 11:20:20 +12:00
Aldo Cortesi
abc36a5f6b
Merge pull request #3083 from mitmproxy/requires-io-master
...
[requires.io] dependency update on master branch
2018-04-27 11:19:34 +12:00
requires.io
b3f3e97377
[requires.io] dependency update
2018-04-27 00:11:43 +02:00
requires.io
710880a652
[requires.io] dependency update
2018-04-26 22:41:36 +02:00
p1uymi
93a59acaeb
Changed syntax from v2 to v3
...
--client-certs = v2 syntax --> --set client_certs=value = v3 syntax
--cadir = v2 syntax --> --set cadir=value = v3 syntax
2018-04-26 16:14:27 +02:00
Aldo Cortesi
a4a48a96d6
Merge pull request #3078 from kajojify/expanduser
...
Fix #3002 . Auto-expanding for tilda.
2018-04-26 21:02:10 +12:00
Miroslav
a42443b029
Incompatible types
2018-04-26 08:41:48 +03:00
Miroslav
d7abdd86e8
Lint
2018-04-26 08:21:46 +03:00
Aldo Cortesi
13f3cbed4f
Merge pull request #3076 from clyfish/keepalive
...
add SO_KEEPALIVE
2018-04-26 11:49:34 +12:00
Aldo Cortesi
b18e0fa2bc
Merge pull request #3071 from cortesi/tickless
...
asyncio: shift script reloading out of the tick event
2018-04-26 11:47:07 +12:00
Miroslav
ea6fab09b5
Fix #3002 . Auto-expanding
2018-04-26 01:35:44 +03:00
Maximilian Hils
5546f0a05e
Merge pull request #3077 from mhils/pytest-fix
...
Fix pytest invocation errors
2018-04-25 06:15:28 -06:00
Maximilian Hils
19ceb6f49a
fix pytest invocation errors
2018-04-25 14:00:50 +02:00