class DhcpsApi::DHCP_CLIENT_UID
typedef struct _DHCP_BINARY_DATA {
DWORD DataLength; BYTE *Data;
} DHCP_BINARY_DATA
, *LPDHCP_BINARY_DATA, DHCP_CLIENT_UID
;
Public Class Methods
from_mac_address(mac_address)
click to toggle source
# File lib/dhcpsapi/data_structures.rb, line 43 def self.from_mac_address(mac_address) to_return = new mac_as_uint8s = to_return.mac_address_to_array_of_uint8(mac_address) to_return[:data_length] = mac_as_uint8s.size to_return[:data] = FFI::MemoryPointer.new(:uint8, mac_as_uint8s.size) to_return[:data].write_array_of_uint8(mac_as_uint8s) to_return end
Public Instance Methods
data_as_ruby_struct_attr()
click to toggle source
# File lib/dhcpsapi/data_structures.rb, line 68 def data_as_ruby_struct_attr self[:data].read_array_of_type(:uint8, :read_uint8, self[:data_length]).map {|w| "%02X" % w}.join(":") end
initialize_with_subnet_and_mac_addresses(subnet_address, mac_address)
click to toggle source
# File lib/dhcpsapi/data_structures.rb, line 60 def initialize_with_subnet_and_mac_addresses(subnet_address, mac_address) mac_as_uint8s = mac_address_to_array_of_uint8(mac_address) subnet_as_uint8s = subnet_address.split('.').reverse.map {|octet| octet.to_i} self[:data_length] = 11 self[:data] = FFI::MemoryPointer.new(:uint8, 11) self[:data].write_array_of_uint8(subnet_as_uint8s + [0x1] + mac_as_uint8s) end
intialize_with_mac_address(mac_address)
click to toggle source
# File lib/dhcpsapi/data_structures.rb, line 52 def intialize_with_mac_address(mac_address) mac_as_uint8s = mac_address_to_array_of_uint8(mac_address) self[:data_length] = mac_as_uint8s.size self[:data] = FFI::MemoryPointer.new(:uint8, mac_as_uint8s.size) self[:data].write_array_of_uint8(mac_as_uint8s) self end