Class: Watobo::Proxy

Inherits:
Object
  • Object
show all
Includes:
Constants
Defined in:
lib/watobo/core/proxy.rb

Overview

:nodoc: all

Constant Summary

Constants included from Constants

Constants::AC_GROUP_APACHE, Constants::AC_GROUP_DOMINO, Constants::AC_GROUP_ENUMERATION, Constants::AC_GROUP_FILE_INCLUSION, Constants::AC_GROUP_FLASH, Constants::AC_GROUP_GENERIC, Constants::AC_GROUP_JBOSS, Constants::AC_GROUP_JOOMLA, Constants::AC_GROUP_SAP, Constants::AC_GROUP_SQL, Constants::AC_GROUP_TYPO3, Constants::AC_GROUP_XSS, Constants::AUTH_TYPE_BASIC, Constants::AUTH_TYPE_DIGEST, Constants::AUTH_TYPE_NONE, Constants::AUTH_TYPE_NTLM, Constants::AUTH_TYPE_UNKNOWN, Constants::CHAT_SOURCE_AUTO_SCAN, Constants::CHAT_SOURCE_FUZZER, Constants::CHAT_SOURCE_INTERCEPT, Constants::CHAT_SOURCE_MANUAL, Constants::CHAT_SOURCE_MANUAL_SCAN, Constants::CHAT_SOURCE_PROXY, Constants::CHAT_SOURCE_UNDEF, Constants::DEFAULT_PORT_HTTP, Constants::DEFAULT_PORT_HTTPS, Constants::FINDING_TYPE_HINT, Constants::FINDING_TYPE_INFO, Constants::FINDING_TYPE_UNDEFINED, Constants::FINDING_TYPE_VULN, Constants::FIRST_TIME_FILE, Constants::GUI_REGULAR_FONT_SIZE, Constants::GUI_SMALL_FONT_SIZE, Constants::ICON_PATH, Constants::LOG_DEBUG, Constants::LOG_INFO, Constants::SCAN_CANCELED, Constants::SCAN_FINISHED, Constants::SCAN_PAUSED, Constants::SCAN_STARTED, Constants::TE_CHUNKED, Constants::TE_COMPRESS, Constants::TE_DEFLATE, Constants::TE_GZIP, Constants::TE_IDENTITY, Constants::TE_NONE, Constants::VULN_RATING_CRITICAL, Constants::VULN_RATING_HIGH, Constants::VULN_RATING_INFO, Constants::VULN_RATING_LOW, Constants::VULN_RATING_MEDIUM, Constants::VULN_RATING_UNDEFINED

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(prefs) ⇒ Proxy

Returns a new instance of Proxy.

Raises:

  • (ArgumentError)


37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/watobo/core/proxy.rb', line 37

def initialize(prefs)
  @login = nil
  raise ArgumentError, "Proxy needs host, port and name" unless prefs.has_key? :host
  raise ArgumentError, "Proxy needs host, port and name" unless prefs.has_key? :port
  raise ArgumentError, "Proxy needs host, port and name" unless prefs.has_key? :name
  
  @settings = { 
    :auth_type => AUTH_TYPE_NONE, 
    :username => '', 
    :password => '',
    :domain => '',
    :workstation => ''}
  
  @settings.update prefs

end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(name, *args, &block) ⇒ Object



17
18
19
20
21
22
23
24
# File 'lib/watobo/core/proxy.rb', line 17

def method_missing(name, *args, &block)
  # puts "* instance method missing (#{name})"
  if @settings.has_key? name.to_sym
    return @settings[name.to_sym]
  else
    super
  end
end

Instance Attribute Details

#loginObject (readonly)

Returns the value of attribute login.



15
16
17
# File 'lib/watobo/core/proxy.rb', line 15

def 
  @login
end

Instance Method Details

#has_login?Boolean

Returns:

  • (Boolean)


31
32
33
34
35
# File 'lib/watobo/core/proxy.rb', line 31

def has_login?
 # puts @settings.to_yaml
  return false if @settings[:auth_type] == AUTH_TYPE_NONE
  return true
end

#to_yamlObject



26
27
28
# File 'lib/watobo/core/proxy.rb', line 26

def to_yaml
  @settings.to_yaml
end