]> granicus.if.org Git - esp-idf/commitdiff
dhcpserver: Move DHCP option names to a separate header
authorAngus Gratton <angus@espressif.com>
Tue, 5 Sep 2017 07:26:08 +0000 (17:26 +1000)
committerAngus Gratton <gus@projectgus.com>
Tue, 5 Sep 2017 07:28:40 +0000 (17:28 +1000)
Avoids naming conflicts. Resolves TW13826.

components/lwip/apps/dhcpserver.c
components/lwip/include/lwip/apps/dhcpserver.h
components/lwip/include/lwip/apps/dhcpserver_options.h [new file with mode: 0644]
components/tcpip_adapter/tcpip_adapter_lwip.c

index 685219c6258786787648586e9966a050655824fd..c5ce7a8adebaa0c66684c8960bcb244fd3c8e526 100644 (file)
@@ -23,6 +23,7 @@
 #include "tcpip_adapter.h"
 
 #include "apps/dhcpserver.h"
+#include "apps/dhcpserver_options.h"
 
 #if ESP_DHCP
 
index 77d018cefc3163f417735e0380b77745a77bdf9d..a0024ab5f05354fb72368d50b13566411d3cfb8f 100644 (file)
@@ -36,123 +36,6 @@ typedef struct dhcps_msg {
         u8_t options[312];
 }dhcps_msg;
 
