summaryrefslogtreecommitdiff
path: root/net/vpnc/patches/patch-ac
blob: 8ad468cb58ca4f60e7131fa7b9bb7f8319a30c1b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
$NetBSD: patch-ac,v 1.8 2011/03/05 17:46:41 cegger Exp $

--- vpnc-script.in.orig	2011-03-01 14:40:25.000000000 +0000
+++ vpnc-script.in
@@ -94,7 +94,7 @@ do_ifconfig() {
 		DEV=$($IPROUTE route | grep ^default | sed 's/^.* dev \([[:alnum:]-]\+\).*$/\1/')
 		MTU=$(($($IPROUTE link show "$DEV" | grep mtu | sed 's/^.* mtu \([[:digit:]]\+\).*$/\1/') - 88))
 	else
-		MTU=1412
+		MTU=1390
 	fi
 
 	# Point to point interface require a netmask of 255.255.255.255 on some systems
@@ -440,6 +440,20 @@ do_pre_init() {
 }
 
 do_connect() {
+	if test "$TARGET_NETWORKS" ; then
+		i=0
+		for network in $TARGET_NETWORKS ; do
+			eval CISCO_SPLIT_INC_${i}_ADDR=`echo $network | cut -f1 -d/`
+			eval CISCO_SPLIT_INC_${i}_MASKLEN=`echo $network | cut -f2 -d/`
+			eval CISCO_SPLIT_INC_${i}_MASK=$( perl -e '$ARGV[0]=~s,.*/,,;$m=(2**$ARGV[0]-1)<<(32-$ARGV[0]);printf "%d.%d.%d.%d\n", $m>>24 & 0xff, $m>>16 & 0xff, $m>>8 & 0xff, $m & 0xff;' $network )
+			eval CISCO_SPLIT_INC_${i}_PROTOCOL=0
+			eval CISCO_SPLIT_INC_${i}_SPORT=0
+			eval CISCO_SPLIT_INC_${i}_DPORT=0
+			i=`expr $i + 1`
+		done
+		CISCO_SPLIT_INC=$i
+	fi
+
 	if [ -n "$CISCO_BANNER" ]; then
 		echo "Connect Banner:"
 		echo "$CISCO_BANNER" | while read LINE ; do echo "|" "$LINE" ; done