class Lib::DHCP::Option53
Public Class Methods
new(message_type)
click to toggle source
Calls superclass method
Lib::DHCP::Option::new
# File lib/lib/dhcp/options/option53.rb, line 16 def initialize(message_type) raise ArgumentError, "Illegal value for DHCP Message Type = #{message_type}" unless (1..255).include? message_type.to_i super MESSAGE_TYPE, message_type.to_i end
Private Class Methods
unpack(oid, len, payload)
click to toggle source
# File lib/lib/dhcp/options/option53.rb, line 43 def self.unpack(oid, len, payload) raise ArgumentError, "OID Mismatch for #{NAME[oid]} - #{oid}" unless oid.to_i == MESSAGE_TYPE raise ArgumentError, "Wrong #{NAME[oid]} length - #{len}" unless len == 1 self.new payload.unpack('C').first.to_i end
Public Instance Methods
len()
click to toggle source
# File lib/lib/dhcp/options/option53.rb, line 30 def len 1 end
pack()
click to toggle source
# File lib/lib/dhcp/options/option53.rb, line 26 def pack [@oid, 1, @payload].pack('C3') end
payload=(message_type)
click to toggle source
# File lib/lib/dhcp/options/option53.rb, line 21 def payload=(message_type) raise ArgumentError, "Illegal value for DHCP Message Type = #{message_type}" unless (1..255).include? message_type.to_i @payload = message_type.to_i end
Also aliased as: message_type=
to_s()
click to toggle source
# File lib/lib/dhcp/options/option53.rb, line 34 def to_s Lib::DHCP::Message::NAME[@payload.to_i].to_s.upcase end