You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

52 lines
769 B

#!/usr/bin/env bash
shopt -s nullglob
# Defaults for XDG
if ! [[ "$XDG_RUNTIME_DIR" ]]; then
XDG_RUNTIME_DIR="/run/user/$UID"
fi
# Defaults
cfg_workdir="$XDG_RUNTIME_DIR/ufwd"
cfg_scan_delay='30'
msg() { printf '%s\n' "$*"; }
err() { echo "$*" >&2; }
usage() { echo "No help available."; }
main() {
while (( $# )); do
case "$1" in
(--help|-h) usage; return 0;;
(--workdir|-d) cfg_workdir="$2"; shift;;
(--scan-delay|-D) cfg_scan_delay="$2"; shift;;
(--) shift; break;;
(-*)
err "Unknown key: $1"
usage
return 1
;;
(*) break;;
esac
shift
done
mkdir -p "$cfg_workdir" || {
return 1
}
cd "$cfg_workdir" || {
return 1
}
while sleep "$cfg_scan_delay"; do
for i in *; do
ufw -R "$i"
done
done
}
main "$@"