From 234488c0ccccf23092bdd14e0d065d53e38ac51a Mon Sep 17 00:00:00 2001 From: Tobias Powalowski Date: Mon, 26 Jan 2009 15:58:17 +0100 Subject: [PATCH] 'updated vpnc and pacman mirrorlist' --- .../archboot/pacman/etc/pacman.d/mirrorlist | 25 +++++++-- usr/share/archboot/vpnc/etc/vpnc/vpnc-script | 53 ++++++++++++------- 2 files changed, 53 insertions(+), 25 deletions(-) diff --git a/usr/share/archboot/pacman/etc/pacman.d/mirrorlist b/usr/share/archboot/pacman/etc/pacman.d/mirrorlist index db2f85046..85c362071 100644 --- a/usr/share/archboot/pacman/etc/pacman.d/mirrorlist +++ b/usr/share/archboot/pacman/etc/pacman.d/mirrorlist @@ -11,19 +11,24 @@ Server = ftp://ftp.gtlib.gatech.edu/pub/linux/distributions/archlinux/$repo/os/x Server = ftp://mirror.cs.vt.edu/pub/ArchLinux/$repo/os/x86_64 Server = http://mirrors.easynews.com/linux/archlinux/$repo/os/x86_64 Server = ftp://ftp.ibiblio.org/pub/linux/distributions/archlinux/$repo/os/x86_64 -Server = http://holmes.umflint.edu/archlinux/$repo/os/x86_64 +Server = http://archlinux.umflint.edu/mirrors/archlinux/$repo/os/x86_64 Server = http://mirror.neotuli.net/arch/$repo/os/x86_64 Server = http://mirror.rit.edu/archlinux/$repo/os/x86_64 Server = http://mirror.umoss.org/archlinux/$repo/os/x86_64 Server = http://schlunix.org/archlinux/$repo/os/x86_64 +Server = http://mirror.archlinux.com.ve/$repo/os/x86_64 +Server = http://mirrors.gigenet.com/archlinux/$repo/os/x86_64 # - Canada -Server = ftp://mirror.csclub.uwaterloo.ca/archlinux/$repo/os/@carch +Server = ftp://mirror.csclub.uwaterloo.ca/archlinux/$repo/os/x86_64 +Server = ftp://mirrors.portafixe.com/archlinux/$repo/os/x86_64 # South America # - Brazil Server = http://archlinux.c3sl.ufpr.br/$repo/os/x86_64 Server = ftp://archlinux.c3sl.ufpr.br/archlinux/$repo/os/x86_64 Server = ftp://ftp.las.ic.unicamp.br/pub/archlinux/$repo/os/x86_64 +# - Venezuela +Server = http://mirror2.archlinux.com.ve/$repo/os/x86_64 # Europe # - Austria @@ -32,6 +37,8 @@ Server = ftp://gd.tuwien.ac.at/opsys/linux/archlinux/$repo/os/x86_64 Server = ftp://ftp.belnet.be/mirror/archlinux.org/$repo/os/x86_64 # - Czech Republic Server = ftp://ftp.sh.cvut.cz/MIRRORS/arch/$repo/os/x86_64 +# - Denmark +Server = ftp://ftp.klid.dk/archlinux/$repo/os/x86_64 # - Estonia Server = ftp://ftp.estpak.ee/pub/archlinux/$repo/os/x86_64 # - France @@ -48,10 +55,13 @@ Server = ftp://ftp.uni-bayreuth.de/pub/linux/archlinux/$repo/os/x86_64 Server = ftp://ftp.archlinuxppc.org/x86_64/$repo/os/x86_64 Server = ftp://ftp.tu-chemnitz.de/pub/linux/archlinux/$repo/os/x86_64 Server = http://ftp.uni-kl.de/pub/linux/archlinux/$repo/os/x86_64 +Server = ftp://mirrors.igprolin-online.org/archlinux/$repo/os/x86_64 +Server = ftp://ftp-stud.hs-esslingen.de/pub/Mirrors/archlinux/$repo/os/x86_64 # - Great Britain Server = http://www.mirrorservice.org/sites/ftp.archlinux.org/$repo/os/x86_64 Server = ftp://mirrors.uk2.net/pub/archlinux/$repo/os/x86_64 Server = http://archlinux.mirrors.uk2.net/$repo/os/x86_64 +Server = ftp://mirror.lividpenguin.com/pub/archlinux/$repo/os/x86_64 # - Greece Server = ftp://ftp.ntua.gr/pub/linux/archlinux/$repo/os/x86_64 # - Hungary @@ -64,7 +74,7 @@ Server = ftp://mi.mirror.garr.it/mirrors/archlinux/$repo/os/x86_64 Server = ftp://ftp.nluug.nl/pub/metalab/distributions/archlinux/$repo/os/x86_64 Server = ftp://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/$repo/os/x86_64 # - Norway -Server = http://arch.likbilen.com/$repo/os/@carch +Server = http://mirror.archlinux.no/$repo/os/x86_64 # - Poland Server = ftp://mirror.icis.pcz.pl/archlinux/$repo/os/x86_64 Server = http://piotrkosoft.net/pub/mirrors/ftp.archlinux.org/$repo/os/x86_64 @@ -83,12 +93,15 @@ Server = ftp://ftp.gigabit.nu/$repo/os/x86_64 # - Switzerland Server = http://archlinux.puzzle.ch/$repo/os/x86_64 # - Turkey -Server = http://server.elsistech.com/archlinux/$repo/os/x86_64 +Server = ftp://ftp.linux.org.tr/pub/mirrors/archlinux/$repo/os/x86_64 # - Ukraine -Server = ftp://hell.org.ua/archlinux/$repo/os/x86_64 +Server = ftp://archlinux.hell.org.ua/archlinux/$repo/os/x86_64 Server = ftp://ftp.linux.kiev.ua/pub/Linux/ArchLinux/$repo/os/x86_64 # Asia +# - Indonesia +Server = http://archlinux.cbn.net.id/$repo/os/x86_64 +Server = ftp://archlinux.cbn.net.id/pub/archlinux/$repo/os/x86_64 # - Israel Server = http://mirror.isoc.org.il/pub/archlinux/$repo/os/x86_64 # - Vietnam @@ -98,4 +111,6 @@ Server = ftp://202.78.230.5/archlinux/$repo/os/x86_64 # Australia Server = ftp://mirror.pacific.net.au/linux/archlinux/$repo/os/x86_64 Server = ftp://mirror.aarnet.edu.au/pub/archlinux/$repo/os/x86_64 +Server = ftp://ftp.iinet.net.au/pub/archlinux/$repo/os/x86_64 +Server = http://mirror.internode.on.net/pub/archlinux/$repo/os/x86_64 diff --git a/usr/share/archboot/vpnc/etc/vpnc/vpnc-script b/usr/share/archboot/vpnc/etc/vpnc/vpnc-script index 6af73e1a0..4c8dce405 100755 --- a/usr/share/archboot/vpnc/etc/vpnc/vpnc-script +++ b/usr/share/archboot/vpnc/etc/vpnc/vpnc-script @@ -4,6 +4,8 @@ #* TUNDEV -- tunnel device (always present) #* INTERNAL_IP4_ADDRESS -- address (always present) #* INTERNAL_IP4_NETMASK -- netmask (often unset) +#* INTERNAL_IP4_NETMASKLEN -- netmask length (often unset) +#* INTERNAL_IP4_NETADDR -- address of network (only present if netmask is set) #* INTERNAL_IP4_DNS -- list of dns serverss #* INTERNAL_IP4_NBNS -- list of wins servers #* CISCO_DEF_DOMAIN -- default domain name @@ -37,6 +39,7 @@ # 1) Maybe dnsmasq can do something like that # 2) Parse dns packets going out via tunnel and redirect them to original dns-server +#env | sort #set -x # =========== script (variable) setup ==================================== @@ -45,24 +48,13 @@ PATH=/sbin:/usr/sbin:$PATH OS="`uname -s`" -VPNC_WIN_SCRIPT=/etc/vpnc/vpnc-script-win - -case "$OS" in - CYGWIN_NT*) - # why does "--kernel-name" include "--kernel-release" on cygwin?! - exec $VPNC_WIN_SCRIPT - ;; - *) - ;; -esac - DEFAULT_ROUTE_FILE=/var/run/vpnc/defaultroute RESOLV_CONF_BACKUP=/var/run/vpnc/resolv.conf-backup -FULL_SCRIPTNAME=/usr/local/sbin/vpnc +FULL_SCRIPTNAME=/usr/sbin/vpnc SCRIPTNAME=`basename $FULL_SCRIPTNAME` # some systems, eg. Darwin & FreeBSD, prune /var/run on boot -if ! [ -d "/var/run/vpnc" ]; then +if [ ! -d "/var/run/vpnc" ]; then mkdir -p /var/run/vpnc fi @@ -84,7 +76,7 @@ fi if [ -x /sbin/resolvconf ]; then # Optional tool on Debian, Ubuntu, Gentoo MODIFYRESOLVCONF=modify_resolvconf_manager RESTORERESOLVCONF=restore_resolvconf_manager -elif [ -x /sbin/modify_resolvconf ]; then # Mandatory tool on Suse +elif [ -x /sbin/modify_resolvconf ]; then # Mandatory tool on Suse earlier than 11.1 MODIFYRESOLVCONF=modify_resolvconf_suse RESTORERESOLVCONF=restore_resolvconf_suse else # Generic for any OS @@ -95,7 +87,21 @@ fi # =========== tunnel interface handling ==================================== do_ifconfig() { - ifconfig "$TUNDEV" inet "$INTERNAL_IP4_ADDRESS" $ifconfig_syntax_ptp "$INTERNAL_IP4_ADDRESS" netmask 255.255.255.255 mtu 1412 up + if [ -n "$INTERNAL_IP4_MTU" ]; then + MTU=$INTERNAL_IP4_MTU + elif [ -n "$IPROUTE" ]; then + 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 + fi + + # Point to point interface require a netmask of 255.255.255.255 on some systems + ifconfig "$TUNDEV" inet "$INTERNAL_IP4_ADDRESS" $ifconfig_syntax_ptp "$INTERNAL_IP4_ADDRESS" netmask 255.255.255.255 mtu ${MTU} up + + if [ -n "$INTERNAL_IP4_NETMASK" ]; then + set_network_route $INTERNAL_IP4_NETADDR $INTERNAL_IP4_NETMASK $INTERNAL_IP4_NETMASKLEN + fi } destroy_tun_device() { @@ -157,7 +163,7 @@ else # use route command # isn't -n supposed to give --numeric output? # apperently not... # Get rid of lines containing IPv6 addresses (':') - netstat -r -n | sed 's/default/0.0.0.0/' | sed 's/^.*:.*$//' | grep '^0.0.0.0' | awk '{print $2}' + netstat -r -n | awk '/:/ { next; } /^(default|0\.0\.0\.0)/ { print $2; }' } set_vpngateway_route() { @@ -193,7 +199,7 @@ else # use route command del_network_route() { case "$OS" in - Linux|NetBSD) # and probably others... + Linux|NetBSD|Darwin) # and probably others... # routes are deleted automatically on device shutdown return ;; @@ -232,12 +238,18 @@ EOF LINE="" fi ;; - domain*|search*) + search*) if [ -n "$CISCO_DEF_DOMAIN" ]; then LINE="$LINE $CISCO_DEF_DOMAIN" CISCO_DEF_DOMAIN="" fi ;; + domain*) + if [ -n "$CISCO_DEF_DOMAIN" ]; then + LINE="domain $CISCO_DEF_DOMAIN" + CISCO_DEF_DOMAIN="" + fi + ;; esac NEW_RESOLVCONF="$NEW_RESOLVCONF $LINE" @@ -283,7 +295,8 @@ search $CISCO_DEF_DOMAIN" d.add ServerAddresses * $INTERNAL_IP4_DNS set State:/Network/Service/$TUNDEV/DNS d.init - d.add Router $INTERNAL_IP4_ADDRESS + # next line overrides the default gateway and breaks split routing + # d.add Router $INTERNAL_IP4_ADDRESS d.add Addresses * $INTERNAL_IP4_ADDRESS d.add SubnetMasks * 255.255.255.255 d.add InterfaceName $TUNDEV @@ -460,7 +473,6 @@ do_connect() { } do_disconnect() { - destroy_tun_device if [ -n "$CISCO_SPLIT_INC" ]; then i=0 while [ $i -lt $CISCO_SPLIT_INC ] ; do @@ -488,6 +500,7 @@ do_disconnect() { if [ -n "$INTERNAL_IP4_DNS" ]; then $RESTORERESOLVCONF fi + destroy_tun_device } #### Main