class Lib::DHCP::Option57
Public Class Methods
new(message_size)
click to toggle source
Calls superclass method
Lib::DHCP::Option::new
# File lib/lib/dhcp/options/option57.rb, line 16 def initialize(message_size) # raise ArgumentError, "Minimal message size is 576. #{message_size} given" unless message_size.to_i >= 576 super MAX_MESSAGE_SIZE, message_size.to_i end
Private Class Methods
unpack(oid, len, payload)
click to toggle source
# File lib/lib/dhcp/options/option57.rb, line 39 def self.unpack(oid, len, payload) raise ArgumentError, "OID Mismatch for #{NAME[oid]} - #{oid}" unless oid.to_i == MAX_MESSAGE_SIZE raise ArgumentError, "Wrong #{NAME[oid]} length - #{len}" unless len == 2 message_size = payload.unpack('n').first.to_i #raise ArgumentError, "Minimal message size is 576. #{message_size} given" unless message_size.to_i >= 576 self.new message_size end
Public Instance Methods
len()
click to toggle source
# File lib/lib/dhcp/options/option57.rb, line 25 def len 2 end
pack()
click to toggle source
# File lib/lib/dhcp/options/option57.rb, line 21 def pack [@oid, 2, @payload.to_i].pack('C2n') end
payload=(message_size)
click to toggle source
# File lib/lib/dhcp/options/option57.rb, line 29 def payload=(message_size) # raise ArgumentError, "Minimal message size is 576. #{message_size} given" unless message_size.to_i >= 576 @payload = message_size.to_i end
Also aliased as: max_message_size=