aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/proxy.py
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'meeee/master'Aldo Cortesi2012-03-101-2/+6
|\
| * Fix SSL requests with Transfer-Encoding: chunkedMichael Frister2012-03-081-1/+5
| | | | | | | | Add size parameter to FileLike.readline, used by read_chunked.
| * Handle Transfer-Encoding header values case insensitiveMichael Frister2012-03-081-1/+1
| | | | | | | | According to HTTP/1.1 RFC 2616 Section 3.6.
* | Create an SSL certificate class.Aldo Cortesi2012-03-051-1/+3
| |
* | Factor out cert operations in to certutils.py.Aldo Cortesi2012-02-291-4/+4
| |
* | Rationalise upstream cert flag and variable names.Aldo Cortesi2012-02-281-4/+4
| |
* | Add upstream certificate lookup.Aldo Cortesi2012-02-271-4/+9
|/ | | | | | This initiates a connection to the server to obtain certificate information to generate interception certificates. At the moment, the information used is the Common Name, and the list of Subject Alternative Names.
* License notifications, minor docs.Aldo Cortesi2012-02-231-0/+15
|
* Minor docs and example script fixes.Aldo Cortesi2012-02-211-1/+0
|
* Create ODictCaseless for headers, use vanilla ODict for everything else.Aldo Cortesi2012-02-201-1/+1
|
* Rename Headers class to ODictAldo Cortesi2012-02-201-4/+27
| | | | | ODict is an ordered dictionary class that will be useful in many other parts of our API.
* Consolidate palettes somewhat.Aldo Cortesi2012-02-181-2/+0
|
* Refactor reverse proxyingAldo Cortesi2012-02-181-34/+36
| | | | | | | - Retain the specification from the Host header as a Request's description. - Expand upstream proxy specifications to include the scheme. We now say https://hostname:port - Move the "R" revert keybinding to "v" to make room for a reverse proxy binding that matches the command-line flag.
* reverse proxy mode: small comment clarificationHeikki Hannikainen2012-02-161-2/+5
|
* Implemented reverse proxy mode: -R upstreamhost:port makes theHeikki Hannikainen2012-02-161-2/+10
| | | | | | proxy accept a 'GET / HTTP/1.0' request and fill up the destination host and port from the ones given with -R (for example, "-R localhost:80").
* Add filter for detecting flows with errors.Aldo Cortesi2012-02-101-1/+1
| | | | Also, remove dependency on weird _is_response method.
* Fix an issue caused by some editors when editing a request/response body.Aldo Cortesi2012-01-211-1/+1
| | | | | | Many editors make it hard save a file without a terminating newline on the last line. When editing message bodies, this can cause problems. For now, I just strip the newlines off the end of the body when we return from an editor.
* Handle missing message/reason phrase in HTTP response status line gracefully ↵meeee2011-09-261-0/+2
| | | | by adding an empty one.
* Fix a rare crash when a new cert is generated during cerdir removal.Aldo Cortesi2011-09-111-1/+4
|
* Add HTTP body size limit specification to command-line tools.Aldo Cortesi2011-09-091-10/+16
|
* Basic infrastructure for request and response body size limits.Aldo Cortesi2011-09-091-15/+34
|
* Improve robustness against invalid data.Aldo Cortesi2011-09-051-2/+4
|
* Removed unused importsAndrás Veres-Szentkirályi2011-08-181-1/+1
|
* Add a basic Flow processor example.Aldo Cortesi2011-08-131-1/+1
|
* Code cleanliness - appease pychecker.Aldo Cortesi2011-08-041-2/+2
|
* Request class now has a clean pydoc profile.Aldo Cortesi2011-08-041-1/+1
|
* Further interface cleaning.Aldo Cortesi2011-08-031-10/+10
|
* Move all HTTP objects to flow.pyAldo Cortesi2011-08-031-444/+26
| | | | That's Request, Response, ClientConnect, ClientDisconnect, Error, and Headers.
* Tweak encoding behaviourAldo Cortesi2011-08-021-2/+5
| | | | | | | | | - Don't fail to identity encoding when an unknown encoding is specified. - Don't constrain encodings. I want to try to modify traffic as little as possible by default. - When decoding, delete content-encoding header rather than set it to "identity" - Refuse to decode/encode when there is an existing but unknown content-encoding header.
* Unit test++Aldo Cortesi2011-08-021-9/+14
|
* General cleanup.Aldo Cortesi2011-08-021-1/+0
| | | | | Cut out unused variables and code, generally shut up pychecker as much as is reasonable.
* Fix a rare undefined variable crash in proxy.py.Aldo Cortesi2011-08-021-1/+3
|
* Add decoding/encoding for requests.Aldo Cortesi2011-08-011-23/+25
|
* Merge remote-tracking branch 'alts/encoding'Aldo Cortesi2011-07-281-0/+21
|\
| * Adds encode and decode methods to Response objectsStephen Altamirano2011-07-261-3/+24
| |
* | Changes replace logic to function in both Python 2.6.x and 2.7.xStephen Altamirano2011-07-261-12/+12
|/ | | | Tests now only assume Python 2.6.x rather than requiring 2.7.x. This does not preclude the use of flags as a kwarg in replace
* Fix a crash in mitmdump event display.Aldo Cortesi2011-07-231-1/+1
|
* Extend eventlog information.Aldo Cortesi2011-07-231-7/+19
| | | | Also, squash an SSL-related bug revealed by the extended logging.
* Also replace strings path for requests.Aldo Cortesi2011-07-221-0/+2
|
* Add utility functions to search and replace strings in flowsAldo Cortesi2011-07-221-0/+29
| | | | | | | | | | This is a common task in pentesting scenarios. This commit adds the following functions: utils.Headers.replace proxy.Request.replace proxy.Response.replace flow.Flow.replace
* Removes last_encoding attribute from Response. Prompts for encoding on ↵Stephen Altamirano2011-07-211-1/+0
| | | | identity responses
* Removes should_autodecode attribute from Response. Adds commandline option ↵Stephen Altamirano2011-07-211-1/+0
| | | | 'd' to toggle autodecode, adds togglable option 'd' to do the same
* Adds ability to toggle between encodings in the response viewStephen Altamirano2011-07-181-0/+2
|
* Adds support for content encoding, namely gip and deflatealts2011-07-161-6/+15
|
* Introduce an anti-compression command-line argument.Aldo Cortesi2011-07-151-1/+7
| | | | | This is on by default, which means we avoid compressed content unless the -z flag is specified.
* Rewrite Headers object to preserve order and case.Aldo Cortesi2011-07-141-9/+8
|
* Cast some data read from dump files to str, to prevent unicode promotion.Aldo Cortesi2011-07-011-5/+5
| | | | | This fixes a bug that caused a traceback when de-serialized requests were replayed. Also adds unit tests for the problem.
* Make the certificate wait time configurable.Aldo Cortesi2011-06-271-2/+5
| | | | | | | | | Since OpenSSL doesn't let us set certificate start times in the past, the client and proxy machine time must be synchronized, or the client might reject the certificate. We can bodgy over small discrepancies by waiting a few seconds after a new certificate is generated (i.e. the first time an SSL domain is contacted). Make this a configurable option, and turn it off by default.
* Repair a problem that sometimes caused SSL connections to peg the CPU.Aldo Cortesi2011-06-231-3/+6
|
* unit test coverage ++Aldo Cortesi2011-03-201-13/+0
|