Commit Graph

276 Commits

Author SHA1 Message Date
Maximilian Hils
a325ae638b fix tests 2014-11-11 13:09:05 +01:00
Maximilian Hils
cece3700df fix #402 2014-11-10 17:11:36 +01:00
Aldo Cortesi
a2a87695d3 Reduce loop timeouts to improve mitmproxy responsiveness
Fixes #384
2014-11-06 10:51:30 +13:00
Aldo Cortesi
16654ad6a4 Fix crash while streaming
Found using fuzzing. Reproduction with pathoc, given "mitmproxy -s" and
pathod running on 9999:

get:'http://localhost:9999/p/':s'200:b\'foo\':h\'Content-Length\'=\'3\'':i58,'\x1a':r

 return flow.FlowMaster.run(self)
   File "/Users/aldo/mitmproxy/mitmproxy/libmproxy/controller.py", line 111, in run
     self.tick(self.masterq, 0.01)
   File "/Users/aldo/mitmproxy/mitmproxy/libmproxy/flow.py", line 613, in tick
     return controller.Master.tick(self, q, timeout)
   File "/Users/aldo/mitmproxy/mitmproxy/libmproxy/controller.py", line 101, in tick
     self.handle(*msg)
   File "/Users/aldo/mitmproxy/mitmproxy/libmproxy/controller.py", line 118, in handle
     m(obj)
   File "/Users/aldo/mitmproxy/mitmproxy/libmproxy/flow.py", line 738, in handle_responseheaders
     self.stream_large_bodies.run(f, False)
   File "/Users/aldo/mitmproxy/mitmproxy/libmproxy/flow.py", line 155, in run
     r.headers, is_request, flow.request.method, code
   File "/Users/aldo/mitmproxy/mitmproxy/netlib/http.py", line 401, in expected_http_body_size
     raise HttpError(400 if is_request else 502, "Invalid content-length header: %s" % headers["content-length"])
 netlib.http.HttpError: Invalid content-length header: ['\x1a3']
2014-10-26 17:58:36 +13:00
Aldo Cortesi
7aee9a7c31 Spacing and legibility 2014-10-26 17:44:49 +13:00
Wade 524
1ef74cf294 Fixing issue #368. 2014-10-24 15:54:51 -07:00
Maximilian Hils
c79bdeb4e5 fix #346 2014-10-22 14:03:19 +02:00
Maximilian Hils
37cc6ae0bb fix race conditions in tests 2014-10-19 01:26:08 +02:00
Maximilian Hils
e114858438 add generic tcp proxying, fix #374 2014-10-18 18:29:35 +02:00
Marcelo Glezer
81f5636389 --replay-ignore-content & --replay-ignore-param ported from branch 0.10 2014-10-03 07:29:44 -03:00
Aldo Cortesi
d998790c2f Clean up and clarify StateObject
- Flatten the class hierarchy
- get_state, load_state, from_state are public
- Simplify code
- Remove __eq__ and __neq__. This fundamentally changes the semantics of
inherited objects in a way that's not part of the core function of the
class
2014-09-17 11:41:42 +12:00
Aldo Cortesi
f7da58ca9b Basic websocket connection, code cleanup. 2014-09-17 09:40:25 +12:00
Aldo Cortesi
17868f61a9 Remove external app option, make tick timeout explicit 2014-09-14 11:46:01 +12:00
Aldo Cortesi
81e3a6e8e6 Super-basic outline for web io loop 2014-09-14 11:30:00 +12:00
Aldo Cortesi
efa3e3dde8 web -> onboarding 2014-09-12 12:30:03 +12:00
Aldo Cortesi
76982937a6 Reorg to put web app in its own directory 2014-09-10 11:34:58 +12:00
Maximilian Hils
ece15b3c8a reverse proxy: adjust dst when reading flows, fix #346 2014-09-08 14:43:32 +02:00
Maximilian Hils
2b2d21aff0 add --ignore ui indication 2014-09-08 12:20:40 +02:00
Maximilian Hils
58ea198698 fix #349 2014-09-07 15:58:27 +02:00
Maximilian Hils
b23a1aa4a4 much tests. so tcp. very wow. 2014-09-04 19:08:54 +02:00
Maximilian Hils
ea55f2e012 Merge branch 'issue_341' into server_change_api
Conflicts:
	examples/redirect_requests.py
	libmproxy/console/common.py
