Maximilian Hils
ea894282f3
move test requirements out of main requirements.txt
2014-01-28 03:21:59 +01:00
Aldo Cortesi
a9f8dcf755
Merge pull request #11 from mitmproxy/refactor_read_http_body
...
always return Content-Length: 0 if r is not set
2014-01-04 14:48:12 -08:00
Maximilian Hils
e0d376381e
fix windows compatibility
2013-12-16 04:47:29 +01:00
Maximilian Hils
7049becdfe
always return Content-Length: 0 if r is not set
2013-12-15 06:42:58 +01:00
Maximilian Hils
0382b809ea
always read files in binary mode
2013-06-16 00:30:13 +02:00
Aldo Cortesi
5eeb52183a
Adapt for new request_client_cert option in netlib.
2013-05-13 09:03:48 +12:00
Aldo Cortesi
0504bcfd96
Changelog, minor cleanups.
2013-04-30 09:32:11 +12:00
Aldo Cortesi
110a8bb594
Print pathod craft explanations to stdout.
2013-03-03 16:33:50 +13:00
Aldo Cortesi
155710f991
Improve robustness of proxy CONNECT, test coverage to 100%.
2013-03-02 16:57:00 +13:00
Aldo Cortesi
9167b9b8b6
Make pathoc request return more human-friendly.
2013-02-27 09:07:16 +13:00
Aldo Cortesi
69339836c2
Adapt to netlib API changes.
2013-02-24 15:36:35 +13:00
Aldo Cortesi
9c9e15341f
Make last_log return None if nothing is logged.
2013-02-23 21:46:01 +13:00
Aldo Cortesi
9bd269c26a
Add support for client certificates
...
- pathod request logs now include a clientcert member with details on the
client cert, or None if there wasn't one.
- pathoc has a -C option to specify a client certificate
2013-01-20 22:37:43 +13:00
Aldo Cortesi
ed7ef84557
Implement and unit test not-after-connect option.
2013-01-05 20:36:06 +13:00
Aldo Cortesi
5493925ea0
CONNECT through proxy mode for pathoc
...
Also, use this to unit test the pathod CONNECT implementation.
2013-01-05 20:29:46 +13:00
Aldo Cortesi
c744ef2dcb
Proxy mode: drop to SSL if we see an HTTP CONNECT request
2013-01-05 17:15:42 +13:00
Aldo Cortesi
3886ccae93
Provisional proxy mode support for pathod.
2013-01-05 15:25:09 +13:00
Aldo Cortesi
d7f641c6ee
Shift SSL parameters into Pathoc class
2013-01-04 10:37:26 +13:00
Aldo Cortesi
781592d6c0
Fix timeout test.
2012-11-18 09:34:15 +13:00
Aldo Cortesi
e40482576c
Add disconnect specifiers to test suite.
...
Fixes hangs seen in test suite with recent versions of requetss.
2012-11-18 09:04:49 +13:00
Aldo Cortesi
af698b2fda
:u belongs on Request not Response
2012-11-16 14:41:02 +13:00
Aldo Cortesi
ef9cbe3b25
Add u User-agent shortcut.
...
Usage:
200:ua - Shortcut "a" for Android.
200:u"foo" - Or a value literal
Shortcuts can be listed using the --show-uas argument to pathoc.
2012-11-16 13:46:42 +13:00
Aldo Cortesi
3f50930dc0
Use .freeze to implement the -e explain flags for pathod and pathoc.
...
This now prints (in pathoc) or logs (in pathod) a frozen specification that
includes an expanded record of all generated values and locations.
2012-10-31 11:34:58 +13:00
Aldo Cortesi
8c6cc8140c
Fix generated values in request path specification.
2012-10-31 09:48:55 +13:00
Aldo Cortesi
0c9cfb3f38
Add a .freeze() method to all components.
...
This expands and freezes all randomly generated values. The message returned
can be queried for a precise spec to reproduce the message.
2012-10-31 09:32:21 +13:00
Aldo Cortesi
f8df0a1e75
Add a .values method to messages, simplify a lot of stuff as a consequence.
2012-10-30 16:08:36 +13:00
Aldo Cortesi
a09584b9e6
Make Message classes more self-contained.
2012-10-30 15:22:53 +13:00
Aldo Cortesi
b2deb470de
Extract .serve() method from message classes.
2012-10-30 14:46:18 +13:00
Aldo Cortesi
677f0e0580
Change preview_safe to return a safe copy of the current message.
2012-10-30 13:36:32 +13:00
Aldo Cortesi
a1f782b543
Simplify Request/Response class hierarchy.
2012-10-30 13:28:22 +13:00
Aldo Cortesi
3e0cd6442a
Add .spec methods for Request and Response objects.
2012-10-29 17:33:10 +13:00
Aldo Cortesi
747eafd107
Add a .spec method to the token ABC, and to all tokens.
2012-10-29 16:31:35 +13:00
Aldo Cortesi
8741600ce7
Refactoring: canonical storage of a message is now the sequence of tokens that defines it.
...
We use a set of accessor properties to ease access to tokens. We can now ditch
the .accept() methods.
2012-10-29 15:16:44 +13:00
Aldo Cortesi
882969086c
Cleaup, some more ABCs.
2012-10-29 10:19:58 +13:00
Aldo Cortesi
61f8992fbf
Change response spec format to code[:features]
...
Reason message is now specified as just another feature with the "m" mnemonic.
2012-10-28 22:18:06 +13:00
Aldo Cortesi
07560ffe30
Cleaup, ABC for Value classes.
2012-10-28 22:00:19 +13:00
Aldo Cortesi
35f37626a9
Clean up .accept() signature.
2012-10-28 17:39:58 +13:00
Aldo Cortesi
7d74f75f6d
Split Code and Reason into separate _Component objects.
2012-10-28 17:07:16 +13:00
Aldo Cortesi
e9af434c2b
.body and .method to lazy generator instantiation.
...
Also introduce a _Component ABC.
2012-10-28 14:15:29 +13:00
Aldo Cortesi
9d42a06c92
Move message body to new lazy-generator scheme.
2012-10-28 12:56:08 +13:00
Aldo Cortesi
f54ed69a35
Adjust serve() API.
2012-10-28 09:06:55 +13:00
Aldo Cortesi
ac5aacce44
Remove check argument to serve() methods.
...
Refactoring means we can now do this without a callback.
Also introduce the maximum_length method that estimates the max possible
message length.
2012-10-27 17:40:22 +13:00
Aldo Cortesi
06864e5a1b
Major refactoring towars separate representation of expressions and request/response service.
2012-10-27 14:00:50 +13:00
Aldo Cortesi
6174e46023
Unit test suite love: 100% coverage
...
Also start figuring out how to sanitize binary data in the JSON API.
2012-10-25 10:59:18 +13:00
Aldo Cortesi
173b5c596e
Start moving policy checks to service-time, rather than parse-time.
2012-10-25 09:45:55 +13:00
Aldo Cortesi
c684f7417d
Extend Action and Value classes
...
- Values now know how to print their own specs
- Actions now know how to print their own specs
- Actions have a resolve_offset method that resolves relative and random offsets.
2012-10-24 11:32:53 +13:00
Aldo Cortesi
e83392bfc8
Start making Action objects more sophisticated.
2012-10-05 11:23:30 +13:00
Aldo Cortesi
495daf2b64
Remove actions log and explain, preparing for a more sophisticated take on this.
2012-10-05 11:14:17 +13:00
Aldo Cortesi
f5d5cc4988
rparse.py -> language.py
2012-10-05 10:30:32 +13:00
Aldo Cortesi
41f1c66772
Add -q and -r flags to pathod, logging request and respnose bytes.
...
- These flags also mean that a bytes log is included in the internal log
buffer.
- There's an -x flag to turn on hex dump output in the text logs (does
not affect the log buffer).
2012-10-01 12:48:26 +13:00