Changeset 28222


Ignore:
Timestamp:
2011-09-12T23:07:00+02:00 (6 years ago)
Author:
acinonyx
Message:

[package] base-files: Add support for assigning multiple IPv6 addresses on an interface

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/package/base-files/files/lib/network/config.sh

    r27653 r28222  
    243243        local config="$2" 
    244244 
    245         local ipaddr netmask ip6addr 
     245        local ipaddr netmask ip6addrs ipaddr 
    246246        config_get ipaddr "$config" ipaddr 
    247247        config_get netmask "$config" netmask 
    248         config_get ip6addr "$config" ip6addr 
     248        config_get ip6addrs "$config" ip6addr 
    249249        [ -z "$ipaddr" -o -z "$netmask" ] && [ -z "$ip6addr" ] && return 1 
    250250 
     
    256256        config_get metric "$config" metric 
    257257 
    258         case "$ip6addr" in 
    259                 */*) ;; 
    260                 *:*) ip6addr="$ip6addr/64" ;; 
    261         esac 
    262  
    263258        [ -z "$ipaddr" ] || $DEBUG ifconfig "$iface" "$ipaddr" netmask "$netmask" broadcast "${bcast:-+}" 
    264         [ -z "$ip6addr" ] || $DEBUG ifconfig "$iface" add "$ip6addr" 
     259        for ip6addr in $ip6addrs; do           
     260                case "$ip6addr" in 
     261                        */*) ;; 
     262                        *:*) ip6addr="$ip6addr/64" ;; 
     263                esac 
     264                $DEBUG ifconfig "$iface" add "$ip6addr" 
     265        done  
    265266        [ -z "$gateway" ] || $DEBUG route add default gw "$gateway" ${metric:+metric $metric} dev "$iface" 
    266267        [ -z "$ip6gw" ] || $DEBUG route -A inet6 add default gw "$ip6gw" ${metric:+metric $metric} dev "$iface" 
Note: See TracChangeset for help on using the changeset viewer.