2014-09-04 00:11:20 +02:00
Maximilian Hils
649e63ff3c fix some leftovers 2014-09-04 00:10:01 +02:00
Maximilian Hils
2f44b26b4c improve HTTPRequest syntax 2014-09-03 23:44:54 +02:00
Maximilian Hils
b0cfeff06d fix #341 - work on flows instead of request/response internally. 2014-09-03 16:57:56 +02:00
Maximilian Hils
b97b1f17cf fix #328 2014-08-24 14:22:11 +02:00
Maximilian Hils
2e6a698287 fix #308 2014-08-08 19:04:58 +02:00
Maximilian Hils
e9401a2123 Merge branch 'stream'
Conflicts:
	libmproxy/protocol/http.py
2014-07-31 22:29:13 +02:00
Maximilian Hils
83536e7e53 minor fixes 2014-07-27 02:10:39 +02:00
Maximilian Hils
e9c834a30d fix #259 2014-07-26 12:02:18 +02:00
Maximilian Hils
4382829b7d workaround: always make sure that flow.response.reply exists 2014-07-25 18:47:48 +02:00
Maximilian Hils
4b4a18a2e4 add --stream options, various fixes 2014-07-21 21:06:55 +02:00
Maximilian Hils
7398db80db simplify responseheader scripthook 2014-07-20 11:17:53 +02:00
Brad Peabody
c47ddaa3a0 basic attempt to implement streaming response, needs testing 2014-07-17 22:43:26 -07:00
Vyacheslav Bakhmutov
b7c1d05782 Remove global should_exit and fix tests 2014-06-13 14:14:55 +07:00
Maximilian Hils
4d9799f103 add support for log levels 2014-03-13 01:04:45 +01:00
Maximilian Hils
7e86744226 add -d switch to mitmdump to compensate for old verbosity functionality 2014-03-12 22:39:23 +01:00
Maximilian Hils
c1fff51b1b always use relative imports, fix status bar bug 2014-03-10 22:36:47 +01:00
Maximilian Hils
e6349b540f split up protocol\__init__.py 2014-03-10 21:57:50 +01:00
Maximilian Hils
5598a8de82 finish proxy.py split up 2014-03-09 21:51:24 +01:00
Maximilian Hils
fc4fe83eaf split up proxy.py 2014-03-09 21:13:08 +01:00
Maximilian Hils
d9a6037299 fix comments 2014-02-09 02:54:07 +01:00
Aldo Cortesi
a85974eaa8 Fix flow initialization order error
Resolves #210
2014-02-08 17:17:35 +13:00
Maximilian Hils
9f5f2b7071 test libmproxy.app, increase coverage 2014-02-07 02:36:39 +01:00
Maximilian Hils
cb397ec788 fix bugs, expose timestamp information to console ui 2014-02-06 00:53:39 +01:00
Maximilian Hils
f26d91cb81 add skeleton to change destinatin server during intercept, fix all testcases on windows 2014-02-05 20:26:47 +01:00
Maximilian Hils
d864a326d2 fix all tests except those using set_url and get_url 2014-02-05 14:33:17 +01:00
Maximilian Hils
6a53ae5fd3 push failing tests down to 43 2014-02-04 05:02:17 +01:00
Maximilian Hils
2db5f9de26 bring failing tests back into the double-digit range 2014-01-31 04:45:39 +01:00
Maximilian Hils
7d96ff00ef remove _flow_map from state, improve logging 2014-01-31 03:01:51 +01:00
Maximilian Hils
8544a5ba4b add generic TCP handler with SSL support, move StateObject into netlib 2014-01-30 18:56:23 +01:00