aboutsummaryrefslogtreecommitdiffstats
path: root/web/src/js/filt
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2015-01-03 11:46:51 +1300
committerAldo Cortesi <aldo@nullcube.com>2015-01-03 11:46:51 +1300
commit1959aebc087db0cb3bb12546ec2671356829b482 (patch)
treee98440c578f85d462a04882deca5a623fd16946b /web/src/js/filt
parentf1b040e80830314c834c7e8ef7697ffe39b19770 (diff)
downloadmitmproxy-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.js30
-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;