Package plugins :: Package discovery :: Module mailer :: Class mailer
[hide private]
[frames] | no frames]

Class mailer




This plugin starts a smtpd, sends forms that have an email field in it, and waits to see if a mail arrives.


Author: Andres Riancho ( andres.riancho@gmail.com )

Instance Methods [hide private]
  __init__(self)
  discover(self, fuzzableRequest)
Starts smtpd, fill forms, wait for emails, analyze emails.
  _testMailReception(self)
Test the configured settings to see if the user did things right.
  _startSMTPd(self)
  process_message(self, peer, mailfrom, rcpttos, data)
This method processes messages sent to my email server, analyzes headers and gets new URLs.
  _fillEmail(self, fuzzableRequest)
  _isFormWithEmail(self, fuzzableRequest)
  _isMailInput(self, inputName)
  getOptionsXML(self)
This method returns a XML containing the Options that the plugin has.
  setOptions(self, optionsMap)
This method sets all the options that are configured using the user interface generated by the framework using the result of getOptionsXML().
  getPluginDeps(self)
  getLongDesc(self)

Inherited from core.controllers.basePlugin.baseDiscoveryPlugin.baseDiscoveryPlugin: getType

Inherited from core.controllers.basePlugin.basePlugin.basePlugin: __eq__, getDesc, getName, printUniq, setUrlOpener

Inherited from smtpd.SMTPServer: handle_accept

Inherited from asyncore.dispatcher: __getattr__, __repr__, accept, add_channel, bind, close, connect, create_socket, del_channel, handle_close, handle_connect, handle_error, handle_expt, handle_expt_event, handle_read, handle_read_event, handle_write, handle_write_event, listen, log, log_info, readable, recv, send, set_reuse_addr, set_socket, writable


Class Variables [hide private]

Inherited from asyncore.dispatcher: accepting, addr, closing, connected, debug


Method Details [hide private]

__init__(self)
(Constructor)

 
None
Overrides: core.controllers.basePlugin.baseDiscoveryPlugin.baseDiscoveryPlugin.__init__

discover(self, fuzzableRequest)

 
Starts smtpd, fill forms, wait for emails, analyze emails.
Parameters:
  • fuzzableRequest - A fuzzableRequest instance that contains (among other things) the URL to test.
Returns:
A list :
  1. New Url's found by plugin, could be empty when method ends.
Overrides: core.controllers.basePlugin.baseDiscoveryPlugin.baseDiscoveryPlugin.discover

_testMailReception(self)

 
Test the configured settings to see if the user did things right.

_startSMTPd(self)

 
None

process_message(self, peer, mailfrom, rcpttos, data)

 
This method processes messages sent to my email server, analyzes headers and gets new URLs.
Overrides: smtpd.SMTPServer.process_message

_fillEmail(self, fuzzableRequest)

 
None

_isFormWithEmail(self, fuzzableRequest)

 
None

_isMailInput(self, inputName)

 
None

getOptionsXML(self)

 
This method returns a XML containing the Options that the plugin has. Using this XML the framework will build a window, a menu, or some other input method to retrieve the info from the user. The XML has to validate against the xml schema file located at : w3af/core/ui/userInterface.dtd
Returns:
XML with the plugin options.
Overrides: core.controllers.basePlugin.basePlugin.basePlugin.getOptionsXML

setOptions(self, optionsMap)

 
This method sets all the options that are configured using the user interface generated by the framework using the result of getOptionsXML().
Parameters:
  • OptionList - A dictionary with the options for the plugin.
Returns:
No value is returned.
Overrides: core.controllers.basePlugin.basePlugin.basePlugin.setOptions

getPluginDeps(self)

 
Returns:
A list with the names of the plugins that should be runned before the current one.
Overrides: core.controllers.basePlugin.basePlugin.basePlugin.getPluginDeps

getLongDesc(self)

 
Returns:
A DETAILED description of the plugin functions and features.
Overrides: core.controllers.basePlugin.basePlugin.basePlugin.getLongDesc