-/** DHCP OPTIONS CODE **/
-typedef enum
-{
-    /* RFC 1497 Vendor Extensions */
-
-    PAD = 0,
-    END = 255,
-
-    SUBNET_MASK = 1,
-    TIME_OFFSET = 2,
-    ROUTER = 3,
-    TIME_SERVER = 4,
-    NAME_SERVER = 5,
-    DOMAIN_NAME_SERVER = 6,
-    LOG_SERVER = 7,
-    COOKIE_SERVER = 8,
-    LPR_SERVER = 9,
-    IMPRESS_SERVER = 10,
-    RESOURCE_LOCATION_SERVER = 11,
-    HOST_NAME = 12,
-    BOOT_FILE_SIZE = 13,
-    MERIT_DUMP_FILE = 14,
-    DOMAIN_NAME = 15,
-    SWAP_SERVER = 16,
-    ROOT_PATH = 17,
-    EXTENSIONS_PATH = 18,
-
-    /* IP Layer Parameters per Host */
-
-    IP_FORWARDING = 19,
-    NON_LOCAL_SOURCE_ROUTING = 20,
-    POLICY_FILTER = 21,
-    MAXIMUM_DATAGRAM_REASSEMBLY_SIZE = 22,
-    DEFAULT_IP_TIME_TO_LIVE = 23,
-    PATH_MTU_AGING_TIMEOUT = 24,
-    PATH_MTU_PLATEAU_TABLE = 25,
-
-    /* IP Layer Parameters per Interface */
-
-    INTERFACE_MTU = 26,
-    ALL_SUBNETS_ARE_LOCAL = 27,
-    BROADCAST_ADDRESS = 28,
-    PERFORM_MASK_DISCOVERY = 29,
-    MASK_SUPPLIER = 30,
-    PERFORM_ROUTER_DISCOVERY = 31,
-    ROUTER_SOLICITATION_ADDRESS = 32,
-    STATIC_ROUTE = 33,
-
-    /* Link Layer Parameters per Interface */
-
-    TRAILER_ENCAPSULATION = 34,
-    ARP_CACHE_TIMEOUT = 35,
-    ETHERNET_ENCAPSULATION = 36,
-
-    /* TCP Parameters */
-
-    TCP_DEFAULT_TTL = 37,
-    TCP_KEEPALIVE_INTERVAL = 38,
-    TCP_KEEPALIVE_GARBAGE = 39,
-
-    /* Application and Service Parameters */
-
-    NETWORK_INFORMATION_SERVICE_DOMAIN = 40,
-    NETWORK_INFORMATION_SERVERS = 41,
-    NETWORK_TIME_PROTOCOL_SERVERS = 42,
-    VENDOR_SPECIFIC_INFORMATION = 43,
-    NETBIOS_OVER_TCP_IP_NAME_SERVER = 44,
-    NETBIOS_OVER_TCP_IP_DATAGRAM_DISTRIBUTION_SERVER = 45,
-    NETBIOS_OVER_TCP_IP_NODE_TYPE = 46,
-    NETBIOS_OVER_TCP_IP_SCOPE = 47,
-    X_WINDOW_SYSTEM_FONT_SERVER = 48,
-    X_WINDOW_SYSTEM_DISPLAY_MANAGER = 49,
-    NETWORK_INFORMATION_SERVICE_PLUS_DOMAIN = 64,
-    NETWORK_INFORMATION_SERVICE_PLUS_SERVERS = 65,
-    MOBILE_IP_HOME_AGENT = 68,
-    SMTP_SERVER = 69,
-    POP3_SERVER = 70,
-    NNTP_SERVER = 71,
-    DEFAULT_WWW_SERVER = 72,
-    DEFAULT_FINGER_SERVER = 73,
-    DEFAULT_IRC_SERVER = 74,
-    STREETTALK_SERVER = 75,
-    STREETTALK_DIRECTORY_ASSISTANCE_SERVER = 76,
-
-    /* DHCP Extensions */
-
-    REQUESTED_IP_ADDRESS = 50,
-    IP_ADDRESS_LEASE_TIME = 51,
-    OPTION_OVERLOAD = 52,
-    TFTP_SERVER_NAME = 66,
-    BOOTFILE_NAME = 67,
-    DHCP_MESSAGE_TYPE = 53,
-    SERVER_IDENTIFIER = 54,
-    PARAMETER_REQUEST_LIST = 55,
-    MESSAGE = 56,
-    MAXIMUM_DHCP_MESSAGE_SIZE = 57,
-    RENEWAL_T1_TIME_VALUE = 58,
-    REBINDING_T2_TIME_VALUE = 59,
-    VENDOR_CLASS_IDENTIFIER = 60,
-    CLIENT_IDENTIFIER = 61,
-
-    USER_CLASS = 77,
-    FQDN = 81,
-    DHCP_AGENT_OPTIONS = 82,
-    NDS_SERVERS = 85,
-    NDS_TREE_NAME = 86,
-    NDS_CONTEXT = 87,
-    CLIENT_LAST_TRANSACTION_TIME = 91,
-    ASSOCIATED_IP = 92,
-    USER_AUTHENTICATION_PROTOCOL = 98,
-    AUTO_CONFIGURE = 116,
-    NAME_SERVICE_SEARCH = 117,
-    SUBNET_SELECTION = 118,
-    DOMAIN_SEARCH = 119,
-    CLASSLESS_ROUTE = 121,
-} dhcp_msg_option;
-
 /*   Defined in esp_misc.h */
 typedef struct {
        bool enable;
diff --git a/components/lwip/include/lwip/apps/dhcpserver_options.h b/components/lwip/include/lwip/apps/dhcpserver_options.h
new file mode 100644 (file)
index 0000000..38d46f6
--- /dev/null
@@ -0,0 +1,134 @@
+// Copyright 2017 Espressif Systems (Shanghai) PTE LTD
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+#pragma once
+
+/** DHCP Options
+
+    This macros are not part of the public dhcpserver.h interface.
+ **/
+typedef enum
+{
+    /* RFC 1497 Vendor Extensions */
+
+    PAD = 0,
+    END = 255,
+
+    SUBNET_MASK = 1,
+    TIME_OFFSET = 2,
+    ROUTER = 3,
+    TIME_SERVER = 4,
+    NAME_SERVER = 5,
+    DOMAIN_NAME_SERVER = 6,
+    LOG_SERVER = 7,
+    COOKIE_SERVER = 8,
+    LPR_SERVER = 9,
+    IMPRESS_SERVER = 10,
+    RESOURCE_LOCATION_SERVER = 11,
+    HOST_NAME = 12,
+    BOOT_FILE_SIZE = 13,
+    MERIT_DUMP_FILE = 14,
+    DOMAIN_NAME = 15,
+    SWAP_SERVER = 16,
+    ROOT_PATH = 17,
+    EXTENSIONS_PATH = 18,
+
+    /* IP Layer Parameters per Host */
+
+    IP_FORWARDING = 19,
+    NON_LOCAL_SOURCE_ROUTING = 20,
+    POLICY_FILTER = 21,
+    MAXIMUM_DATAGRAM_REASSEMBLY_SIZE = 22,
+    DEFAULT_IP_TIME_TO_LIVE = 23,
+    PATH_MTU_AGING_TIMEOUT = 24,
+    PATH_MTU_PLATEAU_TABLE = 25,
+
+    /* IP Layer Parameters per Interface */
+
+    INTERFACE_MTU = 26,
+    ALL_SUBNETS_ARE_LOCAL = 27,
+    BROADCAST_ADDRESS = 28,
+    PERFORM_MASK_DISCOVERY = 29,
+    MASK_SUPPLIER = 30,
+    PERFORM_ROUTER_DISCOVERY = 31,
+    ROUTER_SOLICITATION_ADDRESS = 32,
+    STATIC_ROUTE = 33,
+
+    /* Link Layer Parameters per Interface */
+
+    TRAILER_ENCAPSULATION = 34,
+    ARP_CACHE_TIMEOUT = 35,
+    ETHERNET_ENCAPSULATION = 36,
+
+    /* TCP Parameters */
+
+    TCP_DEFAULT_TTL = 37,
+    TCP_KEEPALIVE_INTERVAL = 38,
+    TCP_KEEPALIVE_GARBAGE = 39,
+
+    /* Application and Service Parameters */
+
+    NETWORK_INFORMATION_SERVICE_DOMAIN = 40,
+    NETWORK_INFORMATION_SERVERS = 41,
+    NETWORK_TIME_PROTOCOL_SERVERS = 42,
+    VENDOR_SPECIFIC_INFORMATION = 43,
+    NETBIOS_OVER_TCP_IP_NAME_SERVER = 44,
+    NETBIOS_OVER_TCP_IP_DATAGRAM_DISTRIBUTION_SERVER = 45,
+    NETBIOS_OVER_TCP_IP_NODE_TYPE = 46,
+    NETBIOS_OVER_TCP_IP_SCOPE = 47,
+    X_WINDOW_SYSTEM_FONT_SERVER = 48,
+    X_WINDOW_SYSTEM_DISPLAY_MANAGER = 49,
+    NETWORK_INFORMATION_SERVICE_PLUS_DOMAIN = 64,
+    NETWORK_INFORMATION_SERVICE_PLUS_SERVERS = 65,
+    MOBILE_IP_HOME_AGENT = 68,
+    SMTP_SERVER = 69,
+    POP3_SERVER = 70,
+    NNTP_SERVER = 71,
+    DEFAULT_WWW_SERVER = 72,
+    DEFAULT_FINGER_SERVER = 73,
+    DEFAULT_IRC_SERVER = 74,
+    STREETTALK_SERVER = 75,
+    STREETTALK_DIRECTORY_ASSISTANCE_SERVER = 76,
+
+    /* DHCP Extensions */
+
+    REQUESTED_IP_ADDRESS = 50,
+    IP_ADDRESS_LEASE_TIME = 51,
+    OPTION_OVERLOAD = 52,
+    TFTP_SERVER_NAME = 66,
+    BOOTFILE_NAME = 67,
+    DHCP_MESSAGE_TYPE = 53,
+    SERVER_IDENTIFIER = 54,
+    PARAMETER_REQUEST_LIST = 55,
+    MESSAGE = 56,
+    MAXIMUM_DHCP_MESSAGE_SIZE = 57,
+    RENEWAL_T1_TIME_VALUE = 58,
+    REBINDING_T2_TIME_VALUE = 59,
+    VENDOR_CLASS_IDENTIFIER = 60,
+    CLIENT_IDENTIFIER = 61,
+
+    USER_CLASS = 77,
+    FQDN = 81,
+    DHCP_AGENT_OPTIONS = 82,
+    NDS_SERVERS = 85,
+    NDS_TREE_NAME = 86,
+    NDS_CONTEXT = 87,
+    CLIENT_LAST_TRANSACTION_TIME = 91,
+    ASSOCIATED_IP = 92,
+    USER_AUTHENTICATION_PROTOCOL = 98,
+    AUTO_CONFIGURE = 116,
+    NAME_SERVICE_SEARCH = 117,
+    SUBNET_SELECTION = 118,
+    DOMAIN_SEARCH = 119,
+    CLASSLESS_ROUTE = 121,
+} dhcp_msg_option;
index b1bb85bc25237fed099435e69d93c1d5ecb9def7..71c4824aa05bf468840ebdee0075dd6b7caf71c9 100644 (file)
@@ -33,6 +33,7 @@
 #include "netif/ethernetif.h"
 
 #include "apps/dhcpserver.h"
+#include "apps/dhcpserver_options.h"
 
 #include "esp_event.h"
 #include "esp_log.h"