public
Description: A Rails plugin for Japanese mobile-phones
Homepage: http://jpmobile-rails.org
Clone URL: git://github.com/darashi/jpmobile.git
Click here to lend your support to: jpmobile and make a donation at www.pledgie.com !
各キャリアのIPアドレスのリストはIPAddrのインスタンスの配列で持っておく

- IP_ADDRESSを使わない場合はautoloadしてるので読みこまれないので考えなくても良さそう。
- IP_ADDRESSを使う場合、プロセスの使用メモリはふくらむが、リクエストのたびにIPAddr.newしないので速くなるはず。。。
walf443 (author)
Sat Jun 28 11:02:08 -0700 2008
commit  de6020c48730477a01c3ec9becb0beba8b8b6219
tree    43f932afeb7c106aff65b4b145f5132989d5a7ea
parent  e5b7fa4c9960d2c2be1688a9e14e21bd64fc5b76
...
31
32
33
34
35
36
37
 
38
39
40
...
31
32
33
 
 
 
 
34
35
36
37
0
@@ -31,10 +31,7 @@ module Jpmobile::Mobile
0
         return nil
0
       end
0
       remote = IPAddr.new(@request.remote_addr)
0
- addrs.each do |s|
0
- return true if IPAddr.new(s.chomp).include?(remote)
0
- end
0
- return false
0
+ addrs.any? {|ip| ip.include? remote }
0
     end
0
     
0
     # 画面情報を +Display+ クラスのインスタンスで返す。
...
28
29
30
31
 
...
28
29
30
 
31
0
@@ -28,4 +28,4 @@ Jpmobile::Mobile::Au::IP_ADDRESSES =
0
  "219.125.145.0/25",
0
  "121.111.231.0/25",
0
  "121.111.231.160/27",
0
- "121.111.227.0/25"]
0
+ "121.111.227.0/25"].map {|ip| IPAddr.new(ip) }
...
6
7
8
9
 
10
...
6
7
8
 
9
10
0
@@ -6,5 +6,5 @@ Jpmobile::Mobile::Docomo::IP_ADDRESSES = %w(
0
 210.153.84.0/24
0
 210.136.161.0/24
0
 210.153.86.0/24
0
-)
0
+).map {|ip| IPAddr.new(ip) }
0
 
...
7
8
9
10
 
...
7
8
9
 
10
0
@@ -7,4 +7,4 @@
0
 
0
 Jpmobile::Mobile::Emobile::IP_ADDRESSES = %w(
0
 117.55.1.224/27
0
-)
0
+).map {|ip| IPAddr.new(ip) }
...
14
15
16
17
 
...
14
15
16
 
17
0
@@ -14,4 +14,4 @@ Jpmobile::Mobile::Softbank::IP_ADDRESSES = %w(
0
 210.175.1.128/25
0
 210.228.189.0/24
0
 211.8.159.128/25
0
-)
0
+).map {|ip| IPAddr.new(ip) }
...
95
96
97
98
 
...
95
96
97
 
98
0
@@ -95,4 +95,4 @@ Jpmobile::Mobile::Willcom::IP_ADDRESSES =
0
  "211.126.192.128/25",
0
  "219.108.11.0/24",
0
  "219.108.12.0/24",
0
- "219.108.13.0/24"]
0
+ "219.108.13.0/24"].map {|ip| IPAddr.new(ip) }
...
15
16
17
18
 
19
...
15
16
17
 
18
19
0
@@ -15,5 +15,5 @@ src.scan(/(\d+[..]\d+[..]\d+[..]\d+).*?(\/\d+)/m) {|a,b|
0
 # 書き出し
0
 open("lib/jpmobile/mobile/z_ip_addresses_au.rb","w") do |f|
0
   f.puts "Jpmobile::Mobile::Au::IP_ADDRESSES = "
0
- f.puts ips.pretty_inspect
0
+ f.puts "#{ips.pretty_inspect.chomp }.map {|ip| IPAddr.new(ip) }"
0
 end
...
12
13
14
15
 
16
...
12
13
14
 
15
16
0
@@ -12,5 +12,5 @@ ips = src.scan(/(\d+\.\d+\.\d+\.\d+\/\d+)/).flatten
0
 # 書き出し
0
 open("lib/jpmobile/mobile/z_ip_addresses_willcom.rb","w") do |f|
0
   f.puts "Jpmobile::Mobile::Willcom::IP_ADDRESSES ="
0
- f.puts ips.pretty_inspect
0
+ f.puts "#{ips.pretty_inspect.chomp }.map {|ip| IPAddr.new(ip) }"
0
 end

Comments

    No one has commented yet.