Ignore:
Timestamp:
2010-05-01T14:03:53+02:00 (7 years ago)
Author:
jow
Message:

[backfire] merge r21280

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/backfire/package/ppp/files/ppp.sh

    r20221 r21281  
    6666        [ -e /dev/ppp ] || mknod /dev/ppp c 108 0 
    6767 
     68        local device 
    6869        config_get device "$cfg" device 
     70 
     71        local unit 
    6972        config_get unit "$cfg" unit 
     73 
     74        local username 
    7075        config_get username "$cfg" username 
     76 
     77        local password 
    7178        config_get password "$cfg" password 
     79 
     80        local keepalive 
    7281        config_get keepalive "$cfg" keepalive 
    7382 
     83        local connect 
    7484        config_get connect "$cfg" connect 
     85 
     86        local disconnect 
    7587        config_get disconnect "$cfg" disconnect 
     88 
     89        local pppd_options 
    7690        config_get pppd_options "$cfg" pppd_options 
     91 
     92        local defaultroute 
    7793        config_get_bool defaultroute "$cfg" defaultroute 1 
    7894        [ "$defaultroute" -eq 1 ] && defaultroute="defaultroute replacedefaultroute" || defaultroute="" 
    7995 
    80         interval="${keepalive##*[, ]}" 
     96        local interval="${keepalive##*[, ]}" 
    8197        [ "$interval" != "$keepalive" ] || interval=5 
    8298 
    83         config_get_bool peerdns "$cfg" peerdns 1 
    84         [ "$peerdns" -eq 1 ] && peerdns="usepeerdns" || { 
     99        local dns 
     100        config_get dns "$config" dns 
     101 
     102        local has_dns=0 
     103        local peer_default=1 
     104        [ -n "$dns" ] && { 
     105                has_dns=1 
     106                peer_default=0 
     107        } 
     108 
     109        local peerdns 
     110        config_get_bool peerdns "$cfg" peerdns $peer_default 
     111 
     112        echo -n "" > /tmp/resolv.conf.auto 
     113 
     114        [ "$peerdns" -eq 1 ] && { 
     115                peerdns="usepeerdns" 
     116        } || { 
    85117                peerdns="" 
    86                 config_get dns "$config" dns 
    87118                for dns in $dns; do 
    88                         grep -q "$dns" /tmp/resolv.conf.auto 2>/dev/null || \ 
    89                                 echo "nameserver $dns" >> /tmp/resolv.conf.auto 
     119                        echo "nameserver $dns" >> /tmp/resolv.conf.auto 
    90120                done 
    91121        } 
    92122 
    93         config_get demand "$cfg" demand 
    94         [ -n "$demand" ] && echo "nameserver 1.1.1.1" > /tmp/resolv.conf.auto 
     123        local demand 
     124        config_get_bool demand "$cfg" demand 0 
    95125 
     126        local demandargs 
     127        [ "$demand" -eq 1 ] && { 
     128                demandargs="precompiled-active-filter /etc/ppp/filter demand idle" 
     129                [ "$has_dns" -eq 0 ] && \ 
     130                        echo "nameserver 1.1.1.1" > /tmp/resolv.conf.auto 
     131        } || { 
     132                demandargs="persist" 
     133        } 
     134 
     135        local ipv6 
    96136        config_get_bool ipv6 "$cfg" ipv6 0 
    97137        [ "$ipv6" -eq 1 ] && ipv6="+ipv6" || ipv6="" 
     
    99139        /usr/sbin/pppd "$@" \ 
    100140                ${keepalive:+lcp-echo-interval $interval lcp-echo-failure ${keepalive%%[, ]*}} \ 
    101                 ${demand:+precompiled-active-filter /etc/ppp/filter demand idle }${demand:-persist} \ 
     141                $demandargs \ 
    102142                $peerdns \ 
    103143                $defaultroute \ 
     
    118158        local config="$2" 
    119159 
     160        local device 
    120161        config_get device "$config" device 
    121162 
     163        local mtu 
    122164        config_get mtu "$config" mtu 
     165 
    123166        mtu=${mtu:-1492} 
    124167        start_pppd "$config" \ 
Note: See TracChangeset for help on using the changeset viewer.