Project

General

Profile

Download (804 Bytes) Statistics
| Branch: | Tag: | Revision:
module Proxy::Validations

class Error < RuntimeError; end
private

# validates the ip address
def validate_ip ip
raise Error, "Invalid IP Address #{ip}" unless ip =~ /(\d{1,3}\.){3}\d{1,3}/
ip
end

# validates the mac
def validate_mac mac
raise Error, "Invalid MAC #{mac}" unless mac =~ /([a-f0-9]{1,2}:){5}[a-f0-9]{1,2}/i
mac.downcase
end

def validate_subnet subnet
raise Error, "Invalid Subnet #{subnet}" unless subnet.is_a?(Proxy::DHCP::Subnet)
subnet
end

def validate_server server
raise Proxy::DHCP::Error, "Invalid Server #{server}" unless server.is_a?(Proxy::DHCP::Server)
server
end

def validate_record record
raise Proxy::DHCP::Error, "Invalid Record #{record}" unless record.is_a?(Proxy::DHCP::Record)
record
end

end
(9-9/9)