diff options
author | Ronan Pigott | 2023-03-22 18:41:05 -0700 |
---|---|---|
committer | Ronan Pigott | 2023-03-22 18:41:05 -0700 |
commit | e8ffccbdebaf72fdd7a0d87ccf5b1d322d287467 (patch) | |
tree | 70305f263e112ee7cd6bd6e72a0541f12f6296fd | |
download | aur-preserve-dscp-git.tar.gz |
initial commit
-rw-r--r-- | .SRCINFO | 18 | ||||
-rw-r--r-- | PKGBUILD | 32 | ||||
-rw-r--r-- | preserve-dscp@.service | 11 |
3 files changed, 61 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..c3d7780fb143 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,18 @@ +pkgbase = preserve-dscp-git + pkgdesc = Preserve DSCP marking outside of a wireguard tunnel + pkgver = 0.1 + pkgrel = 1 + url = https://github.com/xdp-project/bpf-examples + arch = x86_64 + license = GPL2 + makedepends = git + makedepends = clang + makedepends = llvm + makedepends = bpf + depends = libbpf + source = git+https://github.com/xdp-project/bpf-examples + source = preserve-dscp@.service + sha256sums = SKIP + sha256sums = 8070158ae5a3ad5e9e694954d03e0e15ceb33ded57e9a35a6f5070499ae5f101 + +pkgname = preserve-dscp-git diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..20d17713faeb --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,32 @@ +# Maintainer: Ronan Pigott <ronan@rjp.ie> + +pkgname=preserve-dscp-git +_pkgname=preserve-dscp +pkgver=0.1 +pkgrel=1 +pkgdesc='Preserve DSCP marking outside of a wireguard tunnel' +arch=('x86_64') +url='https://github.com/xdp-project/bpf-examples' +license=('GPL2') +makedepends=('git' 'clang' 'llvm' 'bpf' 'libmnl' 'lib32-glibc') +depends=('libbpf') +source=( + "git+https://github.com/xdp-project/bpf-examples" + "preserve-dscp@.service" +) +sha256sums=('SKIP' + '8070158ae5a3ad5e9e694954d03e0e15ceb33ded57e9a35a6f5070499ae5f101') + +build() { + cd bpf-examples + FORCE_SYSTEM_LIBBPF=1 ./configure --prefix=/usr + make preserve-dscp +} + +package() { + mkdir -p $pkgdir/opt/$_pkgname + install -Dm755 bpf-examples/preserve-dscp/preserve-dscp $pkgdir/opt/$_pkgname/ + install -Dm755 bpf-examples/preserve-dscp/preserve_dscp_kern.o $pkgdir/opt/$_pkgname/ + mkdir -p $pkgdir/usr/lib/systemd/system + install -Dm644 preserve-dscp@.service $pkgdir/usr/lib/systemd/system/ +} diff --git a/preserve-dscp@.service b/preserve-dscp@.service new file mode 100644 index 000000000000..604b706f56bd --- /dev/null +++ b/preserve-dscp@.service @@ -0,0 +1,11 @@ +[Unit] +Description=Preserve DSCP markings on wireguard packets outside some iface +Documentation=man:tc-cake(8) man:ip(7) + +[Service] +Type=oneshot +RemainAfterExit=yes +Environment=IFUPDOWN=%i +WorkingDirectory=/opt/preserve-dscp +ExecStart=/bin/bash -c "/opt/preserve-dscp/preserve-dscp ${IFUPDOWN/:/ }" +ExecStop=/bin/bash -c "/opt/preserve-dscp/preserve-dscp ${IFUPDOWN/:/ } --unload" |