HEX
Server: nginx/1.26.1
System: Linux main-vm 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64
User: root (0)
PHP: 8.2.19
Disabled: NONE
Upload Files
File: //snap/core20/2669/etc/wpa_supplicant/action_wpa.sh
#!/bin/sh

# Action script to enable/disable wpa-roam interfaces in reaction to
# ifplugd events.
#
# Copyright: Copyright (c) 2008-2010, Kel Modderman <[email protected]>
# License:   GPL-2
#

PATH=/sbin:/usr/sbin:/bin:/usr/bin

if [ ! -x /sbin/wpa_action ]; then
	exit 0
fi

# ifplugd(8) - <iface> <action>
#
# If an ifplugd managed interface is brought up, disconnect any
# wpa-roam managed interfaces so that only one "roaming" interface
# remains active on the system.

IFPLUGD_IFACE="${1}"

case "${2}" in
	up)
		COMMAND=disconnect
		;;
	down)
		COMMAND=reconnect
		;;
	*)
		echo "$0: unknown arguments: ${@}" >&2
		exit 1
		;;
esac

for CTRL in /run/wpa_supplicant/*; do
	[ -S "${CTRL}" ] || continue

	IFACE="${CTRL#/run/wpa_supplicant/}"

	# skip if ifplugd is managing this interface
	if [ "${IFPLUGD_IFACE}" = "${IFACE}" ]; then
		continue
	fi

	if wpa_action "${IFACE}" check; then
		wpa_cli -i "${IFACE}" "${COMMAND}"
	fi
done