Class: Lib::DHCP::SubOption
- Inherits:
-
Option
- Object
- Option
- Lib::DHCP::SubOption
show all
- Defined in:
- lib/lib/dhcp/options/sub_option.rb
Constant Summary
Constants inherited
from Option
Option::ARP_TIMEOUT, Option::ASSOCIATED_IP, Option::BOOT_FILE_NAME, Option::BOOT_FILE_SIZE, Option::BROADCAST_ADDR, Option::CLIENT_IDENTIFIER, Option::CLIENT_LAST_TRANSACTION_TIME, Option::COOKIE_SERVER, Option::DNS_SERVER, Option::DOMAIN_NAME, Option::DO_MASK_DISCOVER, Option::DO_ROUTE_DISCOVER, Option::DUMP_FILE, Option::END_OPTION, Option::ETHERNET_ENCAPSULATION, Option::EXTENSION_PATH, Option::FINGER_SERVER, Option::HOSTNAME, Option::IMP_SERVER, Option::IP_FORWARD, Option::IP_TTL, Option::IRC_SERVER, Option::LEASE_TIME, Option::LOCAL_SUBNETS, Option::LOG_SERVER, Option::LPR_SERVER, Option::MASK_SUPPLY, Option::MAX_MESSAGE_SIZE, Option::MAX_REASSEMBLE_SIZE, Option::MESSAGE, Option::MESSAGE_TYPE, Option::MOBILE_IP_AGENT, Option::MTU_SIZE, Option::MTU_TABLE, Option::MTU_TIMEOUT, Option::NAME, Option::NAME_SERVER, Option::NBDD, Option::NBNS, Option::NETBIOS_TCP_IP, Option::NETBIOS_TCP_SCOPE, Option::NIS_DOMAIN, Option::NIS_DOMAIN_NAME, Option::NIS_SERVER, Option::NIS_SERVERS, Option::NIS_TIME_SERVER, Option::NNTP_SERVER, Option::OPTION_OVERLOAD, Option::PAD, Option::PARAMETER_REQUEST, Option::POLICY_FILTER, Option::POP3_SERVER, Option::PRIVATE, Option::QUOTE_SERVER, Option::REBIND_TIME, Option::RELAY_AGENT, Option::RENEW_TIME, Option::REQUESTED_ADDRESS, Option::RES_SERVER, Option::ROOT_PATH, Option::ROUTER, Option::ROUTER_SOLICIT, Option::SERVER_IDENTIFIER, Option::SMTP_SERVER, Option::SRC_ROUTE, Option::STATIC_ROUTE, Option::STREET_TALK_DIRECTORY_SERVER, Option::STREET_TALK_SERVER, Option::SUBNET_MASK, Option::SWAP_SERVER, Option::TCP_ALIVE_GARBAGE, Option::TCP_KEEP_ALIVE, Option::TCP_TTL, Option::TFTP_SERVER, Option::TIME_OFFSET, Option::TIME_SERVER, Option::TRAILER_ENCAPSULATION, Option::USER_CLASS, Option::VENDOR_CLASS_IDENTIFIER, Option::VENDOR_SPECIFIC, Option::WWW_SERVER, Option::XDISPLAY_MANAGER, Option::XFONT
Instance Attribute Summary
Attributes inherited from Option
#oid, #payload
Instance Method Summary
collapse
Methods inherited from Option
#<=>, #initialize, unpack
Instance Method Details
#len ⇒ Object
22
23
24
|
# File 'lib/lib/dhcp/options/sub_option.rb', line 22
def len
[@payload].pack('a*').size
end
|
#name ⇒ Object
12
13
14
15
16
|
# File 'lib/lib/dhcp/options/sub_option.rb', line 12
def name
option = self.class.name.split('::')[-2]
sub_option = "#{self.class.name.split('::').last}#{@oid}"
"#{option} #{sub_option}"
end
|
#pack ⇒ Object
26
27
28
|
# File 'lib/lib/dhcp/options/sub_option.rb', line 26
def pack
[@oid.to_i, len.to_i, @payload].pack('C2a*')
end
|
#to_s ⇒ Object
18
19
20
|
# File 'lib/lib/dhcp/options/sub_option.rb', line 18
def to_s
@payload.unpack('C*').map{|item| item.to_i.to_s(16).rjust(2, '0') }.join(':')
end
|