Sha256: c086daad3d66259c53b2d1f5fd10cc05620d22dcf47602c8c5060ead15deb2d1

Contents?: true

Size: 973 Bytes

Versions: 26

Compression:

Stored size: 973 Bytes

Contents

# Fact: netmask
#
# Purpose: Returns the netmask for the main interfaces.
#
# Resolution: Uses the facter/util/netmask library routines.
#
# Caveats:
#
# netmask.rb
# Find the netmask of the primary ipaddress
# Copyright (C) 2007 David Schmitt <david@schmitt.edv-bus.at>
# Copyright (C) 2007 Mark 'phips' Phillips
#
# idea and originial source by Mark 'phips' Phillips
#
require 'facter/util/netmask'

Facter.add("netmask") do
  confine :kernel => [ :sunos, :linux, :freebsd, :openbsd, :netbsd, :darwin, :"gnu/kfreebsd", :dragonfly ]
  setcode do
    Facter::NetMask.get_netmask
  end
end

Facter.add(:netmask) do
  confine :kernel => :windows
  setcode do
    require 'facter/util/ip/windows'

    mask = nil

    adapters = Facter::Util::IP::Windows.get_preferred_ipv4_adapters
    adapters.find do |nic|
      nic.IPSubnet.any? do |subnet|
        mask = subnet if Facter::Util::IP::Windows.valid_ipv4_address?(subnet)
        mask
      end
    end

    mask
  end
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
facter-1.7.6 lib/facter/netmask.rb
facter-2.0.2 lib/facter/netmask.rb
facter-2.0.2-x86-mingw32 lib/facter/netmask.rb
facter-2.0.2-universal-darwin lib/facter/netmask.rb
facter-2.0.1 lib/facter/netmask.rb
facter-2.0.1-x86-mingw32 lib/facter/netmask.rb
facter-2.0.1-universal-darwin lib/facter/netmask.rb
facter-2.0.1.rc4 lib/facter/netmask.rb
facter-2.0.1.rc4-x86-mingw32 lib/facter/netmask.rb
facter-2.0.1.rc4-universal-darwin lib/facter/netmask.rb
facter-2.0.1.rc3 lib/facter/netmask.rb
facter-2.0.1.rc3-x86-mingw32 lib/facter/netmask.rb
facter-2.0.1.rc3-universal-darwin lib/facter/netmask.rb
facter-2.0.1.rc2 lib/facter/netmask.rb
facter-2.0.1.rc2-x86-mingw32 lib/facter/netmask.rb
facter-2.0.1.rc2-universal-darwin lib/facter/netmask.rb
facter-2.0.1.rc1 lib/facter/netmask.rb
facter-2.0.1.rc1-x86-mingw32 lib/facter/netmask.rb
facter-2.0.1.rc1-universal-darwin lib/facter/netmask.rb
facter-1.7.5 lib/facter/netmask.rb