diff options
author | Dirk Brenken <dev@brenken.org> | 2021-07-25 21:41:58 +0200 |
---|---|---|
committer | Dirk Brenken <dev@brenken.org> | 2021-07-25 21:50:27 +0200 |
commit | 380a5110b4d8df56c2a66c78657ee84bbcd611d3 (patch) | |
tree | bec1ba1ad7073b4a0ac7b550874e8d8f2795c61d /net/travelmate/files/julianahoeve.login | |
parent | f4afa4189e7ae35aa1ba1a6a60f5ed7dba877f6c (diff) |
travelmate: update to 2.0.4
* code cleanup
* add auto login script for Julianahoeve beach resort (NL)
* add auto login script for Vodafone hotspots (DE)
* add auto login script for telekom hotspots (DE)
* enhance captive portal detection to support html redirects as well
* change default captive portal detection url to
'detectportal.firefox.com'
Signed-off-by: Dirk Brenken <dev@brenken.org>
Diffstat (limited to 'net/travelmate/files/julianahoeve.login')
-rwxr-xr-x | net/travelmate/files/julianahoeve.login | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/net/travelmate/files/julianahoeve.login b/net/travelmate/files/julianahoeve.login new file mode 100755 index 000000000..f4927c336 --- /dev/null +++ b/net/travelmate/files/julianahoeve.login @@ -0,0 +1,46 @@ +#!/bin/sh +# captive portal auto-login script for Julianahoeve beach resort (NL) +# Copyright (c) 2021 Dirk Brenken (dev@brenken.org) +# This is free software, licensed under the GNU General Public License v3. + +# set (s)hellcheck exceptions +# shellcheck disable=1091,2039,2181,3040 + +export LC_ALL=C +export PATH="/usr/sbin:/usr/bin:/sbin:/bin" +set -o pipefail + +# source function library if necessary +# +if [ -z "${_C}" ]; then + . "/lib/functions.sh" +fi + +trm_domain="n23.network-auth.com" +trm_useragent="$(uci_get travelmate global trm_useragent "Mozilla/5.0 (Linux x86_64; rv:90.0) Gecko/20100101 Firefox/90.0")" +trm_captiveurl="$(uci_get travelmate global trm_captiveurl "http://detectportal.firefox.com")" +trm_maxwait="$(uci_get travelmate global trm_maxwait "30")" +trm_fetch="$(command -v curl)" + +# get redirect url +# +redirect_url="$(${trm_fetch} --user-agent "${trm_useragent}" --referer "http://www.example.com" --connect-timeout $((trm_maxwait / 6)) --write-out "%{redirect_url}" --silent --show-error --output /dev/null "${trm_captiveurl}")" +if [ -z "${redirect_url}" ]; then + exit 1 +fi + +# get session cookie +# +"${trm_fetch}" --user-agent "${trm_useragent}" --referer "http://${trm_domain}" --silent --connect-timeout $((trm_maxwait / 6)) --cookie-jar "/tmp/${trm_domain}.cookie" --output /dev/null "${redirect_url}" +session_id="$(awk '/p_splash_session/{print $7}' "/tmp/${trm_domain}.cookie" 2>/dev/null)" +rm -f "/tmp/${trm_domain}.cookie" +if [ -z "${session_id}" ]; then + exit 2 +fi + +# final login request +# +"${trm_fetch}" --user-agent "${trm_useragent}" --referer "${redirect_url}" --silent --connect-timeout $((trm_maxwait / 6)) --header "Cookie: p_splash_session=${session_id};" --output /dev/null "https://${trm_domain}/Camping-Julianah/hi/IHYW9cx/grant" +if [ "${?}" != "0" ]; then + exit 3 +fi |