Data Structures | |
| struct | dhcp_pxe_boot_server |
| PXE boot server. More... | |
| struct | dhcp_pxe_boot_menu |
| PXE boot menu. More... | |
| struct | dhcp_pxe_boot_menu_prompt |
| PXE boot menu prompt. More... | |
| struct | dhcp_pxe_boot_menu_item |
| PXE boot menu item. More... | |
| struct | dhcp_client_id |
| Client identifier. More... | |
| struct | dhcp_client_uuid |
| UUID client identifier. More... | |
| struct | dhcp_netdev_desc |
| Network device descriptor. More... | |
Defines | |
| #define | DHCP_PAD 0 |
| Padding. | |
| #define | DHCP_MIN_OPTION 1 |
| Minimum normal DHCP option. | |
| #define | DHCP_SUBNET_MASK 1 |
| Subnet mask. | |
| #define | DHCP_ROUTERS 3 |
| Routers. | |
| #define | DHCP_DNS_SERVERS 6 |
| DNS servers. | |
| #define | DHCP_LOG_SERVERS 7 |
| Syslog servers. | |
| #define | DHCP_HOST_NAME 12 |
| Host name. | |
| #define | DHCP_DOMAIN_NAME 15 |
| Domain name. | |
| #define | DHCP_ROOT_PATH 17 |
| Root path. | |
| #define | DHCP_VENDOR_ENCAP 43 |
| Vendor encapsulated options. | |
| #define | DHCP_PXE_DISCOVERY_CONTROL DHCP_ENCAP_OPT ( DHCP_VENDOR_ENCAP, 6 ) |
| PXE boot server discovery control. | |
| #define | DHCP_PXE_BOOT_SERVER_MCAST DHCP_ENCAP_OPT ( DHCP_VENDOR_ENCAP, 7 ) |
| PXE boot server multicast address. | |
| #define | DHCP_PXE_BOOT_SERVERS DHCP_ENCAP_OPT ( DHCP_VENDOR_ENCAP, 8 ) |
| PXE boot servers. | |
| #define | DHCP_PXE_BOOT_MENU DHCP_ENCAP_OPT ( DHCP_VENDOR_ENCAP, 9 ) |
| PXE boot menu. | |
| #define | DHCP_PXE_BOOT_MENU_PROMPT DHCP_ENCAP_OPT ( DHCP_VENDOR_ENCAP, 10 ) |
| PXE boot menu prompt. | |
| #define | DHCP_PXE_BOOT_MENU_ITEM DHCP_ENCAP_OPT ( DHCP_VENDOR_ENCAP, 71 ) |
| PXE boot menu item. | |
| #define | DHCP_REQUESTED_ADDRESS 50 |
| Requested IP address. | |
| #define | DHCP_LEASE_TIME 51 |
| Lease time. | |
| #define | DHCP_OPTION_OVERLOAD 52 |
| Option overloading. | |
| #define | DHCP_OPTION_OVERLOAD_FILE 1 |
| The "file" field is overloaded to contain extra DHCP options. | |
| #define | DHCP_OPTION_OVERLOAD_SNAME 2 |
| The "sname" field is overloaded to contain extra DHCP options. | |
| #define | DHCP_MESSAGE_TYPE 53 |
| DHCP message type. | |
| #define | DHCPNONE 0 |
| #define | DHCPDISCOVER 1 |
| #define | DHCPOFFER 2 |
| #define | DHCPREQUEST 3 |
| #define | DHCPDECLINE 4 |
| #define | DHCPACK 5 |
| #define | DHCPNAK 6 |
| #define | DHCPRELEASE 7 |
| #define | DHCPINFORM 8 |
| #define | DHCP_SERVER_IDENTIFIER 54 |
| DHCP server identifier. | |
| #define | DHCP_PARAMETER_REQUEST_LIST 55 |
| Parameter request list. | |
| #define | DHCP_MAX_MESSAGE_SIZE 57 |
| Maximum DHCP message size. | |
| #define | DHCP_VENDOR_CLASS_ID 60 |
| Vendor class identifier. | |
| #define | DHCP_CLIENT_ID 61 |
| Client identifier. | |
| #define | DHCP_TFTP_SERVER_NAME 66 |
| TFTP server name. | |
| #define | DHCP_BOOTFILE_NAME 67 |
| Bootfile name. | |
| #define | DHCP_USER_CLASS_ID 77 |
| User class identifier. | |
| #define | DHCP_CLIENT_ARCHITECTURE 93 |
| Client system architecture. | |
| #define | DHCP_CLIENT_NDI 94 |
| Client network device interface. | |
| #define | DHCP_CLIENT_UUID 97 |
| UUID client identifier. | |
| #define | DHCP_CLIENT_UUID_TYPE 0 |
| #define | DHCP_EB_ENCAP 175 |
| Etherboot-specific encapsulated options. | |
| #define | DHCP_EB_PRIORITY DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0x01 ) |
| Priority of this options block. | |
| #define | DHCP_EB_YIADDR DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0x02 ) |
| "Your" IP address | |
| #define | DHCP_EB_SIADDR DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0x03 ) |
| "Server" IP address | |
| #define | DHCP_EB_KEEP_SAN DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0x08 ) |
| Keep SAN drive registered. | |
| #define | DHCP_EB_NO_PXEDHCP DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xb0 ) |
| Skip PXE DHCP protocol extensions such as ProxyDHCP. | |
| #define | DHCP_EB_BUS_ID DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xb1 ) |
| Network device descriptor. | |
| #define | DHCP_EB_USE_CACHED DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xb2 ) |
| Use cached network settings. | |
| #define | DHCP_EB_BIOS_DRIVE DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xbd ) |
| BIOS drive number. | |
| #define | DHCP_EB_USERNAME DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xbe ) |
| Username. | |
| #define | DHCP_EB_PASSWORD DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xbf ) |
| Password. | |
| #define | DHCP_EB_REVERSE_USERNAME DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xc0 ) |
| Reverse username. | |
| #define | DHCP_EB_REVERSE_PASSWORD DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xc1 ) |
| Reverse password. | |
| #define | DHCP_EB_VERSION DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xeb ) |
| gPXE version number | |
| #define | DHCP_ISCSI_PRIMARY_TARGET_IQN 201 |
| iSCSI primary target IQN | |
| #define | DHCP_ISCSI_SECONDARY_TARGET_IQN 202 |
| iSCSI secondary target IQN | |
| #define | DHCP_ISCSI_INITIATOR_IQN 203 |
| iSCSI initiator IQN | |
| #define | DHCP_MAX_OPTION 254 |
| Maximum normal DHCP option. | |
| #define | DHCP_END 255 |
| End of options. | |
Enumerations | |
| enum | dhcp_pxe_discovery_control { PXEBS_NO_BROADCAST = 1, PXEBS_NO_MULTICAST = 2, PXEBS_NO_UNKNOWN_SERVERS = 4, PXEBS_SKIP = 8 } |
| PXE boot server discovery control bits. More... | |
| #define DHCP_PAD 0 |
Padding.
This tag does not have a length field; it is always only a single byte in length.
Definition at line 59 of file dhcp.h.
Referenced by dhcp_option_len(), dhcpopt_update_len(), find_dhcp_option_with_encap(), and set_dhcp_option().
| #define DHCP_MIN_OPTION 1 |
Minimum normal DHCP option.
Definition at line 62 of file dhcp.h.
Referenced by copy_encap_settings().
| #define DHCP_VENDOR_ENCAP 43 |
Vendor encapsulated options.
Definition at line 86 of file dhcp.h.
Referenced by copy_encap_settings().
| #define DHCP_PXE_DISCOVERY_CONTROL DHCP_ENCAP_OPT ( DHCP_VENDOR_ENCAP, 6 ) |
PXE boot server discovery control.
Definition at line 89 of file dhcp.h.
Referenced by netboot(), and start_pxebs().
| #define DHCP_PXE_BOOT_SERVER_MCAST DHCP_ENCAP_OPT ( DHCP_VENDOR_ENCAP, 7 ) |
PXE boot server multicast address.
Definition at line 104 of file dhcp.h.
Referenced by start_pxebs().
| #define DHCP_PXE_BOOT_SERVERS DHCP_ENCAP_OPT ( DHCP_VENDOR_ENCAP, 8 ) |
| #define DHCP_PXE_BOOT_MENU DHCP_ENCAP_OPT ( DHCP_VENDOR_ENCAP, 9 ) |
PXE boot menu.
Definition at line 120 of file dhcp.h.
Referenced by dhcp_rx_offer(), netboot(), and pxe_menu_parse().
| #define DHCP_PXE_BOOT_MENU_PROMPT DHCP_ENCAP_OPT ( DHCP_VENDOR_ENCAP, 10 ) |
| #define DHCP_PXE_BOOT_MENU_ITEM DHCP_ENCAP_OPT ( DHCP_VENDOR_ENCAP, 71 ) |
PXE boot menu item.
Definition at line 152 of file dhcp.h.
Referenced by dhcp_pxebs_rx(), and dhcp_pxebs_tx().
| #define DHCP_REQUESTED_ADDRESS 50 |
| #define DHCP_OPTION_OVERLOAD 52 |
| #define DHCP_OPTION_OVERLOAD_FILE 1 |
| #define DHCP_OPTION_OVERLOAD_SNAME 2 |
| #define DHCP_MESSAGE_TYPE 53 |
DHCP message type.
Definition at line 189 of file dhcp.h.
Referenced by dhcp_create_packet(), and dhcp_deliver_iob().
| #define DHCPNONE 0 |
| #define DHCPDECLINE 4 |
| #define DHCPNAK 6 |
| #define DHCPRELEASE 7 |
| #define DHCPINFORM 8 |
| #define DHCP_SERVER_IDENTIFIER 54 |
DHCP server identifier.
Definition at line 201 of file dhcp.h.
Referenced by dhcp_deliver_iob(), dhcp_proxy_tx(), and dhcp_request_tx().
| #define DHCP_PARAMETER_REQUEST_LIST 55 |
| #define DHCP_VENDOR_CLASS_ID 60 |
Vendor class identifier.
Definition at line 210 of file dhcp.h.
Referenced by dhcp_rx_offer(), and netboot().
| #define DHCP_CLIENT_ID 61 |
| #define DHCP_TFTP_SERVER_NAME 66 |
| #define DHCP_BOOTFILE_NAME 67 |
| #define DHCP_USER_CLASS_ID 77 |
| #define DHCP_CLIENT_ARCHITECTURE 93 |
| #define DHCP_CLIENT_UUID 97 |
| #define DHCP_CLIENT_UUID_TYPE 0 |
| #define DHCP_EB_ENCAP 175 |
Etherboot-specific encapsulated options.
This encapsulated options field is used to contain all options specific to Etherboot (i.e. not assigned by IANA or other standards bodies).
Definition at line 265 of file dhcp.h.
Referenced by copy_encap_settings(), and dhcp_create_request().
| #define DHCP_EB_PRIORITY DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0x01 ) |
Priority of this options block.
This is a signed 8-bit integer field indicating the priority of this block of options. It can be used to specify the relative priority of multiple option blocks (e.g. options from non-volatile storage versus options from a DHCP server).
Definition at line 274 of file dhcp.h.
Referenced by dhcp_rx_offer().
| #define DHCP_EB_YIADDR DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0x02 ) |
| #define DHCP_EB_SIADDR DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0x03 ) |
| #define DHCP_EB_KEEP_SAN DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0x08 ) |
| #define DHCP_EB_NO_PXEDHCP DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xb0 ) |
Skip PXE DHCP protocol extensions such as ProxyDHCP.
If set to a non-zero value, gPXE will not wait for ProxyDHCP offers and will ignore any PXE-specific DHCP options that it receives.
Definition at line 311 of file dhcp.h.
Referenced by dhcp_rx_offer().
| #define DHCP_EB_BUS_ID DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xb1 ) |
Network device descriptor.
Byte 0 is the bus type ID; remaining bytes depend on the bus type.
PCI devices: Byte 0 : 1 (PCI) Byte 1 : PCI vendor ID MSB Byte 2 : PCI vendor ID LSB Byte 3 : PCI device ID MSB Byte 4 : PCI device ID LSB
Definition at line 324 of file dhcp.h.
Referenced by dhcp_create_request().
| #define DHCP_EB_USE_CACHED DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xb2 ) |
Use cached network settings.
Cached network settings may be available from a prior DHCP request (if running as a PXE NBP), non-volatile storage on the NIC, or settings set via the command line or an embedded image. If this flag is not set, it will be assumed that those sources are insufficient and that DHCP should still be run when autobooting.
| #define DHCP_EB_BIOS_DRIVE DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xbd ) |
| #define DHCP_EB_USERNAME DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xbe ) |
| #define DHCP_EB_PASSWORD DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xbf ) |
| #define DHCP_EB_REVERSE_USERNAME DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xc0 ) |
Reverse username.
This will be used as the reverse username (i.e. the username provided by the server) for any required authentication. It is expected that this option's value will be held in non-volatile storage, rather than transmitted as part of a DHCP packet.
| #define DHCP_EB_REVERSE_PASSWORD DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xc1 ) |
Reverse password.
This will be used as the reverse password (i.e. the password provided by the server) for any required authentication. It is expected that this option's value will be held in non-volatile storage, rather than transmitted as part of a DHCP packet.
| #define DHCP_EB_VERSION DHCP_ENCAP_OPT ( DHCP_EB_ENCAP, 0xeb ) |
| #define DHCP_ISCSI_PRIMARY_TARGET_IQN 201 |
| #define DHCP_ISCSI_SECONDARY_TARGET_IQN 202 |
| #define DHCP_MAX_OPTION 254 |
Maximum normal DHCP option.
Definition at line 402 of file dhcp.h.
Referenced by copy_encap_settings().
| #define DHCP_END 255 |
End of options.
This tag does not have a length field; it is always only a single byte in length.
Definition at line 409 of file dhcp.h.
Referenced by dhcp_option_len(), find_dhcp_option_with_encap(), and set_dhcp_option().
PXE boot server discovery control bits.
Definition at line 92 of file dhcp.h.
00092 { 00093 /** Inhibit broadcast discovery */ 00094 PXEBS_NO_BROADCAST = 1, 00095 /** Inhibit multicast discovery */ 00096 PXEBS_NO_MULTICAST = 2, 00097 /** Accept only servers in DHCP_PXE_BOOT_SERVERS list */ 00098 PXEBS_NO_UNKNOWN_SERVERS = 4, 00099 /** Skip discovery if filename present */ 00100 PXEBS_SKIP = 8, 00101 };
1.5.7.1