On 21/03/17 21:49, Michael Brown wrote:
What is the purpose of this patch? The "desired result" in the commit log message appears to be undefined.

Thanks,

Michael


Hi Michael,

Extremely sorry, I completely missed this email.

Purpose of this patch is to fix a problem, when there are two different DHCPACK, one from DHCP server and other from proxy DHCP server, and both DHCP contain different Vendor Class Identifier (option 60).

After processing both DHCPACK, there will two settings registered, one with DHCP_SETTING_NAME and another with PROXYDHCP_SETTING_NAME. Both these settings will have DHCP_VENDOR_CLASS_ID in them, with different values.

When a query to get DHCP_VENDOR_CLASS_ID, using fetch_string_setting(NULL, &data) is made, most of time DHCP_VENDOR_CLASS_ID from setting DHCP_SETTING_NAME would be returned, which would not have "PXEClient" as value.

During pxeboot discovery, have_pxe_menu() need to look for DHCP_VENDOR_CLASS_ID from PROXYDHCP_SETTING_NAME first (if PROXYDHCP_SETTING_NAME is present, else look for DHCP_VENDOR_CLASS_ID from all other setting). The patch does this by first finding setting using find_setting(PROXYDHCP_SETTING_NAME) then passes that as an arg to fetch_string_setting(). If there are no PROXYDHCP_SETTING_NAME setting, then find_setting would return NULL and fetch_string_setting(NULL) will try to lookup from all settings.

If the commit message of this patch is not clear I can modify it as you want.

Sorry for the delay again,

Anoob.


_______________________________________________
ipxe-devel mailing list
ipxe-devel@lists.ipxe.org
https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel

Reply via email to