Lines 21-32
Link Here
|
21 |
|
21 |
|
22 |
ROUTE_CMD="/sbin/route" |
22 |
ROUTE_CMD="/sbin/route" |
23 |
|
23 |
|
|
|
24 |
get_communication_channels(){ |
25 |
for _a in inet inet6 atm ipx; do |
26 |
if afexists $_a; then |
27 |
comm_channel="${comm_channel} $_a" |
28 |
fi |
29 |
done |
30 |
} |
31 |
|
24 |
routing_start() |
32 |
routing_start() |
25 |
{ |
33 |
{ |
26 |
local _cmd _af _if _a |
34 |
local _cmd _af _if _a |
27 |
_cmd=$1 |
35 |
_cmd=$1 |
28 |
_af=$2 |
36 |
_af=$2 |
29 |
_if=$3 |
37 |
_if=$3 |
|
|
38 |
get_communication_channels |
30 |
|
39 |
|
31 |
case $_if in |
40 |
case $_if in |
32 |
""|[Aa][Ll][Ll]|[Aa][Nn][Yy]) _if="" ;; |
41 |
""|[Aa][Ll][Ll]|[Aa][Nn][Yy]) _if="" ;; |
Lines 41-47
Link Here
|
41 |
fi |
50 |
fi |
42 |
;; |
51 |
;; |
43 |
""|[Aa][Ll][Ll]|[Aa][Nn][Yy]) |
52 |
""|[Aa][Ll][Ll]|[Aa][Nn][Yy]) |
44 |
for _a in inet inet6 ipx atm; do |
53 |
for _a in $comm_channel; do |
45 |
afexists $_a && setroutes $_cmd $_a $_if |
54 |
afexists $_a && setroutes $_cmd $_a $_if |
46 |
done |
55 |
done |
47 |
;; |
56 |
;; |
Lines 56-61
Link Here
|
56 |
local _af _if _a |
65 |
local _af _if _a |
57 |
_af=$1 |
66 |
_af=$1 |
58 |
_if=$2 |
67 |
_if=$2 |
|
|
68 |
get_communication_channels |
59 |
|
69 |
|
60 |
case $_if in |
70 |
case $_if in |
61 |
""|[Aa][Ll][Ll]|[Aa][Nn][Yy]) _if="" ;; |
71 |
""|[Aa][Ll][Ll]|[Aa][Nn][Yy]) _if="" ;; |
Lines 74-80
Link Here
|
74 |
fi |
84 |
fi |
75 |
;; |
85 |
;; |
76 |
""|[Aa][Ll][Ll]|[Aa][Nn][Yy]) |
86 |
""|[Aa][Ll][Ll]|[Aa][Nn][Yy]) |
77 |
for _a in inet inet6 ipx atm; do |
87 |
for _a in $comm_channel; do |
78 |
afexists $_a || continue |
88 |
afexists $_a || continue |
79 |
eval static_${_a} delete $_if |
89 |
eval static_${_a} delete $_if |
80 |
# When $_if is specified, do not flush routes. |
90 |
# When $_if is specified, do not flush routes. |
Lines 306-312
Link Here
|
306 |
options_inet() |
316 |
options_inet() |
307 |
{ |
317 |
{ |
308 |
_ropts_initdone= |
318 |
_ropts_initdone= |
|
|
319 |
_all_false_checkyesno=true |
309 |
if checkyesno icmp_bmcastecho; then |
320 |
if checkyesno icmp_bmcastecho; then |
|
|
321 |
_all_false_checkyesno=false |
310 |
ropts_init inet |
322 |
ropts_init inet |
311 |
echo -n ' broadcast ping responses=YES' |
323 |
echo -n ' broadcast ping responses=YES' |
312 |
${SYSCTL} net.inet.icmp.bmcastecho=1 > /dev/null |
324 |
${SYSCTL} net.inet.icmp.bmcastecho=1 > /dev/null |
Lines 315-320
Link Here
|
315 |
fi |
327 |
fi |
316 |
|
328 |
|
317 |
if checkyesno icmp_drop_redirect; then |
329 |
if checkyesno icmp_drop_redirect; then |
|
|
330 |
_all_false_checkyesno=false |
318 |
ropts_init inet |
331 |
ropts_init inet |
319 |
echo -n ' ignore ICMP redirect=YES' |
332 |
echo -n ' ignore ICMP redirect=YES' |
320 |
${SYSCTL} net.inet.icmp.drop_redirect=1 > /dev/null |
333 |
${SYSCTL} net.inet.icmp.drop_redirect=1 > /dev/null |
Lines 323-328
Link Here
|
323 |
fi |
336 |
fi |
324 |
|
337 |
|
325 |
if checkyesno icmp_log_redirect; then |
338 |
if checkyesno icmp_log_redirect; then |
|
|
339 |
_all_false_checkyesno=false |
326 |
ropts_init inet |
340 |
ropts_init inet |
327 |
echo -n ' log ICMP redirect=YES' |
341 |
echo -n ' log ICMP redirect=YES' |
328 |
${SYSCTL} net.inet.icmp.log_redirect=1 > /dev/null |
342 |
${SYSCTL} net.inet.icmp.log_redirect=1 > /dev/null |
Lines 331-336
Link Here
|
331 |
fi |
345 |
fi |
332 |
|
346 |
|
333 |
if checkyesno gateway_enable; then |
347 |
if checkyesno gateway_enable; then |
|
|
348 |
_all_false_checkyesno=false |
334 |
ropts_init inet |
349 |
ropts_init inet |
335 |
echo -n ' gateway=YES' |
350 |
echo -n ' gateway=YES' |
336 |
${SYSCTL} net.inet.ip.forwarding=1 > /dev/null |
351 |
${SYSCTL} net.inet.ip.forwarding=1 > /dev/null |
Lines 339-344
Link Here
|
339 |
fi |
354 |
fi |
340 |
|
355 |
|
341 |
if checkyesno forward_sourceroute; then |
356 |
if checkyesno forward_sourceroute; then |
|
|
357 |
_all_false_checkyesno=false |
342 |
ropts_init inet |
358 |
ropts_init inet |
343 |
echo -n ' do source routing=YES' |
359 |
echo -n ' do source routing=YES' |
344 |
${SYSCTL} net.inet.ip.sourceroute=1 > /dev/null |
360 |
${SYSCTL} net.inet.ip.sourceroute=1 > /dev/null |
Lines 347-352
Link Here
|
347 |
fi |
363 |
fi |
348 |
|
364 |
|
349 |
if checkyesno accept_sourceroute; then |
365 |
if checkyesno accept_sourceroute; then |
|
|
366 |
_all_false_checkyesno=false |
350 |
ropts_init inet |
367 |
ropts_init inet |
351 |
echo -n ' accept source routing=YES' |
368 |
echo -n ' accept source routing=YES' |
352 |
${SYSCTL} net.inet.ip.accept_sourceroute=1 > /dev/null |
369 |
${SYSCTL} net.inet.ip.accept_sourceroute=1 > /dev/null |
Lines 355-360
Link Here
|
355 |
fi |
372 |
fi |
356 |
|
373 |
|
357 |
if checkyesno arpproxy_all; then |
374 |
if checkyesno arpproxy_all; then |
|
|
375 |
_all_false_checkyesno=false |
358 |
ropts_init inet |
376 |
ropts_init inet |
359 |
echo -n ' ARP proxyall=YES' |
377 |
echo -n ' ARP proxyall=YES' |
360 |
${SYSCTL} net.link.ether.inet.proxyall=1 > /dev/null |
378 |
${SYSCTL} net.link.ether.inet.proxyall=1 > /dev/null |
Lines 362-375
Link Here
|
362 |
${SYSCTL} net.link.ether.inet.proxyall=0 > /dev/null |
380 |
${SYSCTL} net.link.ether.inet.proxyall=0 > /dev/null |
363 |
fi |
381 |
fi |
364 |
|
382 |
|
365 |
[ -n "${_ropts_initdone}" ] && echo '.' |
383 |
[ -n "${_ropts_initdone}" ] || $_all_false_checkyesno |
366 |
} |
384 |
} |
367 |
|
385 |
|
368 |
options_inet6() |
386 |
options_inet6() |
369 |
{ |
387 |
{ |
370 |
_ropts_initdone= |
388 |
_ropts_initdone= |
|
|
389 |
_all_false_checkyesno=true |
371 |
|
390 |
|
372 |
if checkyesno ipv6_gateway_enable; then |
391 |
if checkyesno ipv6_gateway_enable; then |
|
|
392 |
_all_false_checkyesno=false |
373 |
ropts_init inet6 |
393 |
ropts_init inet6 |
374 |
echo -n ' gateway=YES' |
394 |
echo -n ' gateway=YES' |
375 |
${SYSCTL} net.inet6.ip6.forwarding=1 > /dev/null |
395 |
${SYSCTL} net.inet6.ip6.forwarding=1 > /dev/null |
Lines 377-397
Link Here
|
377 |
${SYSCTL} net.inet6.ip6.forwarding=0 > /dev/null |
397 |
${SYSCTL} net.inet6.ip6.forwarding=0 > /dev/null |
378 |
fi |
398 |
fi |
379 |
|
399 |
|
380 |
[ -n "${_ropts_initdone}" ] && echo '.' |
400 |
[ -n "${_ropts_initdone}" ] || $_all_false_checkyesno |
381 |
} |
401 |
} |
382 |
|
402 |
|
383 |
options_atm() |
403 |
options_atm() |
384 |
{ |
404 |
{ |
385 |
_ropts_initdone= |
405 |
_ropts_initdone= |
|
|
406 |
_all_false_checkyesno=true |
386 |
|
407 |
|
387 |
[ -n "${_ropts_initdone}" ] && echo '.' |
408 |
[ -n "${_ropts_initdone}" ] || $_all_false_checkyesno |
388 |
} |
409 |
} |
389 |
|
410 |
|
390 |
options_ipx() |
411 |
options_ipx() |
391 |
{ |
412 |
{ |
392 |
_ropts_initdone= |
413 |
_ropts_initdone= |
|
|
414 |
_all_false_checkyesno=true |
393 |
|
415 |
|
394 |
if checkyesno ipxgateway_enable; then |
416 |
if checkyesno ipxgateway_enable; then |
|
|
417 |
_all_false_checkyesno=false |
395 |
ropts_init ipx |
418 |
ropts_init ipx |
396 |
echo -n ' gateway=YES' |
419 |
echo -n ' gateway=YES' |
397 |
${SYSCTL} net.ipx.ipx.ipxforwarding=1 > /dev/null |
420 |
${SYSCTL} net.ipx.ipx.ipxforwarding=1 > /dev/null |
Lines 399-405
Link Here
|
399 |
${SYSCTL} net.ipx.ipx.ipxforwarding=0 > /dev/null |
422 |
${SYSCTL} net.ipx.ipx.ipxforwarding=0 > /dev/null |
400 |
fi |
423 |
fi |
401 |
|
424 |
|
402 |
[ -n "${_ropts_initdone}" ] && echo '.' |
425 |
[ -n "${_ropts_initdone}" ] || $_all_false_checkyesno |
403 |
} |
426 |
} |
404 |
|
427 |
|
405 |
load_rc_config $name |
428 |
load_rc_config $name |