class Facter::Resolvers::Solaris::FFI::Arpreq

Public Class Methods

new_for_ioctl(lifreq) click to toggle source
# File lib/facter/resolvers/solaris/ffi/structs.rb, line 34
def self.new_for_ioctl(lifreq)
  arp = Arpreq.new
  arp_addr = SockaddrIn.new(arp[:arp_pa].to_ptr)
  arp_addr[:sin_addr][:s_addr] = SockaddrIn.new(lifreq.lifru_addr.to_ptr).s_addr

  arp
end

Public Instance Methods

sa_data_to_mac() click to toggle source
# File lib/facter/resolvers/solaris/ffi/structs.rb, line 28
def sa_data_to_mac
  self[:arp_ha][:sa_data].entries[0, 6].map do |s|
    s.to_s(16).rjust(2, '0')
  end.join ':'
end