Maximilian Hils
f0e96be142
ensure binary read on windows
2013-12-10 03:13:37 +01:00
Maximilian Hils
4984bbb83b
remove code duplication in ProxyHandler by unifying read_transparent and read_reverse
2013-12-09 19:10:15 +01:00
Maximilian Hils
a509a9037b
Merge branch 'master' into 0.10
2013-12-08 14:14:57 +01:00
Aldo Cortesi
73791f986a
Merge pull request #166 from ghjc/forward-proxy
...
Added -F http[s]://server:port option that allows MITM to forward traffi...
2013-12-08 01:05:33 -08:00
Aldo Cortesi
4816cae98c
Merge pull request #170 from jsoriano/master
...
Reverse proxy works with SSL
2013-12-08 01:02:17 -08:00
Aldo Cortesi
dfcec4ffba
Merge pull request #180 from mitmproxy/add_serverconnection_scripthook
...
Add serverconnection scripthook
2013-12-08 00:55:55 -08:00
Maximilian Hils
d4c3b1c213
attempt to fix https://github.com/mitmproxy/netlib/issues/24
2013-11-19 04:08:16 +01:00
Maximilian Hils
675518f873
add serverconnect script hook
2013-11-18 17:25:52 +01:00
Jaime Soriano Pastor
7140323bdb
New method establish_ssl to avoid duplicated code
2013-09-26 12:38:13 +02:00
Jaime Soriano Pastor
f33d128a7f
Reverse proxy works with SSL
2013-09-26 12:23:48 +02:00
Maximilian Hils
2956c144d3
Merge branch 'master' into 0.10
2013-09-14 23:47:04 +02:00
JC
65d1ed1b3c
Added -F http[s]://server:port option that allows MITM to forward traffic to another http server upstream.
2013-08-30 17:19:58 -07:00
Aldo Cortesi
a2643b52f9
Tweak timing display
...
- Remove elapsed time. Space is at a premium here, and this is somewhat
redundant with the rate figure. We should display complete timing information
somewhere in the detailed flow view.
- Tone down the colour. Reserve highlights for stuff that should really pop out
to the user.
- Make rate calculation more acurate. Include header sizes. Use response start
and end time, rather than request end and response end. This means that we show
actual transfer rates, not including DNS requests and so forth.
2013-08-23 10:25:44 +12:00
Maximilian Hils
729677cd85
Merge branch 'master' into 0.10
2013-08-17 13:30:36 +02:00
Aldo Cortesi
f850bdd848
Revamp dummy cert store
...
We no longer keep these on disk. This is for a number of reasons, including
some race conditions and the fact that some valid IDNA-encoded domain names are
not valid file names on Windows.
2013-08-12 16:04:02 +12:00
Aldo Cortesi
2c4e5e0a73
Better handling of cert errors on connection.
2013-08-10 23:07:22 +12:00
Aldo Cortesi
edb10e33aa
Remove GPL notices left in source files after our change to the MIT license.
...
Thanks to Roy Shamir for reporting this.
2013-08-01 11:08:00 +12:00
Aldo Cortesi
439d9a294c
Make use of a change to netlib.tcp that clarifies error conditions for flush and close.
...
Should fix #144 .
2013-07-30 09:42:29 +12:00
Maximilian Hils
29bcbd57d5
fix #144
...
netlib wraps IOError in NetLibDisconnect, so we need to cover this as well.
2013-07-28 21:05:17 +02:00
Aldo Cortesi
df3d2d70ed
Terminate can be called on an unconnected server connection.
2013-07-28 18:05:04 +12:00
Aldo Cortesi
10b744ee08
Properly terminate SSL server connections.
...
Before, we had dangling SSL server connections causing resource exhaustion.
I believe this fixe #144 and #153
2013-07-28 10:50:25 +12:00
Aldo Cortesi
5c1157ddaf
Move app instantiation out of proxy.py.
2013-07-24 10:32:56 +12:00
Aldo Cortesi
55f7e8d5b9
Don't take minor version into account when checking serialized data compatiblity.
2013-07-13 14:44:09 +12:00
Matthias Urlichs
d9cc6f1dd6
proxy.py: Catch channel.ask() returning None when terminating
2013-06-28 07:53:56 +02:00
Matthias Urlichs
be1377850e
Close connection when flush fails
2013-06-26 15:02:55 +02:00
Maximilian Hils
84248d431b
fix send_error behavior if there are no headers
2013-06-17 10:52:19 +02:00
Aldo Cortesi
61c794e08f
Merge pull request #107 from rouli/master
...
Adding remote TCP and SSL setup timestamps
2013-04-19 17:19:26 -07:00
Aldo Cortesi
e3fd0e838d
Add a basic built-in web app.
2013-03-25 09:20:26 +13:00
Aldo Cortesi
98e4421a90
Trim docs.
2013-03-23 15:42:25 +13:00
Rouli
c6bf28f3f7
adding tcp and ssl setup timestamps to get better resolution on flows performance
2013-03-19 18:21:52 +02:00
Aldo Cortesi
790ad468e4
Fix bug that caused mis-identification of some HTTPS connections in transparent mode.
2013-03-17 14:35:36 +13:00
Aldo Cortesi
cde66cd584
Fuzzing, and fixes for errors found with fuzzing.
2013-03-03 22:03:27 +13:00
Aldo Cortesi
2465b8a376
100% unit test coverage on proxy.py. Hallelujah!
2013-03-03 12:13:33 +13:00
Aldo Cortesi
d5876a12ed
Unit test proxy option parsing.
2013-03-03 11:58:57 +13:00
Aldo Cortesi
5c6587d4a8
Move HTTP auth module to netlib.
2013-03-03 10:37:06 +13:00
Aldo Cortesi
c20d1d7d32
Extend unit tests for proxy.py to some tricky cases.
2013-03-02 22:42:36 +13:00
Aldo Cortesi
415844511c
Test cert generation errors.
2013-03-02 16:59:16 +13:00
Aldo Cortesi
a95d78438c
Test SNI for transparent mode.
2013-03-02 15:06:49 +13:00
Aldo Cortesi
10db82e9a0
Test SNI for ordinary proxy connections.
2013-03-02 14:52:05 +13:00
Aldo Cortesi
ba674ad551
New SNI handling mechanism.
2013-03-01 09:05:39 +13:00
Aldo Cortesi
0257815141
Significantly simplify server connection handling, and test.
2013-02-24 22:24:21 +13:00
Aldo Cortesi
705559d65e
Refactor to prepare for SNI fixes.
2013-02-24 17:35:24 +13:00
Aldo Cortesi
d0639e8925
Handle server disconnects better.
...
Server connections can be closed for legitimate reasons, like timeouts. If
we've already pumped data over a server connection, we reconnect on error. If
not, we treat it as a legitimate error and pass it on to the client.
Fixes #85
2013-02-24 14:04:56 +13:00
Aldo Cortesi
269780c577
Unit test dummy response functions.
2013-02-23 16:34:59 +13:00
Aldo Cortesi
7800b7c910
Refactor proxy core communications to be clearer.
2013-02-23 14:10:27 +13:00
Aldo Cortesi
aaf892e3af
Significantly refactor the master/slave message passing interface.
2013-02-17 12:42:48 +13:00
Aldo Cortesi
782bbee8c0
Unit tests for ServerConnectionPool
2013-01-29 11:35:57 +13:00
Aldo Cortesi
2aa175a6ca
Stub implementation of a server connection pool.
2013-01-29 10:55:19 +13:00
Aldo Cortesi
a74ca40660
Unravel enormously long read_request into three distinct methods.
2013-01-28 22:26:25 +13:00
Aldo Cortesi
57f01ffb07
Test suite, remove extraneous code.
2013-01-28 21:59:03 +13:00