[arch-commits] Commit in udp2raw-tunnel/repos (4 files)

Felix Yan felixonmars at archlinux.org
Sat Nov 10 09:17:05 UTC 2018


    Date: Saturday, November 10, 2018 @ 09:17:05
  Author: felixonmars
Revision: 405651

archrelease: copy trunk to community-x86_64

Added:
  udp2raw-tunnel/repos/community-x86_64/
  udp2raw-tunnel/repos/community-x86_64/PKGBUILD
    (from rev 405650, udp2raw-tunnel/trunk/PKGBUILD)
  udp2raw-tunnel/repos/community-x86_64/udp2raw at .service
    (from rev 405650, udp2raw-tunnel/trunk/udp2raw at .service)
  udp2raw-tunnel/repos/community-x86_64/udp2raw_script.sh
    (from rev 405650, udp2raw-tunnel/trunk/udp2raw_script.sh)

-------------------+
 PKGBUILD          |   32 ++++++++++++++++++++++++++++++++
 udp2raw at .service  |   18 ++++++++++++++++++
 udp2raw_script.sh |   17 +++++++++++++++++
 3 files changed, 67 insertions(+)

Copied: udp2raw-tunnel/repos/community-x86_64/PKGBUILD (from rev 405650, udp2raw-tunnel/trunk/PKGBUILD)
===================================================================
--- community-x86_64/PKGBUILD	                        (rev 0)
+++ community-x86_64/PKGBUILD	2018-11-10 09:17:05 UTC (rev 405651)
@@ -0,0 +1,32 @@
+# Maintainer: Felix Yan <felixonmars at archlinux.org>
+# Contributor: Peter Cai <peter at typeblog dot net>
+
+pkgname=udp2raw-tunnel
+pkgver=20180225.0
+pkgrel=2
+pkgdesc='An Encrypted, Anti-Replay, Multiplexed UdP Tunnel, tunnels udp traffic through fake-tcp or icmp by using raw socket'
+url='https://github.com/wangyu-/udp2raw-tunnel'
+arch=('x86_64' 'i686')
+depends=('iptables')
+license=('MIT')
+source=("$pkgname-$pkgver.tar.gz::https://github.com/wangyu-/udp2raw-tunnel/archive/$pkgver.tar.gz"
+        "udp2raw_script.sh"
+        "udp2raw at .service")
+sha512sums=('b76764b8105a64543e5c79629cfc66981783b6190e6ff1ae426add741f1442184d0988093e42da89b2ee9e77e8648cbd2a36c4b6bcb0dbb249763b5702996135'
+            'bd58325188f7a4d143d97ea6dfb0b8f2f86f6b82b8cb7496478fb3a9c425d42044db91bd7f554ed95443ce11bad288d48aad1f76404e3efec68ecbff8c56820f'
+            '8ae8ae36d20e40447e85b38fd437e7aee381ec35c78638f97e7418eb616e1aacbbd3eace1a5615314ffec05f290c1ebd4c2e30073ca6373d84f5ff2514f214da')
+
+build() {
+  cd $pkgname-$pkgver
+  make fast
+}
+
+package() {
+  cd $pkgname-$pkgver
+  install -Dm755 udp2raw "$pkgdir"/usr/bin/udp2raw
+  setcap cap_net_raw,cap_net_admin+ep "$pkgdir"/usr/bin/udp2raw
+  install -Dm644 example.conf "$pkgdir"/etc/udp2raw/example.conf
+  install -Dm755 "$srcdir"/udp2raw_script.sh "$pkgdir"/usr/lib/udp2raw/udp2raw_script.sh
+  install -Dm644 "$srcdir"/udp2raw at .service "$pkgdir"/usr/lib/systemd/system/udp2raw at .service
+  install -Dm644 LICENSE.md "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.md
+}

Copied: udp2raw-tunnel/repos/community-x86_64/udp2raw at .service (from rev 405650, udp2raw-tunnel/trunk/udp2raw at .service)
===================================================================
--- community-x86_64/udp2raw at .service	                        (rev 0)
+++ community-x86_64/udp2raw at .service	2018-11-10 09:17:05 UTC (rev 405651)
@@ -0,0 +1,18 @@
+[Unit]
+Description=UDP over TCP/ICMP/UDP tunnel
+After=network-online.service
+
+[Service]
+User=nobody
+Type=simple
+PermissionsStartOnly=true
+CapabilityBoundingSet=CAP_NET_RAW CAP_NET_ADMIN
+ExecStartPre=/usr/lib/udp2raw/udp2raw_script.sh /etc/udp2raw/%i.conf insert
+ExecStart=/usr/bin/udp2raw --conf-file /etc/udp2raw/%i.conf
+ExecStopPost=/usr/lib/udp2raw/udp2raw_script.sh /etc/udp2raw/%i.conf delete
+Restart=always
+RestartSec=30
+StartLimitBurst=10
+
+[Install]
+WantedBy=multi-user.target

Copied: udp2raw-tunnel/repos/community-x86_64/udp2raw_script.sh (from rev 405650, udp2raw-tunnel/trunk/udp2raw_script.sh)
===================================================================
--- community-x86_64/udp2raw_script.sh	                        (rev 0)
+++ community-x86_64/udp2raw_script.sh	2018-11-10 09:17:05 UTC (rev 405651)
@@ -0,0 +1,17 @@
+#!/bin/bash
+CONF_FILE="$1"
+TARGET="$2"
+RULE=`/sbin/su -s /bin/bash nobody -c "/usr/bin/udp2raw -g --conf-file $CONF_FILE"`
+
+if [[ "$RULE" =~ ^(.*?)iptables\ \-I\ (.*?)\ \-j\ DROP(.*?)$ ]]; then
+  RULE="${BASH_REMATCH[2]}"
+else
+  echo "Malformed output"
+  exit 1
+fi
+
+if [[ "$TARGET" == 'insert' ]]; then
+  /usr/bin/iptables -I $RULE -j DROP || exit 1
+elif [[ "$TARGET" == 'delete' ]]; then
+  /usr/bin/iptables -D $RULE -j DROP || exit 1
+fi



More information about the arch-commits mailing list