Object
# File lib/rack/attack/fail2ban.rb, line 5 def filter(discriminator, options) bantime = options[:bantime] or raise ArgumentError, "Must pass bantime option" findtime = options[:findtime] or raise ArgumentError, "Must pass findtime option" maxretry = options[:maxretry] or raise ArgumentError, "Must pass maxretry option" if banned?(discriminator) # Return true for blacklist true elsif yield fail!(discriminator, bantime, findtime, maxretry) end end
# File lib/rack/attack/fail2ban.rb, line 23 def fail!(discriminator, bantime, findtime, maxretry) count = cache.count("#{key_prefix}:count:#{discriminator}", findtime) if count >= maxretry ban!(discriminator, bantime) end true end
Generated with the Darkfish Rdoc Generator 2.