Commit Graph

170 Commits

Author SHA1 Message Date
Thomas Kriechbaumer
5dda9505b6 http2: improve framereader 2016-09-03 10:00:31 +02:00
Thomas Kriechbaumer
e5b0dae7e9 add websockets support to mitmproxy 2016-09-01 09:57:18 +02:00
Maximilian Hils
4534363671 add escape_single_quotes=False arg to bytes_to_escaped_str 2016-07-29 19:54:44 -07:00
Maximilian Hils
64a867973d sni is now str, not bytes 2016-07-06 21:03:17 -07:00
Maximilian Hils
8b564bc934 fix pathod log encoding 2016-07-06 16:47:32 -07:00
Maximilian Hils
d51cf543bb remove clean_bin, clarify unicode handling 2016-07-05 15:11:32 -07:00
Thomas Kriechbaumer
23e295b37e py3: fix bytes vs. str 2016-07-03 23:22:04 +02:00
Shadab Zafar
d361177753 h2: move header parsing to netlib 2016-07-03 18:03:34 +05:30
Maximilian Hils
2c09e0416b minor fixes 2016-07-01 17:49:18 -07:00
Shadab Zafar
268e42e55e py3++: test/mitmproxy/test_server 2016-07-01 10:23:04 -07:00
Thomas Kriechbaumer
eb3ed87100 move custom HTTP/2 stack from netlib to pathod 2016-06-17 15:06:01 +02:00
Maximilian Hils
78785df16b pathoc: use idna encoding for hostnames 2016-06-16 17:09:52 -07:00
Shadab Zafar
aa3d3290ee Py3: Send bytes to get_cert 2016-06-16 17:08:06 -07:00
Shadab Zafar
cd5ef042bb Py3: pathoc should send bytes over wire 2016-06-16 17:08:06 -07:00
Shadab Zafar
52fa195204 Unexpected spaces around = 2016-06-15 09:49:39 +02:00
Shadab Zafar
03ce09ca99 Py3: Split on byte newlines in pathod.log 2016-06-15 09:49:39 +02:00
Shadab Zafar
22a94f06e6 Py3: Find Content-Length header by bytes 2016-06-15 09:49:38 +02:00
Shadab Zafar
f83433e674 Py3: pathoc 2016-06-15 09:49:38 +02:00
Shadab Zafar
fa40531a80 Py3: pathod 2016-06-15 09:49:38 +02:00
Shadab Zafar
d9b940c21e Py3: websockets 2016-06-15 09:49:38 +02:00
Shadab Zafar
0f1aa2b78e Py3: fix http2 bytes issue 2016-06-15 09:49:38 +02:00
Aldo Cortesi
e6fd98bb72 Start rolling out leak detection in netlib 2016-06-14 14:32:18 +12:00
Aldo Cortesi
e58a2bf095 Merge branch 'master' into appveyor 2016-06-12 11:27:16 +12:00
Aldo Cortesi
dc545ca0f6 Make the tcp connection closer cancellable
And use this to make pathoc error handling more sophisticated
2016-06-12 11:17:05 +12:00
Aldo Cortesi
728d5caa22 Fold mitmproxy.version and pathod.version into netlib.version 2016-06-12 10:29:12 +12:00
Aldo Cortesi
09edbd9492 Improve debugging of thread and other leaks
- Add basethread.BaseThread that all threads outside of test suites should use
- Add a signal handler to mitmproxy, mitmdump and mitmweb that dumps resource
information to screen when SIGUSR1 is received.
- Improve thread naming throughout to make thread dumps understandable
2016-06-11 19:52:24 +12:00
Aldo Cortesi
11fb217191 Fix a crash when pathoc connections fail
Use the new handler to tidy this up.
2016-06-10 11:14:23 +12:00
Aldo Cortesi
2cf79b7912 Remove timestamps from pathoc output
Pathoc is an interactive tool, no need for a long leading timestamp. More
generally, make timestamps optional in the logging mechanism so we can
configure this with command-line flags or something down the track.
2016-06-10 10:47:28 +12:00
Shadab Zafar
7d62121b85 Py3: encode() the spec before appending to path 2016-06-08 16:29:21 +05:30
Shadab Zafar
70216673a1 Py3: Find content-length header by bytes 2016-06-08 16:28:39 +05:30
Shadab Zafar
e187358e97 Py3: Pass bytes to http Request and Response 2016-06-08 16:17:00 +05:30
Shadab Zafar
4f97216501 Py3: Properly encode() access to user_agents 2016-06-08 16:15:54 +05:30
Aldo Cortesi
1ffc273c94 Utils cleanups
- Move more stuff that belongs in netlib.human
- Move some stuff to near the only use
- Zap mitmproxy.utils.timestamp(). I see the rationale, but we used it
interchangeably with time.time() throughout the project. Since time.time()
dominates in the codebase and timestamp() is such low utility, away it goes.
2016-06-07 17:12:52 +12:00
Aldo Cortesi
75ebd638eb Merge remote-tracking branch 'upstream/master' 2016-06-07 12:56:51 +12:00
Aldo Cortesi
e037fe05ff Migrate pathod docs to Sphinx
All the content of the pathod docs are moved into Sphinx. The interactive
format has not translated well to static docs, and there's still a lot of
rewriting, format fixing, structuring, etc to be done.
2016-06-07 12:55:32 +12:00
Maximilian Hils
2ee5e8ef0e fix NestedMessage encoding 2016-06-06 13:39:38 -07:00
Maximilian Hils
6447c8ae22 fix .freeze(), improve tests 2016-06-06 13:31:44 -07:00
Shadab Zafar
afa2ad81df Py3: encode() status code responses 2016-06-06 11:52:45 -07:00
Shadab Zafar
b03a98f9fc Py3: Exception doesn't have to be bytes 2016-06-06 11:52:45 -07:00
Shadab Zafar
5a2932adc1 Py3: Fix corresponding base.Integer test in test_language_base 2016-06-06 11:52:45 -07:00
Shadab Zafar
daba944151 Py3: Store base.Integer value as bytes 2016-06-06 11:52:45 -07:00
Shadab Zafar
78b2fa3a13 Py3: UASTRINGS should be indexed by and return bytes 2016-06-06 11:52:45 -07:00
Shadab Zafar
da38ce2e6e Py3: decode() input before creating new Header token 2016-06-06 11:52:45 -07:00
Shadab Zafar
c4ac19be9f Py3: Use bytes_to_escaped_str for escaping message 2016-06-06 11:52:45 -07:00
Shadab Zafar
4813f9c69e Py3: More byte literals 2016-06-06 11:52:45 -07:00
Shadab Zafar
bafce6cfe9 Py3: Use byte string literals 2016-06-06 11:51:36 -07:00
Shadab Zafar
07a0d6dcc2 Py3: Return bytes from _Component class 2016-06-06 11:51:36 -07:00
Maximilian Hils
1214085f67 fix pathod test on Windows 2016-06-06 11:37:49 -07:00
Aldo Cortesi
210c376901 Fix sequencing in Pathoc websocket termination test 2016-06-06 18:17:22 +12:00
Aldo Cortesi
21c7218ee3 Close when Pathoc.connect raises an exception 2016-06-06 16:52:51 +12:00