Ticket #152: family.diff

File family.diff, 793 bytes (added by roy, 18 months ago)
  • net/iproute2.sh

     
    131131 
    132132_add_route() 
    133133{ 
     134        local family= 
     135 
     136        if [ "$1" = "-A" -o "$1" = "-f" -o "$1" = "-family" ]; then 
     137                family="-f $2" 
     138                shift; shift 
     139        fi 
     140 
    134141        if [ $# -eq 3 ]; then 
    135142                set -- "$1" "$2" via "$3" 
    136143        elif [ "$3" = "gw" ]; then 
     
    145152                        metric) cmd="${cmd} $1"; have_metric=true;; 
    146153                        netmask) cmd="${cmd}/$(_netmask2cidr "$2")"; shift;; 
    147154                        -host|-net);; 
    148                         -A)     [ "$2" = "inet6" ] && shift;; 
    149155                        *) cmd="${cmd} $1";; 
    150156                esac 
    151157                shift 
     
    155161                cmd="${cmd} metric ${metric}" 
    156162        fi 
    157163 
    158         ip route append ${cmd} dev "${IFACE}" 
     164        ip ${family} route append ${cmd} dev "${IFACE}" 
    159165        eend $? 
    160166} 
    161167