Monorepo for Tangled
tangled.org
1#!/bin/sh
2set -eu
3
4pid_file="$1"; shift
5ip="$1"; shift
6mount="$1"; shift
7resolv_conf="$1"; shift
8
9printf '%s\n' "$$" > "$pid_file"
10
11while ! "$ip" link show {{.TapName}} >/dev/null 2>&1; do
12 sleep 0.02
13done
14
15"$mount" --bind "$resolv_conf" /etc/resolv.conf
16
17# fail if we can't add a route, ipv6 is skipped if not enabled on host
18for route in{{range .BlockedRoutes}} {{.}}{{end}}; do
19 case "$route" in
20 *:*) [ -d /proc/sys/net/ipv6 ] || continue ;;
21 esac
22 "$ip" route add blackhole "$route"
23done
24
25exec "$@"