mitmproxy/libmproxy/contrib/jsbeautifier/unpackers
Aldo Cortesi 2240d2a6a5 Pretty view now indents Javascript.
Thanks to the JSBeautifier project, which is now included in the contrib directory.
2012-03-25 10:56:45 +13:00
..
README.specs.mkd Pretty view now indents Javascript. 2012-03-25 10:56:45 +13:00
__init__.py Pretty view now indents Javascript. 2012-03-25 10:56:45 +13:00
evalbased.py Pretty view now indents Javascript. 2012-03-25 10:56:45 +13:00
javascriptobfuscator.py Pretty view now indents Javascript. 2012-03-25 10:56:45 +13:00
myobfuscate.py Pretty view now indents Javascript. 2012-03-25 10:56:45 +13:00
packer.py Pretty view now indents Javascript. 2012-03-25 10:56:45 +13:00
urlencode.py Pretty view now indents Javascript. 2012-03-25 10:56:45 +13:00

README.specs.mkd

UNPACKERS SPECIFICATIONS

Nothing very difficult: an unpacker is a submodule placed in the directory where this file was found. Each unpacker must define three symbols:

  • PRIORITY : integer number expressing the priority in applying this unpacker. Lower number means higher priority. Makes sense only if a source file has been packed with more than one packer.
  • detect(source) : returns True if source is packed, otherwise, False.
  • unpack(source) : takes a source string and unpacks it. Must always return valid JavaScript. That is to say, your code should look like:
if detect(source):
    return do_your_fancy_things_with(source)
else:
    return source

You can safely define any other symbol in your module, as it will be ignored.

__init__ code will automatically load new unpackers, without any further step to be accomplished. Simply drop it in this directory.