aboutsummaryrefslogtreecommitdiffstats
path: root/sysconfig/network-scripts/ifup-ipsec
diff options
context:
space:
mode:
authorBill Nottingham <notting@redhat.com>2005-03-28 20:42:23 +0000
committerBill Nottingham <notting@redhat.com>2005-03-28 20:42:23 +0000
commitc5728c9d89c5f6c9c97fc782edaeb347ebd818c1 (patch)
treea949160bdaea34858d83455c1cb00d515ff42c7a /sysconfig/network-scripts/ifup-ipsec
parentf5e26e28b1e050df4ffa1ac3a1382424a3ae14d1 (diff)
downloadinitscripts-c5728c9d89c5f6c9c97fc782edaeb347ebd818c1.tar
initscripts-c5728c9d89c5f6c9c97fc782edaeb347ebd818c1.tar.gz
initscripts-c5728c9d89c5f6c9c97fc782edaeb347ebd818c1.tar.bz2
initscripts-c5728c9d89c5f6c9c97fc782edaeb347ebd818c1.tar.xz
initscripts-c5728c9d89c5f6c9c97fc782edaeb347ebd818c1.zip
set proper route (#140654, #146169)
Diffstat (limited to 'sysconfig/network-scripts/ifup-ipsec')
-rwxr-xr-xsysconfig/network-scripts/ifup-ipsec6
1 files changed, 4 insertions, 2 deletions
diff --git a/sysconfig/network-scripts/ifup-ipsec b/sysconfig/network-scripts/ifup-ipsec
index 4751b5cc..0314f71a 100755
--- a/sysconfig/network-scripts/ifup-ipsec
+++ b/sysconfig/network-scripts/ifup-ipsec
@@ -137,7 +137,8 @@ EOF
[ -z "$SRCNET" ] && SRCNET="$SRC/32"
[ -z "$DSTNET" ] && DSTNET="$DST/32"
- ip route add to $DSTNET via $DST
+ [ -z "$SRCGW" ] && SRCGW=`ip -o route get to $SRCNET | sed "s|.*src \([^ ]*\).*|\1|"`
+ ip route add to $DSTNET via $SRCGW src $SRCGW
/sbin/setkey -c >/dev/null 2>&1 << EOF
delete $SRC $DST ah $SPI_AH_OUT;
@@ -191,7 +192,8 @@ EOF
[ -z "$SRCNET" ] && SRCNET="$SRC/32"
[ -z "$DSTNET" ] && DSTNET="$DST/32"
- ip route add to $DSTNET via $DST
+ [ -z "$SRCGW" ] && SRCGW=`ip -o route get to $SRCNET | sed "s|.*src \([^ ]*\).*|\1|"`
+ ip route add to $DSTNET via $SRCGW src $SRCGW
/sbin/setkey -c >/dev/null 2>&1 << EOF
spddelete $SRCNET $DSTNET any -P out;