1) Bueno, puede comparar el SSID actual con una lista de todas las redes Wi-Fi conocidas con bastante facilidad:
#!/bin/sh
# This may be 'en1' on computers with a built-in Ethernet port
WIFI_PORT='en0'
SSID=$(/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I | awk -F': ' '/ SSID/{print $NF}')
KNOWN=$(networksetup -listpreferredwirelessnetworks "${WIFI_PORT}" | egrep -v '^Preferred networks on' | sed 's#^ ##g')
echo "$KNOWN" | egrep -q "^${SSID}$"
EXIT="$?"
if [[ "$EXIT" != "0" ]]
then
echo "$NAME: Unknown network!"
exit 1
fi
# EOF
Puedes hacer lo que quieras en lugar de exit 1
para bloquear la computadora.
Puede activarlo utilizando SleepWatcher desde enlace .
El problema es: entonces, ¿qué hace cuando está en una nueva red Wi-Fi amigable que desea agregar a su lista de redes conocidas?
2) También hay un Sidekick que podría ayudar. Consulte enlace para obtener más información.