aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/console/contentview.py
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2014-05-07 16:45:15 +0200
committerMaximilian Hils <git@maximilianhils.com>2014-05-07 16:45:15 +0200
commit3f440aad593036f5bad8c12128502184e333ccc9 (patch)
tree50b98038d13a3f2c9cf65a48af0b6e9bac4111ad /libmproxy/console/contentview.py
parent4f1fe11549f47531f1c6d618fa20f6c1020653ed (diff)
parent0ecd0ba3abd524fb39b2a87e553abcdba5f2dde4 (diff)
downloadmitmproxy-3f440aad593036f5bad8c12128502184e333ccc9.tar.gz
mitmproxy-3f440aad593036f5bad8c12128502184e333ccc9.tar.bz2
mitmproxy-3f440aad593036f5bad8c12128502184e333ccc9.zip
Merge pull request #271 from davidpshaw/master
- working WBXML parser
Diffstat (limited to 'libmproxy/console/contentview.py')
-rw-r--r--libmproxy/console/contentview.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/libmproxy/console/contentview.py b/libmproxy/console/contentview.py
index 5f3e17fe..b1b99bb6 100644
--- a/libmproxy/console/contentview.py
+++ b/libmproxy/console/contentview.py
@@ -8,6 +8,7 @@ import netlib.utils
from . import common
from .. import utils, encoding, flow
from ..contrib import jsbeautifier, html2text
+from ..contrib.wbxml.ASCommandResponse import ASCommandResponse
try:
import pyamf
from pyamf import remoting, flex
@@ -426,12 +427,31 @@ class ViewProtobuf:
txt = _view_text(decoded[:limit], len(decoded), limit)
return "Protobuf", txt
+class ViewWBXML:
+ name = "WBXML"
+ prompt = ("wbxml", "w")
+ content_types = [
+ "application/vnd.wap.wbxml",
+ "application/vnd.ms-sync.wbxml"
+ ]
+
+ def __call__(self, hdrs, content, limit):
+
+ try:
+ parser = ASCommandResponse(content)
+ parsedContent = parser.xmlString
+ txt = _view_text(parsedContent, len(parsedContent), limit)
+ return "WBXML", txt
+ except:
+ return None
+
views = [
ViewAuto(),
ViewRaw(),
ViewHex(),
ViewJSON(),
ViewXML(),
+ ViewWBXML(),
ViewHTML(),
ViewHTMLOutline(),
ViewJavaScript(),