diff --git a/mitmproxy/flowfilter.py b/mitmproxy/flowfilter.py index 81c25afec..fea8e9e42 100644 --- a/mitmproxy/flowfilter.py +++ b/mitmproxy/flowfilter.py @@ -381,17 +381,6 @@ class FDst(_Rex): return f.server_conn.address and self.re.search(r) -class FDstIP(_Rex): - code = "ip" - help = "Match destination ip address" - is_binary = False - - def __call__(self, f): - if not f.server_conn or not f.server_conn.ip_address: - return False - return f.server_conn.ip_address and self.re.search(f.server_conn.ip_address[0]) - - class FReplay(_Action): code = "replay" help = "Match replayed flows" @@ -525,7 +514,6 @@ filter_rex: Sequence[Type[_Rex]] = [ FContentTypeResponse, FDomain, FDst, - FDstIP, FHead, FHeadRequest, FHeadResponse, diff --git a/web/src/js/components/FlowTable/HoverMenu.jsx b/web/src/js/components/FlowTable/HoverMenu.jsx index 824ca6508..8016c9471 100644 --- a/web/src/js/components/FlowTable/HoverMenu.jsx +++ b/web/src/js/components/FlowTable/HoverMenu.jsx @@ -35,24 +35,18 @@ class HoverMenu extends Component {  Intercept {flow.request.host} - { + { flow.request.path != "/" ? { this.onClick(e, flow.request.host + flow.request.path) }}>  Intercept {flow.request.host + flow.request.path} - + : null } { this.onClick(e, `~m POST & ${flow.request.host}`) }}>  Intercept all POST requests from this host - { - this.onClick(e, `~ip ${flow.server_conn.ip_address[0]}`) - }}> - -  Intercept all requests from {flow.server_conn.ip_address[0]} - ) } diff --git a/web/src/js/components/Header/FilterInput.jsx b/web/src/js/components/Header/FilterInput.jsx index 151036109..8ae964b2c 100644 --- a/web/src/js/components/Header/FilterInput.jsx +++ b/web/src/js/components/Header/FilterInput.jsx @@ -25,7 +25,7 @@ export default class FilterInput extends Component { this.selectFilter = this.selectFilter.bind(this) } - componentWillReceiveProps(nextProps) { + UNSAFE_componentWillReceiveProps(nextProps) { this.setState({ value: nextProps.value }) } diff --git a/web/src/js/components/ProxyApp.jsx b/web/src/js/components/ProxyApp.jsx index 15384e020..8dc4c7e02 100644 --- a/web/src/js/components/ProxyApp.jsx +++ b/web/src/js/components/ProxyApp.jsx @@ -11,11 +11,11 @@ import Modal from './Modal/Modal' class ProxyAppMain extends Component { - componentWillMount() { + componentDidMount() { window.addEventListener('keydown', this.props.onKeyDown); } - componentWillUnmount() { + UNSAFE_componentWillUnmount() { window.removeEventListener('keydown', this.props.onKeyDown); } diff --git a/web/src/js/filt/filt.peg b/web/src/js/filt/filt.peg index 387a9bb87..80f430185 100644 --- a/web/src/js/filt/filt.peg +++ b/web/src/js/filt/filt.peg @@ -111,16 +111,6 @@ function destination(regex){ destinationFilter.desc = "destination address matches " + regex; return destinationFilter; } -function ip(regex) { - regex = new RegExp(regex, "i"); - function ipFilter(flow){ - return (!!flow.server_conn.ip_address) - && - regex.test(flow.server_conn.ip_address[0] + ":" + flow.server_conn.ip_address[1]); - } - ipFilter.desc = "destination ip address matches " + regex; - return ipFilter; -} function errorFilter(flow){ return !!flow.error; } @@ -277,7 +267,6 @@ Expr / "~c" ws+ s:IntegerLiteral { return responseCode(s); } / "~d" ws+ s:StringLiteral { return domain(s); } / "~dst" ws+ s:StringLiteral { return destination(s); } - / "~ip" ws+ s:StringLiteral { return ip(s); } / "~e" { return errorFilter; } / "~h" ws+ s:StringLiteral { return header(s); } / "~hq" ws+ s:StringLiteral { return requestHeader(s); }