X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=3rdparty%2Fmodules%2Fstdlib%2Flib%2Fpuppet%2Fparser%2Ffunctions%2Fvalidate_ip_address.rb;h=3fd582b0e6c52972aa287ad3fa40f3b1fd84be03;hb=30caaa85aed7015ca0d77216bff175eebd917eb7;hp=5d80cfbe6af7071e64ccf7822b49a337d8ea7886;hpb=6963202b4b62c2816655ac9532521b018fdf83bd;p=mirror%2Fdsa-puppet.git diff --git a/3rdparty/modules/stdlib/lib/puppet/parser/functions/validate_ip_address.rb b/3rdparty/modules/stdlib/lib/puppet/parser/functions/validate_ip_address.rb index 5d80cfbe6..3fd582b0e 100644 --- a/3rdparty/modules/stdlib/lib/puppet/parser/functions/validate_ip_address.rb +++ b/3rdparty/modules/stdlib/lib/puppet/parser/functions/validate_ip_address.rb @@ -1,36 +1,47 @@ +# +# validate_ip_address.rb +# module Puppet::Parser::Functions + newfunction(:validate_ip_address, :doc => <<-DOC + @summary + Validate that all values passed are valid IP addresses, + regardless they are IPv4 or IPv6 + Fail compilation if any value fails this check. - newfunction(:validate_ip_address, :doc => <<-ENDHEREDOC - Validate that all values passed are valid IP addresses, - regardless they are IPv4 or IPv6 - Fail compilation if any value fails this check. - The following values will pass: - $my_ip = "1.2.3.4" - validate_ip_address($my_ip) - validate_ip_address("8.8.8.8", "172.16.0.1", $my_ip) + @return + passes when the given values are valid IP addresses or raise an error when they are not and fails compilation - $my_ip = "3ffe:505:2" - validate_ip_address(1) - validate_ip_address($my_ip) - validate_ip_address("fe80::baf6:b1ff:fe19:7507", $my_ip) + @example **Usage** + The following values will pass: - The following values will fail, causing compilation to abort: - $some_array = [ 1, true, false, "garbage string", "3ffe:505:2" ] - validate_ip_address($some_array) - ENDHEREDOC - ) do |args| + $my_ip = "1.2.3.4" + validate_ip_address($my_ip) + validate_ip_address("8.8.8.8", "172.16.0.1", $my_ip) - require "ipaddr" - rescuable_exceptions = [ ArgumentError ] + $my_ip = "3ffe:505:2" + validate_ip_address(1) + validate_ip_address($my_ip) + validate_ip_address("fe80::baf6:b1ff:fe19:7507", $my_ip) - function_deprecation([:validate_ip_address, 'This method is deprecated, please use the stdlib validate_legacy function, with Stdlib::Compat::Ip_address. There is further documentation for validate_legacy function in the README.']) + The following values will fail, causing compilation to abort: + + $some_array = [ 1, true, false, "garbage string", "3ffe:505:2" ] + validate_ip_address($some_array) + DOC + ) do |args| + + require 'ipaddr' + rescuable_exceptions = [ArgumentError] + + function_deprecation([:validate_ip_address, 'This method is deprecated, please use the stdlib validate_legacy function, + with Stdlib::Compat::Ip_address. There is further documentation for validate_legacy function in the README.']) if defined?(IPAddr::InvalidAddressError) rescuable_exceptions << IPAddr::InvalidAddressError end - unless args.length > 0 then - raise Puppet::ParseError, ("validate_ip_address(): wrong number of arguments (#{args.length}; must be > 0)") + if args.empty? + raise Puppet::ParseError, "validate_ip_address(): wrong number of arguments (#{args.length}; must be > 0)" end args.each do |arg| @@ -39,14 +50,12 @@ module Puppet::Parser::Functions end begin - unless IPAddr.new(arg).ipv4? or IPAddr.new(arg).ipv6? + unless IPAddr.new(arg).ipv4? || IPAddr.new(arg).ipv6? raise Puppet::ParseError, "#{arg.inspect} is not a valid IP address." end rescue *rescuable_exceptions raise Puppet::ParseError, "#{arg.inspect} is not a valid IP address." end end - end - end