diff options
author | Aldo Cortesi <aldo@nullcube.com> | 2015-01-03 11:46:51 +1300 |
---|---|---|
committer | Aldo Cortesi <aldo@nullcube.com> | 2015-01-03 11:46:51 +1300 |
commit | 1959aebc087db0cb3bb12546ec2671356829b482 (patch) | |
tree | e98440c578f85d462a04882deca5a623fd16946b /web/src/js/filt | |
parent | f1b040e80830314c834c7e8ef7697ffe39b19770 (diff) | |
download | mitmproxy-1959aebc087db0cb3bb12546ec2671356829b482.tar.gz mitmproxy-1959aebc087db0cb3bb12546ec2671356829b482.tar.bz2 mitmproxy-1959aebc087db0cb3bb12546ec2671356829b482.zip |
Add PEG support to gulpfile
- Extract conf - all project specific conf outside gulpfile
- Generalize filt.js exports, add required imports
Diffstat (limited to 'web/src/js/filt')
-rw-r--r-- | web/src/js/filt/filt.js | 30 | ||||
-rw-r--r-- | web/src/js/filt/filt.peg (renamed from web/src/js/filt/filt.pegjs) | 22 |
2 files changed, 26 insertions, 26 deletions
diff --git a/web/src/js/filt/filt.js b/web/src/js/filt/filt.js index 095081ac..78d6a67c 100644 --- a/web/src/js/filt/filt.js +++ b/web/src/js/filt/filt.js @@ -1,5 +1,4 @@ -/* jshint ignore:start */ -Filt = (function() { +module.exports = (function() { /* * Generated by PEG.js 0.8.0. * @@ -1592,6 +1591,8 @@ Filt = (function() { } + var flowutils = require("../flow/utils.js"); + function or(first, second) { // Add explicit function names to ease debugging. function orFilter() { @@ -1640,7 +1641,7 @@ Filt = (function() { ]; function assetFilter(flow) { if (flow.response) { - var ct = ResponseUtils.getContentType(flow.response); + var ct = flowutils.ResponseUtils.getContentType(flow.response); var i = ASSET_TYPES.length; while (i--) { if (ASSET_TYPES[i].test(ct)) { @@ -1674,9 +1675,9 @@ Filt = (function() { regex = new RegExp(regex, "i"); function headerFilter(flow){ return ( - (flow.request && RequestUtils.match_header(flow.request, regex)) + (flow.request && flowutils.RequestUtils.match_header(flow.request, regex)) || - (flow.response && ResponseUtils.match_header(flow.response, regex)) + (flow.response && flowutils.ResponseUtils.match_header(flow.response, regex)) ); } headerFilter.desc = "header matches " + regex; @@ -1685,7 +1686,7 @@ Filt = (function() { function requestHeader(regex){ regex = new RegExp(regex, "i"); function requestHeaderFilter(flow){ - return (flow.request && RequestUtils.match_header(flow.request, regex)); + return (flow.request && flowutils.RequestUtils.match_header(flow.request, regex)); } requestHeaderFilter.desc = "req. header matches " + regex; return requestHeaderFilter; @@ -1693,7 +1694,7 @@ Filt = (function() { function responseHeader(regex){ regex = new RegExp(regex, "i"); function responseHeaderFilter(flow){ - return (flow.response && ResponseUtils.match_header(flow.response, regex)); + return (flow.response && flowutils.ResponseUtils.match_header(flow.response, regex)); } responseHeaderFilter.desc = "resp. header matches " + regex; return responseHeaderFilter; @@ -1719,9 +1720,9 @@ Filt = (function() { regex = new RegExp(regex, "i"); function contentTypeFilter(flow){ return ( - (flow.request && regex.test(RequestUtils.getContentType(flow.request))) + (flow.request && regex.test(flowutils.RequestUtils.getContentType(flow.request))) || - (flow.response && regex.test(ResponseUtils.getContentType(flow.response))) + (flow.response && regex.test(flowutils.ResponseUtils.getContentType(flow.response))) ); } contentTypeFilter.desc = "content type matches " + regex; @@ -1730,7 +1731,7 @@ Filt = (function() { function requestContentType(regex){ regex = new RegExp(regex, "i"); function requestContentTypeFilter(flow){ - return flow.request && regex.test(RequestUtils.getContentType(flow.request)); + return flow.request && regex.test(flowutils.RequestUtils.getContentType(flow.request)); } requestContentTypeFilter.desc = "req. content type matches " + regex; return requestContentTypeFilter; @@ -1738,7 +1739,7 @@ Filt = (function() { function responseContentType(regex){ regex = new RegExp(regex, "i"); function responseContentTypeFilter(flow){ - return flow.response && regex.test(ResponseUtils.getContentType(flow.response)); + return flow.response && regex.test(flowutils.ResponseUtils.getContentType(flow.response)); } responseContentTypeFilter.desc = "resp. content type matches " + regex; return responseContentTypeFilter; @@ -1746,7 +1747,7 @@ Filt = (function() { function url(regex){ regex = new RegExp(regex, "i"); function urlFilter(flow){ - return flow.request && regex.test(RequestUtils.pretty_url(flow.request)); + return flow.request && regex.test(flowutils.RequestUtils.pretty_url(flow.request)); } urlFilter.desc = "url matches " + regex; return urlFilter; @@ -1770,7 +1771,4 @@ Filt = (function() { SyntaxError: SyntaxError, parse: parse }; -})(); -/* jshint ignore:end */ - -module.exports = Filt; +})();
\ No newline at end of file diff --git a/web/src/js/filt/filt.pegjs b/web/src/js/filt/filt.peg index 0870e4fe..b4763ccf 100644 --- a/web/src/js/filt/filt.pegjs +++ b/web/src/js/filt/filt.peg @@ -1,6 +1,8 @@ // PEG.js filter rules - see http://pegjs.majda.cz/online { +var flowutils = require("../flow/utils.js"); + function or(first, second) { // Add explicit function names to ease debugging. function orFilter() { @@ -49,7 +51,7 @@ var ASSET_TYPES = [ ]; function assetFilter(flow) { if (flow.response) { - var ct = ResponseUtils.getContentType(flow.response); + var ct = flowutils.ResponseUtils.getContentType(flow.response); var i = ASSET_TYPES.length; while (i--) { if (ASSET_TYPES[i].test(ct)) { @@ -83,9 +85,9 @@ function header(regex){ regex = new RegExp(regex, "i"); function headerFilter(flow){ return ( - (flow.request && RequestUtils.match_header(flow.request, regex)) + (flow.request && flowutils.RequestUtils.match_header(flow.request, regex)) || - (flow.response && ResponseUtils.match_header(flow.response, regex)) + (flow.response && flowutils.ResponseUtils.match_header(flow.response, regex)) ); } headerFilter.desc = "header matches " + regex; @@ -94,7 +96,7 @@ function header(regex){ function requestHeader(regex){ regex = new RegExp(regex, "i"); function requestHeaderFilter(flow){ - return (flow.request && RequestUtils.match_header(flow.request, regex)); + return (flow.request && flowutils.RequestUtils.match_header(flow.request, regex)); } requestHeaderFilter.desc = "req. header matches " + regex; return requestHeaderFilter; @@ -102,7 +104,7 @@ function requestHeader(regex){ function responseHeader(regex){ regex = new RegExp(regex, "i"); function responseHeaderFilter(flow){ - return (flow.response && ResponseUtils.match_header(flow.response, regex)); + return (flow.response && flowutils.ResponseUtils.match_header(flow.response, regex)); } responseHeaderFilter.desc = "resp. header matches " + regex; return responseHeaderFilter; @@ -128,9 +130,9 @@ function contentType(regex){ regex = new RegExp(regex, "i"); function contentTypeFilter(flow){ return ( - (flow.request && regex.test(RequestUtils.getContentType(flow.request))) + (flow.request && regex.test(flowutils.RequestUtils.getContentType(flow.request))) || - (flow.response && regex.test(ResponseUtils.getContentType(flow.response))) + (flow.response && regex.test(flowutils.ResponseUtils.getContentType(flow.response))) ); } contentTypeFilter.desc = "content type matches " + regex; @@ -139,7 +141,7 @@ function contentType(regex){ function requestContentType(regex){ regex = new RegExp(regex, "i"); function requestContentTypeFilter(flow){ - return flow.request && regex.test(RequestUtils.getContentType(flow.request)); + return flow.request && regex.test(flowutils.RequestUtils.getContentType(flow.request)); } requestContentTypeFilter.desc = "req. content type matches " + regex; return requestContentTypeFilter; @@ -147,7 +149,7 @@ function requestContentType(regex){ function responseContentType(regex){ regex = new RegExp(regex, "i"); function responseContentTypeFilter(flow){ - return flow.response && regex.test(ResponseUtils.getContentType(flow.response)); + return flow.response && regex.test(flowutils.ResponseUtils.getContentType(flow.response)); } responseContentTypeFilter.desc = "resp. content type matches " + regex; return responseContentTypeFilter; @@ -155,7 +157,7 @@ function responseContentType(regex){ function url(regex){ regex = new RegExp(regex, "i"); function urlFilter(flow){ - return flow.request && regex.test(RequestUtils.pretty_url(flow.request)); + return flow.request && regex.test(flowutils.RequestUtils.pretty_url(flow.request)); } urlFilter.desc = "url matches " + regex; return urlFilter; |