diff options
Diffstat (limited to 'abs/core/ppp')
-rw-r--r-- | abs/core/ppp/PKGBUILD | 59 | ||||
-rw-r--r-- | abs/core/ppp/ip-down | 2 | ||||
-rw-r--r-- | abs/core/ppp/ip-down.d.dns.sh | 6 | ||||
-rw-r--r-- | abs/core/ppp/ip-up.d.dns.sh | 10 | ||||
-rw-r--r-- | abs/core/ppp/ipv6-down | 12 | ||||
-rw-r--r-- | abs/core/ppp/ipv6-up | 12 | ||||
-rw-r--r-- | abs/core/ppp/ipv6-up.d.iface-config.sh | 4 | ||||
-rw-r--r-- | abs/core/ppp/plog | 7 | ||||
-rw-r--r-- | abs/core/ppp/poff | 103 | ||||
-rw-r--r-- | abs/core/ppp/pon | 32 | ||||
-rw-r--r-- | abs/core/ppp/pon.1 | 121 | ||||
-rw-r--r-- | abs/core/ppp/ppp | 36 | ||||
-rw-r--r-- | abs/core/ppp/ppp.systemd | 9 |
13 files changed, 83 insertions, 330 deletions
diff --git a/abs/core/ppp/PKGBUILD b/abs/core/ppp/PKGBUILD index 33c7ecc..fb099a3 100644 --- a/abs/core/ppp/PKGBUILD +++ b/abs/core/ppp/PKGBUILD @@ -1,37 +1,24 @@ -# $Id: PKGBUILD 142987 2011-11-19 20:10:23Z thomas $ +# $Id: PKGBUILD 188844 2013-06-22 15:33:40Z thomas $ # Maintainer: Thomas Baechler <thomas@archlinux.org> pkgname=ppp pkgver=2.4.5 -pkgrel=3 +pkgrel=8 pkgdesc="A daemon which implements the Point-to-Point Protocol for dial-up networking" arch=(i686 x86_64) url="http://www.samba.org/ppp/" license=('custom:GPL/BSD') -groups=('base') depends=('glibc' 'libpcap>=1.0.0') -backup=(etc/ppp/{chap-secrets,pap-secrets,options,ip-up,ip-down}) +backup=(etc/ppp/{chap-secrets,pap-secrets,options,ip-up,ip-down,ip-down.d/00-dns.sh,ip-up.d/00-dns.sh,ipv6-up.d/00-iface-config.sh}) source=(ftp://ftp.samba.org/pub/ppp/ppp-${pkgver}.tar.gz options - pon - poff - ppp - plog - pon.1 ip-up ip-down ip-up.d.dns.sh - ip-down.d.dns.sh) -md5sums=('4621bc56167b6953ec4071043fe0ec57' - '7a9259a8f038073eeea7e4552ff1849f' - '48c024f73a80c8b69c4def22f86902cc' - '2d811f8470ccdea3b8c4505a438483e9' - '7561c73b557292d5ba1a9c5dbd270fde' - '86cdaf133f7a79fb464f02d83afc7734' - '44cc662ba9aa61dd9add3ddd4c5ded57' - 'e4beb16ed600b61336d50b2bd2df7cd5' - '2fa0671f40711e69194ccf60979f8b33' - '4a074d74c29625b254a1db720cb87b99' - '8d1be5af8e46393ba6eb273377831e38') + ip-down.d.dns.sh + ipv6-up + ipv6-down + ipv6-up.d.iface-config.sh + ppp.systemd) build() { cd "${srcdir}/${pkgname}-${pkgver}" @@ -68,13 +55,33 @@ package() { install -d -m755 "${pkgdir}/etc/ppp/ip-down.d" install -m755 ../ip-up.d.dns.sh "${pkgdir}/etc/ppp/ip-up.d/00-dns.sh" install -m755 ../ip-down.d.dns.sh "${pkgdir}/etc/ppp/ip-down.d/00-dns.sh" - install -D -m755 ../pon "${pkgdir}/usr/bin/pon" - install -D -m755 ../poff "${pkgdir}/usr/bin/poff" - install -D -m755 ../plog "${pkgdir}/usr/sbin/plog" + install -D -m755 ../ipv6-up "${pkgdir}/etc/ppp/ipv6-up" + install -D -m755 ../ipv6-down "${pkgdir}/etc/ppp/ipv6-down" + install -d -m755 "${pkgdir}/etc/ppp/ipv6-up.d" + install -d -m755 "${pkgdir}/etc/ppp/ipv6-down.d" + install -m755 ../ipv6-up.d.iface-config.sh "${pkgdir}/etc/ppp/ipv6-up.d/00-iface-config.sh" + install -D -m755 scripts/pon "${pkgdir}/usr/bin/pon" + install -D -m755 scripts/poff "${pkgdir}/usr/bin/poff" + install -D -m755 scripts/plog "${pkgdir}/usr/sbin/plog" + install -D -m644 scripts/pon.1 "${pkgdir}/usr/share/man/man1/pon.1" install -D -m600 etc.ppp/pap-secrets "${pkgdir}/etc/ppp/pap-secrets" install -D -m600 etc.ppp/chap-secrets "${pkgdir}/etc/ppp/chap-secrets" - install -D -m755 ${srcdir}/ppp "${pkgdir}/etc/rc.d/ppp" - install -D -m644 ${srcdir}/pon.1 "${pkgdir}/usr/share/man/man1/pon.1" install -d -m755 "${pkgdir}/etc/ppp/peers" chmod 0755 "${pkgdir}/usr/lib/pppd/${pkgver}"/*.so + install -D -m644 "${srcdir}"/ppp.systemd "${pkgdir}"/usr/lib/systemd/system/ppp@.service + + # usrmove + cd "$pkgdir"/usr + mv sbin/* bin/ + rmdir sbin } +md5sums=('4621bc56167b6953ec4071043fe0ec57' + '7a9259a8f038073eeea7e4552ff1849f' + 'e4beb16ed600b61336d50b2bd2df7cd5' + '529b924f644f80cf30d72a966abc7419' + '0e2eeb1af125a46291999162dcc9004a' + '3a5d56ac23e36cdbf48187813c8ec981' + '4cbd0a9af01c27067450ec7d3f5fa673' + 'b75c2fbc4afa9f2d8108b680c88c7036' + '9dde53aa5a931ebe1c7e3469199777c5' + '37401eb0c3dcccb87f5ac4716d0f9f2c') diff --git a/abs/core/ppp/ip-down b/abs/core/ppp/ip-down index 301f3ab..cfd3ae0 100644 --- a/abs/core/ppp/ip-down +++ b/abs/core/ppp/ip-down @@ -3,7 +3,7 @@ # This script is run by pppd after the connection has ended. # -# Execute all scripts in /etc/ppp/ip-up.d/ +# Execute all scripts in /etc/ppp/ip-down.d/ for ipdown in /etc/ppp/ip-down.d/*.sh; do if [ -x $ipdown ]; then # Parameters: interface-name tty-device speed local-IP-address remote-IP-address ipparam diff --git a/abs/core/ppp/ip-down.d.dns.sh b/abs/core/ppp/ip-down.d.dns.sh index 9e19f7d..c9da47a 100644 --- a/abs/core/ppp/ip-down.d.dns.sh +++ b/abs/core/ppp/ip-down.d.dns.sh @@ -1,3 +1,7 @@ #!/bin/sh -[ -e /etc/resolv.conf.backup.${IFNAME} ] && mv /etc/resolv.conf.backup.${IFNAME} /etc/resolv.conf +if [ -x /usr/bin/resolvconf ]; then + /usr/bin/resolvconf -fd ${IFNAME} +else + [ -e /etc/resolv.conf.backup.${IFNAME} ] && mv /etc/resolv.conf.backup.${IFNAME} /etc/resolv.conf +fi diff --git a/abs/core/ppp/ip-up.d.dns.sh b/abs/core/ppp/ip-up.d.dns.sh index f9df543..0fc737e 100644 --- a/abs/core/ppp/ip-up.d.dns.sh +++ b/abs/core/ppp/ip-up.d.dns.sh @@ -1,7 +1,11 @@ #!/bin/sh if [ "$USEPEERDNS" = "1" -a -f /etc/ppp/resolv.conf ]; then - [ -e /etc/resolv.conf ] && mv /etc/resolv.conf /etc/resolv.conf.backup.${IFNAME} - mv /etc/ppp/resolv.conf /etc/resolv.conf - chmod 644 /etc/resolv.conf + if [ -x /usr/bin/resolvconf ]; then + /usr/bin/resolvconf -a ${IFNAME} </etc/ppp/resolv.conf + else + [ -e /etc/resolv.conf ] && mv /etc/resolv.conf /etc/resolv.conf.backup.${IFNAME} + mv /etc/ppp/resolv.conf /etc/resolv.conf + chmod 644 /etc/resolv.conf + fi fi diff --git a/abs/core/ppp/ipv6-down b/abs/core/ppp/ipv6-down new file mode 100644 index 0000000..d3b9e28 --- /dev/null +++ b/abs/core/ppp/ipv6-down @@ -0,0 +1,12 @@ +#!/bin/sh +# +# This script is run by pppd after the connection has ended. +# + +# Execute all scripts in /etc/ppp/ipv6-down.d/ +for ipdown in /etc/ppp/ipv6-down.d/*.sh; do + if [ -x $ipdown ]; then + # Parameters: interface-name tty-device speed local-link-local-address remote-link-local-address ipparam + $ipdown "$@" + fi +done diff --git a/abs/core/ppp/ipv6-up b/abs/core/ppp/ipv6-up new file mode 100644 index 0000000..b294aaf --- /dev/null +++ b/abs/core/ppp/ipv6-up @@ -0,0 +1,12 @@ +#!/bin/sh +# +# This script is run by pppd when there's a successful ppp connection. +# + +# Execute all scripts in /etc/ppp/ipv6-up.d/ +for ipup in /etc/ppp/ipv6-up.d/*.sh; do + if [ -x $ipup ]; then + # Parameters: interface-name tty-device speed local-link-local-address remote-link-local-address ipparam + $ipup "$@" + fi +done diff --git a/abs/core/ppp/ipv6-up.d.iface-config.sh b/abs/core/ppp/ipv6-up.d.iface-config.sh new file mode 100644 index 0000000..b23d6f6 --- /dev/null +++ b/abs/core/ppp/ipv6-up.d.iface-config.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +echo 0 > /proc/sys/net/ipv6/conf/$1/use_tempaddr +echo 2 > /proc/sys/net/ipv6/conf/$1/accept_ra diff --git a/abs/core/ppp/plog b/abs/core/ppp/plog deleted file mode 100644 index 84d2c73..0000000 --- a/abs/core/ppp/plog +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -if [ -s /var/log/ppp.log ]; then - exec tail "$@" /var/log/ppp.log -else - exec tail "$@" /var/log/syslog | grep ' \(pppd\|chat\)\[' -fi diff --git a/abs/core/ppp/poff b/abs/core/ppp/poff deleted file mode 100644 index 8b4dffc..0000000 --- a/abs/core/ppp/poff +++ /dev/null @@ -1,103 +0,0 @@ -#!/bin/sh - -# Written by John Hasler <john@dhh.gt.org> and based on work -# by Phil Hands <phil@hands.com>. Distributed under the GNU GPL - -if [ -x /usr/bin/kill ]; then - KILL="/usr/bin/kill" -else - KILL="/bin/kill" -fi -SIG=TERM -DONE="stopped" -MODE="" - -usage () -{ - cat <<!EOF! -usage: $0 [option] [provider] -options: - -r Cause pppd to drop the line and redial. - -d Toggle the state of pppd's debug option. - -c Cause pppd to renegotiate compression. - -a Stop all pppd's. 'provider' will be ignored. - -h Print this help summary and exit. - -v Print version and exit. - none Stop pppd. - -Options may not be combined. - -If 'provider' is omitted pppd will be stopped or signalled if and only if -there is exactly one running unless the '-a' option was given. If -'provider' is supplied the pppd controlling the connection to that -provider will be stopped or signalled. -!EOF! -} - -# Get option. If there are none replace the "?" that getopts puts in -# FLAG on error with "null". -getopts rdcavh FLAG -if [ "$?" -ne 0 ]; then - FLAG="null" -fi - -# Check for additional options. Should be none. -getopts :rdcavh DUMMY -if [ "$?" -eq 0 ]; then - echo "$0: Illegal option -- ${OPTARG}." - exit 1 -fi - -case $FLAG in - "r") SIG=HUP; DONE=signalled; shift ;; - "d") SIG=USR1; DONE=signalled; shift ;; - "c") SIG=USR2; DONE=signalled; shift ;; - "a") MODE="all"; shift ;; - "v") echo "$0$Revision: 1.1 $_TrickToPrint_RCS_Revision"; exit 0 ;; - "h") usage; exit 0 ;; - "?") exit 1; -esac - -# Get the PIDs of all the pppds running. Could also get these from -# /var/run, but pppd doesn't create .pid files until ppp is up. -PIDS=`pidof pppd` - -# poff is pointless if pppd isn't running. -if test -z "$PIDS"; then - echo "$0: No pppd is running. None ${DONE}." - exit 1 -fi - -# Find out how many pppd's are running. -N=`echo "$PIDS" | wc -w` - -# If there are no arguments we can't do anything if there is more than one -# pppd running. -if test "$#" -eq 0 -a "$N" -gt 1 -a $FLAG != "a" ; then - echo "$0: More than one pppd running and no "-a" option and -no arguments supplied. Nothing ${DONE}." - exit 1 -fi - -# If either there are no arguments or '-a' was specified kill all the -# pppd's. -if test "$#" -eq 0 -o "$MODE" = "all" ; then - $KILL -$SIG $PIDS || { - echo "$0: $KILL failed. None ${DONE}." - exit 1 - } - exit 0 -fi - -# There is an argument, so kill the pppd started on that provider. -PID=`ps axw | grep "[ /]pppd call $1 *\$" | awk '{print $1}'` -if test -n "$PID" ; then - $KILL -$SIG $PID || { - echo "$0: $KILL failed. None ${DONE}." - exit 1 - } -else - echo "$0: I could not find a pppd process for provider '$1'. None ${DONE}." - exit 1 -fi -exit 0 diff --git a/abs/core/ppp/pon b/abs/core/ppp/pon deleted file mode 100644 index 3688505..0000000 --- a/abs/core/ppp/pon +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/sh - -case "$1" in - -*) echo " -Usage: pon [provider] [arguments] - -If you specify one argument, a PPP connection will be started using -settings from the appropriate file in the /etc/ppp/peers/ directory, and -any additional arguments supplied will be passed as extra arguments to -pppd. -" - exit 0 - ;; -esac - -if [ -z "$1" -a ! -f /etc/ppp/peers/provider ]; then - echo " -Please configure /etc/ppp/peers/provider or use a command line argument to -use another file in /etc/ppp/peers/ directory. -" - exit 1 -fi - -if [ "$1" -a ! -f "/etc/ppp/peers/$1" ]; then - echo " -The file /etc/ppp/peers/$1 does not exist. -" - exit 1 -fi - -exec /usr/sbin/pppd call ${@:-provider} - diff --git a/abs/core/ppp/pon.1 b/abs/core/ppp/pon.1 deleted file mode 100644 index bb32205..0000000 --- a/abs/core/ppp/pon.1 +++ /dev/null @@ -1,121 +0,0 @@ -.\" This manual is published under the GPL. -.\" All guidelines specified in the GPL apply here. -.\" To get an ascii file: -.\" groff -man -Tascii pon.1 > pon.txt -.\" -.TH PON 1 "July 2000" "Debian Project" "Debian PPPD" -.SH NAME -pon, poff, plog \- starts up, shuts down or lists the log of PPP connections -.SH SYNOPSIS -.B pon -[ isp-name [ options ] ] -.br -.B poff -[ -r ] [ -d ] [ -c ] [ -a ] [ -h ] [ isp-name ] -.br -.B plog -[ arguments ] -.SH DESCRIPTION -This manual page describes the \fBpon\fP, \fBplog\fP and \fBpoff\fP -scripts, which allow users to control PPP connections. -.. -.SS pon -\fBpon\fP, invoked without arguments, runs the \fI/etc/ppp/ppp_on_boot\fP -file, if it exists and is executable. Otherwise, a PPP connection will be -started using configuration from \fI/etc/ppp/peers/provider\fP. -This is the default behaviour unless an \fBisp-name\fP argument is given. -.PP -For instance, to use ISP configuration "myisp" run: -.IP -pon myisp -.PP -\fBpon\fP will then use the options file \fI/etc/ppp/peers/myisp\fP. -You can pass additional \fBoptions\fP after the ISP name, too. -\fBpon\fP can be used to run multiple, simultaneous PPP connections. -.. -.SS poff -\fBpoff\fP closes a PPP connection. If more than one PPP connection exists, -the one named in the argument to \fBpoff\fP will be killed, e.g. -.IP -poff myprovider2 -.PP -will terminate the connection to myprovider2, and leave the PPP connections -to e.g. "myprovider1" or "myprovider3" up and running. -.PP -\fBpoff\fP takes the following command line options: -.RS -.TP -.B "\-r" -causes the connection to be redialed after it is dropped. -.TP -.B "\-d" -toggles the state of pppd's debug option. -.TP -.B "\-c" -causes -.BR pppd (8) -to renegotiate compression. -.TP -.B "\-a" -stops all running ppp connections. If the argument \fBisp-name\fP -is given it will be ignored. -.TP -.B "\-h" -displays help information. -.TP -.B "\-v" -prints the version and exits. -.PP -If no argument is given, \fBpoff\fP will stop or signal pppd if and only -if there is exactly one running. If more than one connection is active, -it will exit with an error code of 1. -.. -.SS plog -\fBplog\fP shows you the last few lines of \fI/var/log/ppp.log\fP. If that -file doesn't exist, it shows you the last few lines of your -\fI/var/log/syslog\fP file, but excluding the lines not generated by pppd. -This script makes use of the -.BR tail (1) -command, so arguments that can be passed to -.BR tail (1) -can also be passed to \fBplog\fP. -.PP -Note: the \fBplog\fP script can only be used by root or another system -administrator in group "adm", due to security reasons. Also, to have all -pppd-generated information in one logfile, that plog can show, you need the -following line in your \fI/etc/syslog.conf\fP file: -.PP -local2.* -/var/log/ppp.log -.RE -.SH FILES -.TP -.I /etc/ppp/options -PPPd system options file. -.TP -.I /etc/ppp/pap-secrets -System PAP passwords file. -.TP -.I /etc/ppp/chap-secrets -System CHAP passwords file. -.TP -.I /etc/ppp/peers/ -Directory holding the peer options files. The default file is called -\fIprovider\fP. -.TP -.I /etc/chatscripts/provider -The chat script invoked from the default \fI/etc/ppp/peers/provider\fP. -.TP -.I /var/log/ppp.log -The default PPP log file. -.SH AUTHORS -The p-commands were written by Christoph Lameter <clameter@debian.org>. -Updated and revised by Philip Hands <phil@hands.com>. -.br -This manual was written by Othmar Pasteka <othmar@tron.at>. Modified -by Rob Levin <lilo@openprojects.net>, with some extensions taken from -the old p-commands manual written by John Hasler <jhasler@debian.org>. -.SH "SEE ALSO" -.BR pppd (8), -.BR chat (8), -.BR tail (1). - diff --git a/abs/core/ppp/ppp b/abs/core/ppp/ppp deleted file mode 100644 index 16e01ba..0000000 --- a/abs/core/ppp/ppp +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -PID=`pidof -o %PPID /usr/sbin/pppd` -case "$1" in - start) - stat_busy "Starting PPP daemon" - [ -z "$PID" ] && /usr/bin/pon - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon ppp - stat_done - fi - ;; - stop) - stat_busy "Stopping PPP daemon" - [ ! -z "$PID" ] && poff -a &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon ppp - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/abs/core/ppp/ppp.systemd b/abs/core/ppp/ppp.systemd new file mode 100644 index 0000000..8a963af --- /dev/null +++ b/abs/core/ppp/ppp.systemd @@ -0,0 +1,9 @@ +[Unit] +Description=PPP link to %I +Before=network.target + +[Service] +ExecStart=/usr/sbin/pppd call %I nodetach nolog + +[Install] +WantedBy=multi-user.target |