#!/bin/sh # Logs in automatically to the "WiFi in de trein" public hotspots, located in # trains in the Netherlands. # Requires: curl, sed set -e tmp="$(mktemp -d -p '' 'hslogin.XXXXXXXXXX')" trap "rm -r '$tmp'" EXIT curl="curl --dns-servers 8.8.8.8,8.8.4.4 -s -v -m 30" $curl -c "$tmp/cookies" 'http://portal.nstrein.ns.nl/' > "$tmp/page" token="$(sed -n -e 's/.* id="csrfToken" value="\([^"]*\)" .*/\1/p' "$tmp/page")" test -n "$token" $curl -b "$tmp/cookies" -X POST -H 'Content-Length: 0' -H 'Origin: http://portal.nstrein.ns.nl' -H 'Referer: http://portal.nstrein.ns.nl/' -H 'X-Requested-With: XMLHttpRequest' -H 'Connection: close' "http://portal.nstrein.ns.nl/nstrein:main/internet?csrfToken=$token" > /dev/null