Class: IPAddr

Inherits:
Object show all
Defined in:
lib/keystone/core_ext/ipaddr.rb

Instance Method Summary collapse

Instance Method Details

#to_aObject



5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/keystone/core_ext/ipaddr.rb', line 5

def to_a
  begin_addr = (@addr & @mask_addr)
  case @family
  when Socket::AF_INET
    end_addr = (@addr | (IN4MASK ^ @mask_addr))
  when Socket::AF_INET6
    end_addr = (@addr | (IN6MASK ^ @mask_addr))
  else
    raise "unsupported address family"
  end
  ret = []
  begin_addr.upto(end_addr){|addr| ret << IPAddr.new(addr,Socket::AF_INET)}
  return ret
end