@@ -1081,36 +1081,34 @@ def parse_config_file
10811081 if RUBY_PLATFORM =~ /mswin32|cygwin|mingw|bccwin/
10821082 require 'win32/resolv'
10831083 arr = Win32 ::Resolv . get_resolv_info
1084- self . searchlist = arr [ 0 ]
1084+ self . searchlist = arr [ 0 ] if arr [ 0 ]
10851085 self . nameservers = arr [ 1 ]
10861086 else
1087- begin
1088- IO . foreach ( @config [ :config_file ] ) do |line |
1089- line . gsub! ( /\s *[;#].*/ , "" )
1090- next unless line =~ /\S /
1091- case line
1092- when /^\s *domain\s +(\S +)/
1093- self . domain = $1
1094- when /^\s *search\s +(.*)/
1095- self . searchlist = $1. split ( " " )
1096- when /^\s *nameserver\s +(.*)/
1097- $1. split ( /\s +/ ) . each do |nameserver |
1098- # per https://man7.org/linux/man-pages/man5/resolv.conf.5.html nameserver values must be IP addresses
1099- begin
1100- ip_addr = IPAddr . new ( nameserver )
1101- rescue IPAddr ::InvalidAddressError
1102- @logger . warn "Ignoring invalid name server '#{ nameserver } ' from configuration file"
1103- next
1104- else
1105- self . nameservers += [ ip_addr ]
1106- end
1087+ IO . foreach ( @config [ :config_file ] ) do |line |
1088+ line . gsub! ( /\s *[;#].*/ , "" )
1089+ next unless line =~ /\S /
1090+ case line
1091+ when /^\s *domain\s +(\S +)/
1092+ self . domain = $1
1093+ when /^\s *search\s +(.*)/
1094+ self . searchlist = $1. split ( " " )
1095+ when /^\s *nameserver\s +(.*)/
1096+ $1. split ( /\s +/ ) . each do |nameserver |
1097+ # per https://man7.org/linux/man-pages/man5/resolv.conf.5.html nameserver values must be IP addresses
1098+ begin
1099+ ip_addr = IPAddr . new ( nameserver )
1100+ rescue IPAddr ::InvalidAddressError
1101+ @logger . warn "Ignoring invalid name server '#{ nameserver } ' from configuration file"
1102+ next
1103+ else
1104+ self . nameservers += [ ip_addr ]
11071105 end
11081106 end
11091107 end
1110- rescue => e
1111- @logger . error ( e )
11121108 end
11131109 end
1110+ rescue => e
1111+ @logger . error ( e )
11141112 end
11151113
11161114 # Parse environment variables
0 commit comments