summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorSean Edmond <seanedmond@microsoft.com>2024-05-08 19:39:01 -0700
committerTom Rini <trini@konsulko.com>2025-05-23 11:28:51 -0600
commitc867045eef153b0beab69fbc74059fcfc4ad9472 (patch)
treee74ff7617a9f78252b2f53bc91c1edb496345cd3 /net
parent4b3706607c0015ba99a86d8631446564c117e06a (diff)
net: Enhancements for dhcp option 209
- Enable option 209 by default - Set pxelinux_configfile to NULL to avoid potential double free - change hardcoded 209 to a define Signed-off-by: Sean Edmond <seanedmond@microsoft.com>
Diffstat (limited to 'net')
-rw-r--r--net/bootp.c4
-rw-r--r--net/bootp.h2
2 files changed, 4 insertions, 2 deletions
diff --git a/net/bootp.c b/net/bootp.c
index c15472f5d37..b9e3cccb4f9 100644
--- a/net/bootp.c
+++ b/net/bootp.c
@@ -603,7 +603,7 @@ static int dhcp_extended(u8 *e, int message_type, struct in_addr server_ip,
*cnt += 1;
#endif
if (IS_ENABLED(CONFIG_BOOTP_PXE_DHCP_OPTION)) {
- *e++ = 209; /* PXELINUX Config File */
+ *e++ = DHCP_OPTION_PXE_CONFIG_FILE; /* PXELINUX Config File */
*cnt += 1;
}
/* no options, so back up to avoid sending an empty request list */
@@ -922,7 +922,7 @@ static void dhcp_process_options(uchar *popt, uchar *end)
net_boot_file_name[size] = 0;
}
break;
- case 209: /* PXELINUX Config File */
+ case DHCP_OPTION_PXE_CONFIG_FILE: /* PXELINUX Config File */
if (IS_ENABLED(CONFIG_BOOTP_PXE_DHCP_OPTION)) {
/* In case it has already been allocated when get DHCP Offer packet,
* free first to avoid memory leak.
diff --git a/net/bootp.h b/net/bootp.h
index 4e32b19d424..24b32c73f62 100644
--- a/net/bootp.h
+++ b/net/bootp.h
@@ -91,6 +91,8 @@ typedef enum { INIT,
#define DHCP_NAK 6
#define DHCP_RELEASE 7
+#define DHCP_OPTION_PXE_CONFIG_FILE 209 /* "ConfigFile" option according to rfc5071 */
+
/**********************************************************************/
#endif /* __BOOTP_H__ */