From: Jeremy Kerr Date: Mon, 20 Jan 2014 00:58:49 +0000 (+0800) Subject: utils/pb-udhcpc: Unify references to DHCP bootfile parameter X-Git-Tag: v1.0.0~263 X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=commitdiff_plain;h=6d05fe798a06ba93418a1f8517e8f30cadcfd5e4 utils/pb-udhcpc: Unify references to DHCP bootfile parameter udhcpc may pass the bootfile parameter as either $bootfile or $boot_file, depending on whether the option is present in the BOOTP header, or as a DHCP vendor option. We have code in pb-udhcpc to unify this to $bootfile, but we only use the unified value in one of the user events. This change uses the correct value of bootfile, and fixes the check to conditionally generate the explicit add event. We also need to update the user-event code to use the right event parameter name. Signed-off-by: Jeremy Kerr --- diff --git a/discover/user-event.c b/discover/user-event.c index 7acd237..dc671d9 100644 --- a/discover/user-event.c +++ b/discover/user-event.c @@ -89,9 +89,9 @@ static struct resource *user_event_resource(struct discover_boot_option *opt, return NULL; } - boot_file = event_get_param(event, "boot_file"); + boot_file = event_get_param(event, "bootfile"); if (!boot_file) { - pb_log("%s: boot_file not found\n", __func__); + pb_log("%s: bootfile not found\n", __func__); return NULL; } diff --git a/utils/pb-udhcpc b/utils/pb-udhcpc index f0703ae..7ed9035 100644 --- a/utils/pb-udhcpc +++ b/utils/pb-udhcpc @@ -29,17 +29,18 @@ pb_add () { pb-event dhcp@${interface} $paramstr - # Check if an explicit config file present - if [ -n "${conffile}" ] + # Check if an explicit boot file present. If there is, add it as + # an option directly. + if [ -z "${bootfile}" ] then return; fi - # Finally, add an option for the boot_file parameter - paramstr='name=netboot' + paramstr="" - # Collect relevant parameters to add an option to the boot_file parameter - for name in rootpath siaddr boot_file + # Collect relevant parameters to add an option to the bootfile + # parameter + for name in rootpath siaddr bootfile do value=$(eval "echo \${$name}") [ -n "$value" ] || continue; @@ -47,11 +48,12 @@ pb_add () { paramstr="$paramstr $name=$value" done - pb-event add@${interface} $paramstr + pb-event add@${interface} name="netboot $interface ($bootfile)" \ + $paramstr } pb_remove () { - pb-event remove@${interface} name=netboot + pb-event remove@${interface} } case "$1" in