aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix a number of small UI infelicities.Aldo Cortesi2011-03-131-16/+14
| | | | | | | - Make request/response view switching behave sensibly - Avoid having an empty string appear in connection view text. This makes urwid misbehave. - Make it clear that intercept and cookies specifications are filters.
* I've now added all the features I want for 0.4. Bump the version number.Aldo Cortesi2011-03-131-1/+1
|
* Fix a traceback sometimes triggered viewing a connection with no response.Aldo Cortesi2011-03-131-25/+27
|
* Add server replay to mitmproxy.Aldo Cortesi2011-03-132-4/+48
|
* Add client plaback to mitmproxy.Aldo Cortesi2011-03-132-5/+37
|
* Add anticache support for mitmproxyAldo Cortesi2011-03-131-2/+31
| | | | | Also stub out an option toggle command for anticache, killextra and norefresh options.
* Rejigger status bar somewhat. Add indicators for various bits of state.Aldo Cortesi2011-03-132-23/+52
| | | | | In particular, we now display limits, sticky cookie expressions and intercepts in the bar.
* Fix stickycookie setting, indented view traceback.Aldo Cortesi2011-03-133-1/+8
|
* Remove beep functionality from mitmproxy.Aldo Cortesi2011-03-131-21/+0
| | | | This acts funny (sometimes works, sometimes doesn't) and isn't really useful.
* mitmproxy prompted input now display previously set value.Aldo Cortesi2011-03-132-29/+58
| | | | | E.g. if you set a limit, then re-enter the limit prompt, you start with the currently set value.
* Unit tests for cmdline.pyAldo Cortesi2011-03-121-1/+1
|
* console.py 100% test coverageAldo Cortesi2011-03-121-3/+0
|
* netstring.py 100% unit test coverage.Aldo Cortesi2011-03-121-4/+0
|
* Unify mitmproxy and mitmdump commandlineAldo Cortesi2011-03-122-11/+149
| | | | | | | | - Extract common options into cmdline.py - Change mitmproxy keybindings to fit command line Some cmdline options and keybindings aren't in operation yet - just stubs where functionality will be added in the next few commits.
* Handle invalid bind address specifications gracefully.Aldo Cortesi2011-03-123-3/+11
|
* Make mitmdump handle invalid serialized data gracefully.Aldo Cortesi2011-03-112-5/+11
|
* Display Errors and killed connections in mitmdump.Aldo Cortesi2011-03-113-38/+60
|
* Add --norefresh to stop refreshing server playback to mitmdump.Aldo Cortesi2011-03-113-2/+35
| | | | Also, make cookie parsing for refreshing more error-tolerant.
* Stub out refresh for server-side replay.Aldo Cortesi2011-03-091-1/+26
|
* Add an --anticache option to mitmdump.Aldo Cortesi2011-03-093-4/+23
| | | | | | | This removes all headers that might cause a server to return 304-not-modified. For now, all the new features are going into mitmdump - everything will be ported over to mitmproxy once I have the feature set locked down.
* Move version constants to version.py, add version to serialized flows.Aldo Cortesi2011-03-093-2/+4
| | | | | For now, we don't do anything with the serialized version info, but this should give us some future-proofing for serialization format changes.
* Think harder about timestamps. Just save seconds since the epoch as a float.Aldo Cortesi2011-03-091-4/+5
|
* Store timestamps on flow components as a UTC time tuple.Aldo Cortesi2011-03-072-6/+14
| | | | | | Format is: (tm_year,tm_mon,tm_mday,tm_hour,tm_min, tm_sec,tm_wday,tm_yday,tm_isdst)
* Make mitmdump server playback also exit by default.Aldo Cortesi2011-03-062-5/+11
| | | | Like client playback, the --keepserving option makes mitmdump keep serving.
* Make mitmdump exit after client replay is complete by default.Aldo Cortesi2011-03-063-6/+23
| | | | Add an option --keepserving to make it keep serving after replay.
* Add flow_count and active_flow_count methods to flow.State.Aldo Cortesi2011-03-061-9/+19
| | | | Use these in unit tests where sensible.
* Bump unit tests, rearrange mitmdump command-line options slightly.Aldo Cortesi2011-03-061-0/+1
|
* Allow client replays to be replayed against server replays.Aldo Cortesi2011-03-061-1/+3
| | | | Useful for testing.
* Add client replay options to mitmdump.Aldo Cortesi2011-03-062-15/+26
|
* Massage namespace to make room for client replay.Aldo Cortesi2011-03-052-12/+28
| | | | Mostly replay -> server_replay
* Basic client playback state structure.Aldo Cortesi2011-03-041-13/+36
|
* Add an indicator that sticky cookies have been applied in mitmdump.Aldo Cortesi2011-02-253-1/+8
|
* Move stringification funcs from proxy to dump.Aldo Cortesi2011-02-252-15/+17
|
* Add -c and -C options to mitmdump to control sticky cookies.Aldo Cortesi2011-02-251-0/+5
| | | | | | It's dumb that this needs to be two different options, but optparse doesn't support optional arguments. It would be much nicer to just have "-c" for "all", and "-c filter" for a specified filter.
* Minor housekeeping - unused code, nocover directives.Aldo Cortesi2011-02-242-11/+3
| | | | 95% test coverage.
* More mature sticky cookie primitive. Use it in console.py.Aldo Cortesi2011-02-243-34/+55
|
* Start abstracting out sticky cookie state.Aldo Cortesi2011-02-242-3/+26
|
* Remove first iteration playback/record.Aldo Cortesi2011-02-234-479/+0
| | | | Bonus: unit test coverage goes from 70% to 94% with one commit. ;)
* Add a way for users to specify header significance in server replay.Aldo Cortesi2011-02-232-4/+19
| | | | | | Also add the --rheader command-line option to mitmdump to let the user specify an arbitrary number of significant headers. The default is to treat no headers as significant.
* Minor housekeeping: bump version, clean todo.Aldo Cortesi2011-02-211-1/+1
|
* Move script hooks into the flow primitives.Aldo Cortesi2011-02-212-23/+44
| | | | This lets handle scripts in corner cases like playback situations more easily.
* Add --kill option to mitmdumpAldo Cortesi2011-02-212-6/+16
| | | | | | If this option is passed all requests that are not part of a replayed conversation are killed. If the option is not passed, such requests are passed through to the server as usual.
* Fix a subtle Unicode problem in Response.assembleAldo Cortesi2011-02-211-1/+1
| | | | | | | If msg is Unicode, the proto string is automatically promoted to Unicode. If the proto string is promoted to Unicode, then the FMT interpolation is also done in Unicode. If this happens, then binary data in content will cause an exception.
* First pass of playback function for mitmdump.Aldo Cortesi2011-02-213-2/+44
|
* Add a simple server playback state object.Aldo Cortesi2011-02-212-6/+49
| | | | | | | | We use a loose hash to match incoming requests with recorded flows. At the moment, this hash is over the host, port, scheme, method, path and content of the request. Note that headers are not included here - if we do want to include headers, we would have to do some work to normalize them to remove variations between user agents, header order, etc. etc.
* Clean up and strip down netstrings module.Aldo Cortesi2011-02-202-91/+13
|
* Certificates are now generated in a temporary per-session directory.Aldo Cortesi2011-02-202-24/+13
| | | | | | This means that certificates don't accumulate in the conf directory, users don't have to clear certificates if the CA is regenerated, and the user can specify a custom CA without invalid certificates being loaded inadvertently.
* Revamp SSL configuration.Aldo Cortesi2011-02-202-73/+79
| | | | | | | | - Move option parsing utiliities to proxy.py - Don't have a global config object. Pass it as an argument to ProxyServer. - Simplify certificate generation logic.
* Clean up certificate generation.Aldo Cortesi2011-02-204-141/+159
| | | | | | | | | | | | - Use templates for config files. We can re-introduce customization of the certificate attributes when we need them. - Split CA and cert generation into separate functions. - Generation methods provide an error return when generation fails. - When the user explicitly specifies a certificate, we don't generate it, but fail if it doesn't exist.
* Implement state loading that doesn't change object identity.Aldo Cortesi2011-02-202-5/+57
| | | | We need this to let us load state from copied Flows returned from scripts.