| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch moves the final pieces of master functionality into addons.
- Add a ReadFile addon to read from file
- Add a separate ReadStdin addon to read from stdin, only used by mitmdump
- Remove all methods that know about io and serialization from master.Master
|
|/ |
|
| |
|
| |
|
|\
| |
| | |
Add MultiDictView.copy()
|
| | |
|
|\ \
| | |
| | | |
py3: __ne__ delegates to __eq__ by default
|
| | | |
|
|\ \ \
| |_|/
|/| | |
Replace from file through replacement editor #1458
|
| |\|
| | |
| | |
| | |
| | | |
Conflicts:
test/mitmproxy/addons/test_replace.py
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
We also now ignore unknown options in config files by default, and print a
warning if verbosity is incremented.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Attributes on options share a namespace with options themselves. It's getting
too crowded on our Options object, so let's shift some obvious stuff into the
module.
|
| | | |
|
| | | |
|
| |/
|/|
| |
| |
| |
| |
| |
| | |
- Add an options parameter to the start() event. This is to be used by addons
on startup to add custom options.
- Add a running() event that is called once the proxy is up and running.
- With the new paradigm we can't log during master __init__, so add a tiny
termstatus addon to print proxy status to terminal once we're running.
|
| | |
|
|\ \
| | |
| | | |
Update proxyauth.py to add proxyauth metadata
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | | |
make websocket flows serializable
|
| | |/
| |/|
| | |
| | | |
fixes #2113
|
|/ / |
|
| |
| |
| |
| | |
longer, but much clearer for devs who are unfamiliar with the codebase.
|
| |
| |
| |
| |
| | |
name, type, value matches natural language ($x is a bool with a default value of $y)
and also matches the python type annotation order of name: type = value
|
| | |
|
| |
| |
| |
| |
| | |
The mechanism for booleans attaches the short flag to whatever the opposite of
the default is.
|
| |
| |
| |
| |
| |
| | |
We now have one option "proxyauth". If this is "any", we accept any
credentials, if it starts with an @ it's treated as a path to an htpasswd file,
if it is of the form username:password it's a single-user credential.
|
| |
| |
| |
| |
| |
| |
| | |
- Regularise presentation and wording
- Help is mandatory for all options
- Auto-generate wording to say that sequence options can be passed multiple
times on the command-line
|
| |
| |
| |
| |
| |
| | |
We now have --set, so only options that really deserve it get a dedicated flag.
I'm inclined to strip this back even more. Feel free to argue that YOUR
favourite option deserves special treatment here.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The --set option is a universal flag for setting options. Some examples:
Turn on a boolean:
mitmdump --set onboarding=false
Add a value to a sequence:
mitumdupm --set setheaders=/foo/bar/voing
Zero a sequence:
mitumdupm --set setheaders
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
Now that options are completely regular, we can automate reading them out of
arguments, rather than listing them out by hand like savages.
|
| |
| |
| |
| |
| | |
Instead of having two representations we have one canonical specification.
Fixing the editor in console is left ot a further patch.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We now have:
--mode regular (the default)
--mode transparent
--mode socks5
--mode reverse:SPEC
--mode upstream:SPEC
Where SPEC is a host specification.
|
| |
| |
| |
| |
| | |
We now have one option to control this. If the path is prefixed with a "+" we
append, otherwise we overwrite.
|
| | |
|
| |
| |
| |
| | |
Move all simple string options to the new scheme. Also regularise some names.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Start dealing with corner cases:
- Sizes are always stored in options as strings
- Add a new core addon that's responsible for verifying settings that don't
belong to an addon
- Add a _processed scratch space on the Options object for processed core
values to be stored in. This is pretty dirty, but less dirty than re-parsing
values every time. We'll come up with something better down the track.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This commit:
- Adds a help field to options
- Adds a function to generate parser definitions from options
- Uses this to migrate all boolean flags over to the new system
- Makes all booleans consistently follow the --foo/--not-foo convention
There are a number of things left to be done here:
- Argparse doesn't give us a nice way to format --foo --not-foo help. Click
does, and moving to click is a goal down the track.
- For now, we remove all short aliases. I want to re-evaluate these
systematically once we have the new structure in place.
|
|/
|
|
|
| |
- Options are now explicitly initialized with an add_option method
- We have one canonical Options class - ditch dump.Options
|
|\ |
|
| | |
|
| | |
|
| | |
|
| | |
|