lib/whois/server/adapters/arpa.rb in whois-5.0.1 vs lib/whois/server/adapters/arpa.rb in whois-5.0.2

- old
+ new

@@ -1,11 +1,13 @@ +# frozen_string_literal: true + #-- # Ruby Whois # # An intelligent pure Ruby WHOIS client and parser. # -# Copyright (c) 2009-2020 Simone Carletti <weppos@weppos.net> +# Copyright (c) 2009-2021 Simone Carletti <weppos@weppos.net> #++ module Whois class Server @@ -20,28 +22,29 @@ end private - # "127.1.168.192.in-addr.arpa" => "192.168.1.127" - # "1.168.192.in-addr.arpa" => "192.168.1.0" - # "168.192.in-addr.arpa" => "192.168.0.0" - # "192.in-addr.arpa" => "192.0.0.0" - # "in-addr.arpa" => "0.0.0.0" - def inaddr_to_ip(string) - unless string.match?(/^([0-9]{1,3}\.?){0,4}in-addr\.arpa$/) - raise ServerError, "Invalid .in-addr.arpa address" - end - a, b, c, d = string.scan(/[0-9]{1,3}\./).reverse - [a, b, c, d].map do |token| - token = (token ||= 0).to_i - if token <= 255 && token >= 0 - token - else - raise ServerError, "Invalid .in-addr.arpa token `#{token}'" - end - end.join(".") + # "127.1.168.192.in-addr.arpa" => "192.168.1.127" + # "1.168.192.in-addr.arpa" => "192.168.1.0" + # "168.192.in-addr.arpa" => "192.168.0.0" + # "192.in-addr.arpa" => "192.0.0.0" + # "in-addr.arpa" => "0.0.0.0" + def inaddr_to_ip(string) + unless string.match?(/^([0-9]{1,3}\.?){0,4}in-addr\.arpa$/) + raise ServerError, "Invalid .in-addr.arpa address" end + + a, b, c, d = string.scan(/[0-9]{1,3}\./).reverse + [a, b, c, d].map do |token| + token = (token || 0).to_i + if token <= 255 && token >= 0 + token + else + raise ServerError, "Invalid .in-addr.arpa token `#{token}'" + end + end.join(".") + end end end end