Class: Arachni::HTTP::ProxyServer::Tunnel
  
  
  
  
  
    - Inherits:
 
    - 
      Reactor::Connection
      
        
          - Object
 
          
            - Reactor::Connection
 
          
            - Arachni::HTTP::ProxyServer::Tunnel
 
          
        
        show all
      
     
  
  
  
  
  
  
  
      - Includes:
 
      - UI::Output
 
  
  
  
  
  
  
    - Defined in:
 
    - lib/arachni/http/proxy_server/tunnel.rb
 
  
  
 
Overview
  
    
      Instance Method Summary
      collapse
    
    
  
  
  
  
  
  
  
  
  
  Methods included from UI::Output
  #debug?, #debug_level_1?, #debug_level_2?, #debug_level_3?, #debug_level_4?, #debug_off, #debug_on, #disable_only_positives, #included, #mute, #muted?, #only_positives, #only_positives?, #print_bad, #print_debug, #print_debug_backtrace, #print_debug_level_1, #print_debug_level_2, #print_debug_level_3, #print_debug_level_4, #print_error, #print_error_backtrace, #print_exception, #print_info, #print_line, #print_ok, #print_status, #print_verbose, #reroute_to_file, #reroute_to_file?, reset_output_options, #unmute, #verbose?, #verbose_on
  
  Constructor Details
  
    
  
  
    #initialize(options)  ⇒ Tunnel 
  
  
  
  
    
Returns a new instance of Tunnel.
   
 
  
  
    
      
18
19
20
21
22 
     | 
    
      # File 'lib/arachni/http/proxy_server/tunnel.rb', line 18
def initialize( options )
    print_debug_level_3 'New tunnel.'
    @client = options[:client]
end
     | 
  
 
  
 
  
    Instance Method Details
    
      
  
  
    #on_close(reason = nil)  ⇒ Object 
  
  
  
  
    
      
33
34
35
36
37
38
39
40
41 
     | 
    
      # File 'lib/arachni/http/proxy_server/tunnel.rb', line 33
def on_close( reason = nil )
    print_debug_level_3 "Closed because: [#{reason.class}] #{reason}"
            
    @client.close reason
end
     | 
  
 
    
      
  
  
    #on_connect  ⇒ Object 
  
  
  
  
    
      
24
25
26 
     | 
    
      # File 'lib/arachni/http/proxy_server/tunnel.rb', line 24
def on_connect
    print_debug_level_3 'Connected.'
end
     | 
  
 
    
      
  
  
    #on_read(data)  ⇒ Object 
  
  
  
  
    
      
43
44
45
46
47
48
49 
     | 
    
      # File 'lib/arachni/http/proxy_server/tunnel.rb', line 43
def on_read( data )
                print_debug_level_3 "<- Forwarding #{data.size} bytes to client."
    @client.write data
end
     | 
  
 
    
      
  
  
    #write(data)  ⇒ Object 
  
  
  
  
    
      
28
29
30
31 
     | 
    
      # File 'lib/arachni/http/proxy_server/tunnel.rb', line 28
def write( data )
    print_debug_level_3 " -> Forwarding #{data.size} bytes."
    super data
end
     |