Ticket #7295: dhcp_request_options.patch

File dhcp_request_options.patch, 1.5 KB (added by system___f, 7 years ago)
  • package/base-files/files/lib/network/config.sh

     
    280280                        if [ -d "/proc/$pid" ] && grep -qs udhcpc "/proc/${pid}/cmdline"; then 
    281281                                lock -u "$lockfile" 
    282282                        else 
    283                                 local ipaddr netmask hostname proto1 clientid 
     283                                local ipaddr netmask hostname proto1 clientid reqopts 
    284284                                config_get ipaddr "$config" ipaddr 
    285285                                config_get netmask "$config" netmask 
    286286                                config_get hostname "$config" hostname 
    287287                                config_get proto1 "$config" proto 
    288288                                config_get clientid "$config" clientid 
     289                                config_get reqopts_list "$config" request 
     290                                [ -n "$reqopts_list" ] && { 
     291                                        local reqopts 
     292                                        for o in $reqopts_list; do reqopts="$reqopts -O $o"; done 
     293                                } 
    289294 
    290295                                [ -z "$ipaddr" ] || \ 
    291296                                        $DEBUG ifconfig "$iface_main" "$ipaddr" ${netmask:+netmask "$netmask"} 
     
    293298                                # don't stay running in background if dhcp is not the main proto on the interface (e.g. when using pptp) 
    294299                                local dhcpopts 
    295300                                [ ."$proto1" != ."$proto" ] && dhcpopts="-n -q" 
    296                                 $DEBUG eval udhcpc -t 0 -i "$iface_main" ${ipaddr:+-r $ipaddr} ${hostname:+-H $hostname} ${clientid:+-c $clientid} -b -p "$pidfile" ${dhcpopts:- -O rootpath -R &} 
     301                                $DEBUG eval udhcpc -t 0 -i "$iface_main" "$reqopts" ${ipaddr:+-r $ipaddr} ${hostname:+-H $hostname} ${clientid:+-c $clientid} -b -p "$pidfile" ${dhcpopts:- -R &}  
    297302                                lock -u "$lockfile" 
    298303                        fi 
    299304                ;;