Browse Source

feeling lucky country code

Paul Klumpp 12 years ago
parent
commit
aa15c2fe6d
1 changed files with 6 additions and 1 deletions
  1. 6 1
      em_server.rb

+ 6 - 1
em_server.rb

@@ -3,6 +3,7 @@
 require 'eventmachine'
 require 'digest/md5'
 require 'fiber'
+require 'geoip'
 
 
 
@@ -258,8 +259,11 @@ module InterconnectionPointProtocolHandler
             rest = $3
 
             if iphost =~ /^\d+\.\d+\.\d+\.\d+/
-              # resolve it to a dns name
+              # find country code
+              c = GeoIP.new('GeoIP.dat').country(iphost)[3].to_s.downcase
+              rest << "(#{c})" unless c.nil?
 
+              # resolve it to a dns name
               f = Fiber.new do
                 Fiber.yield Resolv.getname(iphost)
               end
@@ -273,6 +277,7 @@ module InterconnectionPointProtocolHandler
                 # if the resulting dns has too many dots, use ip-address instead.
                 if host_name.length > 23 || host_name.split(".").size >= 4
                   #put_log "cutting down host_name #{host_name} #{host_name.size} #{host_name.split(".").size}"
+
                   host_name = iphost
                 end
               end