Class: ICAPrb::FilterSolutions::URLContains

Inherits:
Object
  • Object
show all
Defined in:
lib/icaprb/filter/solution.rb

Overview

Check if the URL contains the given words

Constant Summary collapse

FILTER_NAME =

Name in the configuration file

'url_contains'
MODES =

Available mod modes

[:response_mod]

Instance Method Summary collapse

Constructor Details

#initialize(_, parameters) ⇒ URLContains

Constructor

mode

resp or req mod

parameters

All parameters given in the configuration file



105
106
107
# File 'lib/icaprb/filter/solution.rb', line 105

def initialize(_, parameters)
  @params = parameters
end

Instance Method Details

#plugin(data) ⇒ Object

Execute plugin

data

ICAP data



111
112
113
114
115
116
117
118
119
120
121
# File 'lib/icaprb/filter/solution.rb', line 111

def plugin(data)
  uri = data[:http_request_header]['Host']
  @params.each { |url|
    if uri.include? url
      # Block by telling the user that this is blocked
      data[:http_response_body] = '<html><body>Blocked URI</body></html>'
      return true
    end
  }
  false
end