diff options
-rw-r--r-- | .SRCINFO | 43 | ||||
-rw-r--r-- | PKGBUILD | 92 | ||||
-rw-r--r-- | accel-ppp-default | 4 | ||||
-rw-r--r-- | accel-ppp.install | 22 | ||||
-rw-r--r-- | accel-ppp.logrotate | 7 | ||||
-rw-r--r-- | accel-ppp.lua | 31 | ||||
-rw-r--r-- | accel-ppp.tmpfiles | 2 | ||||
-rw-r--r-- | accel-pppd.service | 14 | ||||
-rw-r--r-- | dictionary.accel_ipoe | 6 | ||||
-rw-r--r-- | dictionary.ppp | 13 |
10 files changed, 234 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..58170bade438 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,43 @@ +pkgbase = accel-ppp-git + pkgdesc = High performance PPTP/L2TP/PPPoE/IPoE server + pkgver = r1179.b8b91d8 + pkgrel = 1 + url = http://sourceforge.net/apps/trac/accel-ppp/ + install = accel-ppp.install + arch = i686 + arch = x86_64 + license = GPL + makedepends = git + makedepends = cmake>=2.6 + makedepends = libnl1 + makedepends = net-snmp>=5.x + makedepends = lua51 + depends = openssl>=1.0.0 + depends = pcre>=8.30 + depends = libnl + optdepends = accel-ppp-ipoe-module-git + optdepends = logrotate + conflicts = accel-ppp + options = docs + backup = etc/accel-ppp.conf + backup = etc/accel-ppp.lua + backup = etc/snmp/accel-ppp.conf + source = accel-ppp::git+git://git.code.sf.net/p/accel-ppp/code + source = accel-ppp-default + source = accel-ppp.logrotate + source = accel-ppp.lua + source = accel-ppp.tmpfiles + source = accel-pppd.service + source = dictionary.accel_ipoe + source = dictionary.ppp + md5sums = SKIP + md5sums = bb3e20c8808000f4efe52230c13a13f3 + md5sums = 0536dd60960e76cf5a6cdbf0518782d8 + md5sums = 816dd5ea9534a077dfd63b6cd529738a + md5sums = 5be7d42b434b74d7e692b19a9e3c4297 + md5sums = e5dec17bd405052fc647a805db5dd449 + md5sums = 7b94e1ab23db6c849dac3cb86246007d + md5sums = 4e0d4fc5975ea8794ea286e8fbfa56cd + +pkgname = accel-ppp-git + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..621ef16a53b7 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,92 @@ +# Maintainer: Alexandr Boiko <brdcom@ya.ru> +pkgname=accel-ppp-git +pkgver=r1179.b8b91d8 +pkgrel=1 +pkgdesc="High performance PPTP/L2TP/PPPoE/IPoE server" +arch=('i686' 'x86_64') +url="http://sourceforge.net/apps/trac/accel-ppp/" +license=('GPL') +depends=('openssl>=1.0.0' 'pcre>=8.30' 'libnl') +makedepends=('git' 'cmake>=2.6' 'libnl1' 'net-snmp>=5.x' 'lua51') +optdepends=('accel-ppp-ipoe-module-git' 'logrotate') +conflicts=('accel-ppp') +install='accel-ppp.install' +options=('docs') +backup=('etc/accel-ppp.conf' 'etc/accel-ppp.lua' 'etc/snmp/accel-ppp.conf') +source=('accel-ppp::git+git://git.code.sf.net/p/accel-ppp/code' + 'accel-ppp-default' + 'accel-ppp.logrotate' + 'accel-ppp.lua' + 'accel-ppp.tmpfiles' + 'accel-pppd.service' + 'dictionary.accel_ipoe' + 'dictionary.ppp') + +md5sums=('SKIP' + 'bb3e20c8808000f4efe52230c13a13f3' + '0536dd60960e76cf5a6cdbf0518782d8' + '816dd5ea9534a077dfd63b6cd529738a' + '5be7d42b434b74d7e692b19a9e3c4297' + 'e5dec17bd405052fc647a805db5dd449' + '7b94e1ab23db6c849dac3cb86246007d' + '4e0d4fc5975ea8794ea286e8fbfa56cd') + +_pkgname=accel-ppp + +pkgver() { + cd "$srcdir/${pkgname%-git}" + printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" +} + +prepare() { + cd "$srcdir/${pkgname%-git}" + + sed -i 's|RUNTIME DESTINATION sbin|RUNTIME DESTINATION bin|' \ + "accel-pppd/CMakeLists.txt" + + if [ -d "build" ]; then + rm -fr "build" + mkdir "build" + else + mkdir "build" + fi +} + +build() { + cd "$srcdir/${pkgname%-git}/build/" + cmake \ + -DCMAKE_SYSTEM_NAME=Linux \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Debug \ + -DLOG_FILE=TRUE \ + -DLOG_PGSQL=FALSE \ + -DSHAPER=TRUE \ + -DRADIUS=TRUE \ + -DNETSNMP=TRUE \ + -DLUA=TRUE \ + -DLUA_INCLUDE_DIR="/usr/include/lua5.1" \ + "$srcdir/${pkgname%-git}" + make || return 1 +} +package() { + cd "$srcdir/${pkgname%-git}/build/" + make DESTDIR="$pkgdir/" install || return 1 + + [ -d "$pkgdir/usr/lib64" ] && mv "$pkgdir/usr/lib64" "$pkgdir/usr/lib" + install -dm0755 "$pkgdir/etc/logrotate.d" + install -dm0755 "$pkgdir/etc/snmp" + install -dm0755 "$pkgdir/var/lib/accel-ppp" + touch "$pkgdir/etc/snmp/$_pkgname.conf" + install -Dm0644 "$srcdir/$_pkgname-default" "$pkgdir/etc/conf.d/accel-pppd" + install -Dm0644 "$srcdir/$_pkgname/README" "$pkgdir/usr/share/doc/$_pkgname/README" + install -Dm0644 "$srcdir/accel-pppd.service" "$pkgdir/usr/lib/systemd/system/accel-pppd.service" + install -Dm0644 "$srcdir/$_pkgname.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/$_pkgname.conf" + install -Dm0644 "$srcdir/$_pkgname.lua" "$pkgdir/etc/$_pkgname.lua" + install -Dm0644 "$srcdir/$_pkgname.logrotate" "$pkgdir/etc/logrotate.d/$_pkgname" + install -Dm0644 "$srcdir/dictionary.accel_ipoe" "$pkgdir/usr/share/accel-ppp/radius/dictionary.accel_ipoe" + install -Dm0644 "$srcdir/dictionary.ppp" "$pkgdir/usr/share/accel-ppp/radius/dictionary.ppp" + install -Dm0644 "$pkgdir/etc/$_pkgname.conf.dist" "$pkgdir/etc/$_pkgname.conf" + install -Dm0644 "$srcdir/$_pkgname/accel-pppd/extra/net-snmp/ACCEL-PPP-MIB.txt" "$pkgdir/usr/share/snmp/mibs/ACCEL-PPP-MIB.txt" + install -Dm0644 "$srcdir/$_pkgname/COPYING" "$pkgdir/usr/share/licenses/$_pkgname/LICENSE" +} + diff --git a/accel-ppp-default b/accel-ppp-default new file mode 100644 index 000000000000..01ce1571b4ce --- /dev/null +++ b/accel-ppp-default @@ -0,0 +1,4 @@ +# Any extra options you want to pass to aceel-pppd +# on start-up should be put here. +ARGS="-c /etc/accel-ppp.conf" +PIDFILE="/run/accel-pppd.pid" diff --git a/accel-ppp.install b/accel-ppp.install new file mode 100644 index 000000000000..2a4cfdd03479 --- /dev/null +++ b/accel-ppp.install @@ -0,0 +1,22 @@ +# vim:set ts=2 sw=2 et: + +# Colors +note() { + printf "${BLUE}==>${ALL_OFF}${BOLD} NOTE:${ALL_OFF} ${1}\n" +} + +ALL_OFF="$(tput sgr0)" +BOLD="$(tput bold)" +BLUE="${BOLD}$(tput setaf 4)" +GREEN="${BOLD}$(tput setaf 2)" + +post_install() { + echo + note "For more information, see the /usr/share/doc/accel-ppp/README"; +} + +post_upgrade() { + echo + note "For more information, see the /usr/share/doc/accel-ppp/README" +} + diff --git a/accel-ppp.logrotate b/accel-ppp.logrotate new file mode 100644 index 000000000000..3c4e32b8f12f --- /dev/null +++ b/accel-ppp.logrotate @@ -0,0 +1,7 @@ +/var/log/accel-ppp/*.log { + missingok + sharedscripts + postrotate + test -r /run/accel-pppd.pid && kill -HUP `cat /run/accel-pppd.pid` + endscript +} diff --git a/accel-ppp.lua b/accel-ppp.lua new file mode 100644 index 000000000000..959ea74150d2 --- /dev/null +++ b/accel-ppp.lua @@ -0,0 +1,31 @@ +function opt82_dlink(pkt) + v,b1,b2,b3,b4=string.unpack(pkt:agent_remote_id():sub(-4),'bbbb') + ip=b1..'.'..b2..'.'..b3..'.'..b4 + v,port=string.unpack(string.sub(pkt:agent_circuit_id(),'-1'),'b') + local opt82=ip..'-'..port +-- print(opt82) + return opt82 +end +function example(ses) +-- print('xid='..ses:hdr('xid')) +-- print('ciaddr='..ses:hdr('ciaddr')) +-- print('giaddr='..ses:hdr('giaddr')) +-- print('chaddr='..ses:hdr('chaddr')) +-- print('ifname='..ses:ifname()) +-- options=ses:options() +-- for k,opt in ipairs(options) do print(opt) end + return '1234' +end +function ifname(pkt) + local ifname=pkt:ifname() + return ifname +end +function mac(pkt) + local mac=pkt:hdr("chaddr") + return mac +end +function username(pkt) + local username = string.sub(pkt:ifname(), string.find(pkt:ifname(), ".", 1, true)+1, 32) + return username +end + diff --git a/accel-ppp.tmpfiles b/accel-ppp.tmpfiles new file mode 100644 index 000000000000..720d87e0b4f8 --- /dev/null +++ b/accel-ppp.tmpfiles @@ -0,0 +1,2 @@ +d /run/accel-ppp 0755 root root - +d /var/log/accel-ppp 0755 root root - diff --git a/accel-pppd.service b/accel-pppd.service new file mode 100644 index 000000000000..bce17574b79a --- /dev/null +++ b/accel-pppd.service @@ -0,0 +1,14 @@ +[Unit] +Description=Accel-PPPD Daemon +Conflicts=pptpd.service +After=network.target + +[Service] +EnvironmentFile=/etc/conf.d/accel-pppd +ExecStart=/usr/bin/accel-pppd -d -p $PIDFILE $ARGS +ExecReload=/usr/bin/kill -SIGUSR1 $MAINPID +PIDFile=/run/accel-pppd.pid +Type=forking + +[Install] +WantedBy=multi-user.target diff --git a/dictionary.accel_ipoe b/dictionary.accel_ipoe new file mode 100644 index 000000000000..8981eb4b2967 --- /dev/null +++ b/dictionary.accel_ipoe @@ -0,0 +1,6 @@ +ATTRIBUTE DHCP-Client-IP-Address 240 ipaddr +ATTRIBUTE DHCP-Router-IP-Address 241 ipaddr +ATTRIBUTE DHCP-Mask 242 ipaddr +ATTRIBUTE DHCP-Lease-Time 242 integer +ATTRIBUTE L4-Redirect 242 integer + diff --git a/dictionary.ppp b/dictionary.ppp new file mode 100644 index 000000000000..d1dea6a0d14f --- /dev/null +++ b/dictionary.ppp @@ -0,0 +1,13 @@ +# Limit session traffic +ATTRIBUTE Session-Octets-Limit 227 integer +# What to assume as limit - 0 in+out, 1 in, 2 out, 3 max(in,out) +ATTRIBUTE Octets-Direction 228 integer +# Connection Speed Limit +ATTRIBUTE PPPD-Upstream-Speed-Limit 230 integer +ATTRIBUTE PPPD-Downstream-Speed-Limit 231 integer +ATTRIBUTE PPPD-Upstream-Speed-Limit-1 232 integer +ATTRIBUTE PPPD-Downstream-Speed-Limit-1 233 integer +ATTRIBUTE PPPD-Upstream-Speed-Limit-2 234 integer +ATTRIBUTE PPPD-Downstream-Speed-Limit-2 235 integer +ATTRIBUTE PPPD-Upstream-Speed-Limit-3 236 integer +ATTRIBUTE PPPD-Downstream-Speed-Limit-3 237 integer |