macOS update was done, so macbook rebooted
After reboot, July 1st at 08:45, a relogin was triggered and browser opened.
I ignored the relogin and cancelled it, because the day before I already did relogin and session is valid for 6 days.
After cancelling I can succesfully connect by using the "connect" toggle. The question is, why did the app think the token was invalid? Why could I connect after cancelling the login?
common log
time=2026年06月30日T16:11:02.518+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=Main
time=2026年06月30日T16:11:02.519+02:00 level=DEBUG msg="error returned to client" error="Failed to obtain a VPN configuration for the server. The cause of the error is: Timeout reached contacting URL: 'https://surf.eduvpn.nl/portal/api/v3/info'."
time=2026年06月30日T16:11:19.927+02:00 level=DEBUG msg="client wants to get a VPN config" server_id=https://surf.eduvpn.nl/ server_type=1 prefer_tcp=false startup=false
time=2026年06月30日T16:11:19.927+02:00 level=DEBUG msg="FSM transition" old=Main new=GettingConfig
time=2026年06月30日T16:11:19.941+02:00 level=DEBUG msg="sending request" method=GET url=https://surf.eduvpn.nl/portal/api/v3/info
time=2026年06月30日T16:11:20.137+02:00 level=DEBUG msg="sending request" method=POST url=https://surf.eduvpn.nl/portal/api/v3/connect
time=2026年06月30日T16:11:20.186+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年06月30日T16:11:21.455+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=GettingConfig
time=2026年06月30日T16:11:21.455+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年06月30日T16:11:33.669+02:00 level=DEBUG msg="client wants to cleanup VPN connection"
time=2026年06月30日T16:11:33.681+02:00 level=DEBUG msg="sending request" method=POST url=https://surf.eduvpn.nl/portal/api/v3/disconnect
time=2026年06月30日T16:11:33.767+02:00 level=DEBUG msg="Client sets profile ID" id=ts
time=2026年06月30日T16:11:33.774+02:00 level=DEBUG msg="client wants to get a VPN config" server_id=https://surf.eduvpn.nl/ server_type=1 prefer_tcp=false startup=false
time=2026年06月30日T16:11:33.774+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=GettingConfig
time=2026年06月30日T16:11:33.780+02:00 level=DEBUG msg="sending request" method=GET url=https://surf.eduvpn.nl/portal/api/v3/info
time=2026年06月30日T16:11:33.877+02:00 level=DEBUG msg="sending request" method=POST url=https://surf.eduvpn.nl/portal/api/v3/connect
time=2026年06月30日T16:11:33.909+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年06月30日T16:11:34.359+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=GettingConfig
time=2026年06月30日T16:11:34.359+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年06月30日T16:11:34.361+02:00 level=DEBUG msg="client wants to start the failover test" gateway=145.90.230.97 mtu=1392
time=2026年06月30日T16:11:34.363+02:00 level=DEBUG msg="Failover doing alive check"
time=2026年06月30日T16:11:34.419+02:00 level=DEBUG msg="Failover got early pong, exiting..."
time=2026年07月01日T08:36:15.671+02:00 level=DEBUG msg="client wants to cleanup VPN connection"
time=2026年07月01日T08:36:15.706+02:00 level=DEBUG msg="OAuth log" log="Access token is expired"
time=2026年07月01日T08:36:15.707+02:00 level=DEBUG msg="sending request" method=GET url=https://surf.eduvpn.nl/.well-known/vpn-user-portal
time=2026年07月01日T08:36:15.814+02:00 level=DEBUG msg="OAuth log" log="getting tokens with the refresh token at URL: https://surf.eduvpn.nl/portal/oauth/token"
time=2026年07月01日T08:36:15.924+02:00 level=DEBUG msg="sending request" method=POST url=https://surf.eduvpn.nl/portal/api/v3/disconnect
time=2026年07月01日T08:36:16.010+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=Deregistered
time=2026年07月01日T08:44:55.734+02:00 level=DEBUG msg="Client registered" name=org.eduvpn.app.macos version=4.1.3 directory="/Users/rogier/Library/Containers/org.eduvpn.app/Data/Library/Application Support/org.eduvpn.app/eduvpn_common"
time=2026年07月01日T08:44:57.103+02:00 level=DEBUG msg="FSM transition" old=Main new=GettingConfig
time=2026年07月01日T08:44:57.103+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年07月01日T08:44:57.157+02:00 level=DEBUG msg="client wants to get a VPN config" server_id=https://surf.eduvpn.nl/ server_type=1 prefer_tcp=false startup=false
time=2026年07月01日T08:44:57.157+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=GettingConfig
time=2026年07月01日T08:45:01.628+02:00 level=WARN msg="cgo empty string returned in token getter"
time=2026年07月01日T08:45:01.628+02:00 level=DEBUG msg="no tokens found for server" server=https://surf.eduvpn.nl/ error="client returned nil tokens"
time=2026年07月01日T08:45:01.689+02:00 level=DEBUG msg="sending request" method=GET url=https://disco.eduvpn.org/v2/server_list.json
time=2026年07月01日T08:45:02.046+02:00 level=DEBUG msg="got HTTP 304 for discovery, server_list.json is not modified"
time=2026年07月01日T08:45:02.120+02:00 level=DEBUG msg="sending request" method=GET url=https://surf.eduvpn.nl/.well-known/vpn-user-portal
time=2026年07月01日T08:45:02.179+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=OAuthStarted
time=2026年07月01日T08:46:45.797+02:00 level=DEBUG msg="FSM transition" old=OAuthStarted new=GotConfig
time=2026年07月01日T08:46:45.798+02:00 level=DEBUG msg="error returned to client" error="Failed to connect to server. The cause of the error is: context canceled."
time=2026年07月01日T08:46:47.651+02:00 level=DEBUG msg="client wants to get a VPN config" server_id=https://surf.eduvpn.nl/ server_type=1 prefer_tcp=false startup=false
time=2026年07月01日T08:46:47.651+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=GettingConfig
time=2026年07月01日T08:46:47.679+02:00 level=DEBUG msg="sending request" method=GET url=https://surf.eduvpn.nl/portal/api/v3/info
time=2026年07月01日T08:46:47.715+02:00 level=DEBUG msg="sending request" method=POST url=https://surf.eduvpn.nl/portal/api/v3/connect
time=2026年07月01日T08:46:47.776+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年07月01日T08:46:48.575+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=GettingConfig
time=2026年07月01日T08:46:48.575+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年07月01日T08:46:48.575+02:00 level=DEBUG msg="client wants to start the failover test" gateway=145.90.230.97 mtu=1392
time=2026年07月01日T08:46:48.576+02:00 level=DEBUG msg="Failover doing alive check"
time=2026年07月01日T08:46:48.891+02:00 level=DEBUG msg="Failover got early pong, exiting..."
application log
2026年06月30日 16:11:02.521 Error: ServerDetailViewModel: proceedToConnect(shouldPreferTCP:): Error: Failed to obtain a VPN configuration for the server. The cause of the error is: Timeout reached contacting URL: 'https://surf.eduvpn.nl/portal/api/v3/info'. (Source: Common Lib)
2026年06月30日 16:11:19.927 proceedToConnect(shouldPreferTCP:): shouldPreferTCP = false, state = notConnected
2026年06月30日 16:11:19.927 State changed to Contacting the server... (from Not connected)
2026年06月30日 16:11:20.188 State changed to Configuring... (from Contacting the server...)
2026年06月30日 16:11:20.189 proceedToConnect(shouldPreferTCP:): Got openVPN VPN config with shouldFailover = true
2026年06月30日 16:11:20.239 Connection status: connecting
2026年06月30日 16:11:20.239 State changed to Connecting... (from Configuring...)
2026年06月30日 16:11:20.239 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.239 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.239 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:21.443 Connection status: connected
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.454 updateControlsWithCurrentServer()
2026年06月30日 16:11:21.455 Session expires at: 2026年07月06日 07:15:25 +0000
2026年06月30日 16:11:21.455 Button to be shown at: 2026年07月05日 07:15:25 +0000
2026年06月30日 16:11:21.455 Session-valid-till to be shown at: 2026年07月05日 07:15:25 +0000
2026年06月30日 16:11:21.455 NotificationManager.removeAllDisplayedNotifications()
2026年06月30日 16:11:21.496 NotificationManager.attemptSchedulingSessionExpiryNotifications()
2026年06月30日 16:11:21.496 shouldNotifySavedValue = true
2026年06月30日 16:11:21.496 shouldNotifyToggleValue = true
2026年06月30日 16:11:21.496 hasAskedUserOnNotifyBeforeSessionExpiry = true
2026年06月30日 16:11:21.496 NotificationManager.scheduleSessionExpiryNotifications()
2026年06月30日 16:11:21.496 NotificationManager.requestAuthorization()
2026年06月30日 16:11:21.516 Notifications authorized
2026年06月30日 16:11:21.516 NotificationManager.scheduleSessionExpiryNotifications(): isAuthorized = true
2026年06月30日 16:11:21.517 Scheduling 4 notifications
2026年06月30日 16:11:33.217 ServerDetailViewModel.handleProfileSelectionChange(profileId: 'ts')
2026年06月30日 16:11:33.217 ServerDetailViewModel: cancelConnection(forRenewal:nextLaunchBehaviour:)
2026年06月30日 16:11:33.226 Connection status: diconnecting
2026年06月30日 16:11:33.226 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.226 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.613 Connection status: disconnected
2026年06月30日 16:11:33.613 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.615 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.615 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.669 NotificationManager.descheduleSessionExpiryNotifications()
2026年06月30日 16:11:33.774 proceedToConnect(shouldPreferTCP:): shouldPreferTCP = false, state = notConnected
2026年06月30日 16:11:33.774 State changed to Contacting the server... (from Not connected)
2026年06月30日 16:11:33.910 State changed to Configuring... (from Contacting the server...)
2026年06月30日 16:11:33.910 proceedToConnect(shouldPreferTCP:): Got wireguard VPN config with shouldFailover = true
2026年06月30日 16:11:33.943 Connection status: connecting
2026年06月30日 16:11:33.943 State changed to Connecting... (from Configuring...)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:34.358 Connection status: connected
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 updateControlsWithCurrentServer()
2026年06月30日 16:11:34.359 Session expires at: 2026年07月06日 07:15:25 +0000
2026年06月30日 16:11:34.359 Button to be shown at: 2026年07月05日 07:15:25 +0000
2026年06月30日 16:11:34.359 Session-valid-till to be shown at: 2026年07月05日 07:15:25 +0000
2026年06月30日 16:11:34.360 NotificationManager.removeAllDisplayedNotifications()
2026年06月30日 16:11:34.360 ServerDetailViewModel: performFailover(wgQuickConfig:)
2026年06月30日 16:11:34.360 State changed to Testing connection... (from Connecting...)
2026年06月30日 16:11:34.360 ServerDetailViewModel: performFailover(wgQuickConfig:): Performing connection test
2026年06月30日 16:11:34.389 NotificationManager.attemptSchedulingSessionExpiryNotifications()
2026年06月30日 16:11:34.389 shouldNotifySavedValue = true
2026年06月30日 16:11:34.389 shouldNotifyToggleValue = true
2026年06月30日 16:11:34.389 hasAskedUserOnNotifyBeforeSessionExpiry = true
2026年06月30日 16:11:34.389 NotificationManager.scheduleSessionExpiryNotifications()
2026年06月30日 16:11:34.389 NotificationManager.requestAuthorization()
2026年06月30日 16:11:34.413 Notifications authorized
2026年06月30日 16:11:34.413 NotificationManager.scheduleSessionExpiryNotifications(): isAuthorized = true
2026年06月30日 16:11:34.413 Scheduling 4 notifications
2026年06月30日 16:11:34.429 doWeHaveConnectivityOverVPN(interfaceAddresses:mtu:readRxBytes:) shouldFailover = false. Returning true
2026年06月30日 16:11:34.429 ServerDetailViewModel: performFailover(wgQuickConfig:): Connection test passed
2026年06月30日 16:11:34.429 State changed to Connected (from Testing connection...)
2026年07月01日 08:36:15.186 applicationShouldTerminate
2026年07月01日 08:36:15.186 applicationShouldTerminate: Invoking silentlyStopVPNAndQuit
2026年07月01日 08:36:15.186 ServerDetailViewModel: cancelConnection(forRenewal:nextLaunchBehaviour:)
2026年07月01日 08:36:15.192 Connection status: diconnecting
2026年07月01日 08:36:15.192 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.604 Connection status: disconnected
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.664 NotificationManager.descheduleSessionExpiryNotifications()
2026年07月01日 08:36:16.001 applicationWillTerminate
--- EOF ---
2026年07月01日 08:44:55.593 App version: 4.1.3 (2456)
2026年07月01日 08:44:55.594 MainViewModel.init
2026年07月01日 08:44:55.595 UpdatesManager.init()
2026年07月01日 08:44:55.595 NotificationManager.init:
2026年07月01日 08:44:55.595 shouldNotifySavedValue = true
2026年07月01日 08:44:55.595 hasAskedUserOnNotifyBeforeSessionExpiry = true
2026年07月01日 08:44:55.597 NotificationManager.requestAuthorization()
2026年07月01日 08:44:55.748 Notifications authorized
2026年07月01日 08:44:57.103 initializeTunnelManager: tunnelManager has saved server info
2026年07月01日 08:44:57.103 initializeTunnelManager: Have eduvpn-common-stored current server: (instituteAccess, https://surf.eduvpn.nl/)
2026年07月01日 08:44:57.103 initializeTunnelManager: tunnelManagerServerInfo: (instituteAccess, https://surf.eduvpn.nl/)
2026年07月01日 08:44:57.103 Same server
2026年07月01日 08:44:57.103 ServerDetailViewModel.init: Server: https://surf.eduvpn.nl/, Connection status: Disconnected
2026年07月01日 08:44:57.103 updateControlsWithCurrentServer()
2026年07月01日 08:44:57.104 Session expires at: 2026年07月06日 07:15:25 +0000
2026年07月01日 08:44:57.104 Button to be shown at: 2026年07月05日 07:15:25 +0000
2026年07月01日 08:44:57.104 Session-valid-till to be shown at: 2026年07月05日 07:15:25 +0000
2026年07月01日 08:44:57.104 NotificationManager.removeAllDisplayedNotifications()
2026年07月01日 08:44:57.120 Tunnel has autoConnect = true
2026年07月01日 08:44:57.120 Auto-connecting to server
2026年07月01日 08:44:57.120 proceedToConnect(shouldPreferTCP:): shouldPreferTCP = false, state = notStarted
2026年07月01日 08:44:57.120 State changed to Contacting the server... (from Not connected)
2026年07月01日 08:44:57.252 NotificationManager.attemptSchedulingSessionExpiryNotifications()
2026年07月01日 08:44:57.252 shouldNotifySavedValue = true
2026年07月01日 08:44:57.252 shouldNotifyToggleValue = true
2026年07月01日 08:44:57.252 hasAskedUserOnNotifyBeforeSessionExpiry = true
2026年07月01日 08:44:57.252 NotificationManager.scheduleSessionExpiryNotifications()
2026年07月01日 08:44:57.252 NotificationManager.requestAuthorization()
2026年07月01日 08:44:57.273 Notifications authorized
2026年07月01日 08:44:57.273 NotificationManager.scheduleSessionExpiryNotifications(): isAuthorized = true
2026年07月01日 08:44:57.273 Scheduling 4 notifications
2026年07月01日 08:46:45.771 Error: openOAuthURL(_:): While authenticating: Error Domain=com.apple.AuthenticationServices.WebAuthenticationSession Code=1 "(null)"
2026年07月01日 08:46:45.802 State changed to Not connected (from Contacting the server...)
2026年07月01日 08:46:45.802 Error: ServerDetailViewModel: proceedToConnect(shouldPreferTCP:): (not shown to the user) Error: Failed to connect to server. The cause of the error is: context canceled. (Source: Common Lib)
2026年07月01日 08:46:47.651 proceedToConnect(shouldPreferTCP:): shouldPreferTCP = false, state = notConnected
2026年07月01日 08:46:47.652 State changed to Contacting the server... (from Not connected)
2026年07月01日 08:46:47.777 State changed to Configuring... (from Contacting the server...)
2026年07月01日 08:46:47.777 proceedToConnect(shouldPreferTCP:): Got wireguard VPN config with shouldFailover = true
2026年07月01日 08:46:47.805 Connection status: connecting
2026年07月01日 08:46:47.805 State changed to Connecting... (from Configuring...)
2026年07月01日 08:46:48.574 Connection status: connected
2026年07月01日 08:46:48.574 updateControlsWithCurrentServer()
2026年07月01日 08:46:48.575 Session expires at: 2026年07月06日 07:15:25 +0000
2026年07月01日 08:46:48.575 Button to be shown at: 2026年07月05日 07:15:25 +0000
2026年07月01日 08:46:48.575 Session-valid-till to be shown at: 2026年07月05日 07:15:25 +0000
2026年07月01日 08:46:48.575 NotificationManager.removeAllDisplayedNotifications()
2026年07月01日 08:46:48.575 ServerDetailViewModel: performFailover(wgQuickConfig:)
2026年07月01日 08:46:48.575 State changed to Testing connection... (from Connecting...)
2026年07月01日 08:46:48.575 ServerDetailViewModel: performFailover(wgQuickConfig:): Performing connection test
2026年07月01日 08:46:48.594 NotificationManager.attemptSchedulingSessionExpiryNotifications()
2026年07月01日 08:46:48.594 shouldNotifySavedValue = true
2026年07月01日 08:46:48.595 shouldNotifyToggleValue = true
2026年07月01日 08:46:48.595 hasAskedUserOnNotifyBeforeSessionExpiry = true
2026年07月01日 08:46:48.595 NotificationManager.scheduleSessionExpiryNotifications()
2026年07月01日 08:46:48.595 NotificationManager.requestAuthorization()
2026年07月01日 08:46:48.604 Notifications authorized
2026年07月01日 08:46:48.605 NotificationManager.scheduleSessionExpiryNotifications(): isAuthorized = true
2026年07月01日 08:46:48.605 Scheduling 4 notifications
2026年07月01日 08:46:48.892 doWeHaveConnectivityOverVPN(interfaceAddresses:mtu:readRxBytes:) shouldFailover = false. Returning true
2026年07月01日 08:46:48.893 ServerDetailViewModel: performFailover(wgQuickConfig:): Connection test passed
2026年07月01日 08:46:48.893 State changed to Connected (from Testing connection...)
macOS update was done, so macbook rebooted
After reboot, July 1st at 08:45, a relogin was triggered and browser opened.
I ignored the relogin and cancelled it, because the day before I already did relogin and session is valid for 6 days.
After cancelling I can succesfully connect by using the "connect" toggle. The question is, why did the app think the token was invalid? Why could I connect after cancelling the login?
common log
~~~
time=2026年06月30日T16:11:02.518+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=Main
time=2026年06月30日T16:11:02.519+02:00 level=DEBUG msg="error returned to client" error="Failed to obtain a VPN configuration for the server. The cause of the error is: Timeout reached contacting URL: 'https://surf.eduvpn.nl/portal/api/v3/info'."
time=2026年06月30日T16:11:19.927+02:00 level=DEBUG msg="client wants to get a VPN config" server_id=https://surf.eduvpn.nl/ server_type=1 prefer_tcp=false startup=false
time=2026年06月30日T16:11:19.927+02:00 level=DEBUG msg="FSM transition" old=Main new=GettingConfig
time=2026年06月30日T16:11:19.941+02:00 level=DEBUG msg="sending request" method=GET url=https://surf.eduvpn.nl/portal/api/v3/info
time=2026年06月30日T16:11:20.137+02:00 level=DEBUG msg="sending request" method=POST url=https://surf.eduvpn.nl/portal/api/v3/connect
time=2026年06月30日T16:11:20.186+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年06月30日T16:11:21.455+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=GettingConfig
time=2026年06月30日T16:11:21.455+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年06月30日T16:11:33.669+02:00 level=DEBUG msg="client wants to cleanup VPN connection"
time=2026年06月30日T16:11:33.681+02:00 level=DEBUG msg="sending request" method=POST url=https://surf.eduvpn.nl/portal/api/v3/disconnect
time=2026年06月30日T16:11:33.767+02:00 level=DEBUG msg="Client sets profile ID" id=ts
time=2026年06月30日T16:11:33.774+02:00 level=DEBUG msg="client wants to get a VPN config" server_id=https://surf.eduvpn.nl/ server_type=1 prefer_tcp=false startup=false
time=2026年06月30日T16:11:33.774+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=GettingConfig
time=2026年06月30日T16:11:33.780+02:00 level=DEBUG msg="sending request" method=GET url=https://surf.eduvpn.nl/portal/api/v3/info
time=2026年06月30日T16:11:33.877+02:00 level=DEBUG msg="sending request" method=POST url=https://surf.eduvpn.nl/portal/api/v3/connect
time=2026年06月30日T16:11:33.909+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年06月30日T16:11:34.359+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=GettingConfig
time=2026年06月30日T16:11:34.359+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年06月30日T16:11:34.361+02:00 level=DEBUG msg="client wants to start the failover test" gateway=145.90.230.97 mtu=1392
time=2026年06月30日T16:11:34.363+02:00 level=DEBUG msg="Failover doing alive check"
time=2026年06月30日T16:11:34.419+02:00 level=DEBUG msg="Failover got early pong, exiting..."
time=2026年07月01日T08:36:15.671+02:00 level=DEBUG msg="client wants to cleanup VPN connection"
time=2026年07月01日T08:36:15.706+02:00 level=DEBUG msg="OAuth log" log="Access token is expired"
time=2026年07月01日T08:36:15.707+02:00 level=DEBUG msg="sending request" method=GET url=https://surf.eduvpn.nl/.well-known/vpn-user-portal
time=2026年07月01日T08:36:15.814+02:00 level=DEBUG msg="OAuth log" log="getting tokens with the refresh token at URL: https://surf.eduvpn.nl/portal/oauth/token"
time=2026年07月01日T08:36:15.924+02:00 level=DEBUG msg="sending request" method=POST url=https://surf.eduvpn.nl/portal/api/v3/disconnect
time=2026年07月01日T08:36:16.010+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=Deregistered
time=2026年07月01日T08:44:55.734+02:00 level=DEBUG msg="Client registered" name=org.eduvpn.app.macos version=4.1.3 directory="/Users/rogier/Library/Containers/org.eduvpn.app/Data/Library/Application Support/org.eduvpn.app/eduvpn_common"
time=2026年07月01日T08:44:57.103+02:00 level=DEBUG msg="FSM transition" old=Main new=GettingConfig
time=2026年07月01日T08:44:57.103+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年07月01日T08:44:57.157+02:00 level=DEBUG msg="client wants to get a VPN config" server_id=https://surf.eduvpn.nl/ server_type=1 prefer_tcp=false startup=false
time=2026年07月01日T08:44:57.157+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=GettingConfig
time=2026年07月01日T08:45:01.628+02:00 level=WARN msg="cgo empty string returned in token getter"
time=2026年07月01日T08:45:01.628+02:00 level=DEBUG msg="no tokens found for server" server=https://surf.eduvpn.nl/ error="client returned nil tokens"
time=2026年07月01日T08:45:01.689+02:00 level=DEBUG msg="sending request" method=GET url=https://disco.eduvpn.org/v2/server_list.json
time=2026年07月01日T08:45:02.046+02:00 level=DEBUG msg="got HTTP 304 for discovery, server_list.json is not modified"
time=2026年07月01日T08:45:02.120+02:00 level=DEBUG msg="sending request" method=GET url=https://surf.eduvpn.nl/.well-known/vpn-user-portal
time=2026年07月01日T08:45:02.179+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=OAuthStarted
time=2026年07月01日T08:46:45.797+02:00 level=DEBUG msg="FSM transition" old=OAuthStarted new=GotConfig
time=2026年07月01日T08:46:45.798+02:00 level=DEBUG msg="error returned to client" error="Failed to connect to server. The cause of the error is: context canceled."
time=2026年07月01日T08:46:47.651+02:00 level=DEBUG msg="client wants to get a VPN config" server_id=https://surf.eduvpn.nl/ server_type=1 prefer_tcp=false startup=false
time=2026年07月01日T08:46:47.651+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=GettingConfig
time=2026年07月01日T08:46:47.679+02:00 level=DEBUG msg="sending request" method=GET url=https://surf.eduvpn.nl/portal/api/v3/info
time=2026年07月01日T08:46:47.715+02:00 level=DEBUG msg="sending request" method=POST url=https://surf.eduvpn.nl/portal/api/v3/connect
time=2026年07月01日T08:46:47.776+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年07月01日T08:46:48.575+02:00 level=DEBUG msg="FSM transition" old=GotConfig new=GettingConfig
time=2026年07月01日T08:46:48.575+02:00 level=DEBUG msg="FSM transition" old=GettingConfig new=GotConfig
time=2026年07月01日T08:46:48.575+02:00 level=DEBUG msg="client wants to start the failover test" gateway=145.90.230.97 mtu=1392
time=2026年07月01日T08:46:48.576+02:00 level=DEBUG msg="Failover doing alive check"
time=2026年07月01日T08:46:48.891+02:00 level=DEBUG msg="Failover got early pong, exiting..."
~~~
application log
~~~
2026年06月30日 16:11:02.521 Error: ServerDetailViewModel: proceedToConnect(shouldPreferTCP:): Error: Failed to obtain a VPN configuration for the server. The cause of the error is: Timeout reached contacting URL: 'https://surf.eduvpn.nl/portal/api/v3/info'. (Source: Common Lib)
2026年06月30日 16:11:19.927 proceedToConnect(shouldPreferTCP:): shouldPreferTCP = false, state = notConnected
2026年06月30日 16:11:19.927 State changed to Contacting the server... (from Not connected)
2026年06月30日 16:11:20.188 State changed to Configuring... (from Contacting the server...)
2026年06月30日 16:11:20.189 proceedToConnect(shouldPreferTCP:): Got openVPN VPN config with shouldFailover = true
2026年06月30日 16:11:20.239 Connection status: connecting
2026年06月30日 16:11:20.239 State changed to Connecting... (from Configuring...)
2026年06月30日 16:11:20.239 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.239 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.239 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:20.240 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:21.443 Connection status: connected
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.444 State changed to Connected (from Connecting...)
2026年06月30日 16:11:21.454 updateControlsWithCurrentServer()
2026年06月30日 16:11:21.455 Session expires at: 2026年07月06日 07:15:25 +0000
2026年06月30日 16:11:21.455 Button to be shown at: 2026年07月05日 07:15:25 +0000
2026年06月30日 16:11:21.455 Session-valid-till to be shown at: 2026年07月05日 07:15:25 +0000
2026年06月30日 16:11:21.455 NotificationManager.removeAllDisplayedNotifications()
2026年06月30日 16:11:21.496 NotificationManager.attemptSchedulingSessionExpiryNotifications()
2026年06月30日 16:11:21.496 shouldNotifySavedValue = true
2026年06月30日 16:11:21.496 shouldNotifyToggleValue = true
2026年06月30日 16:11:21.496 hasAskedUserOnNotifyBeforeSessionExpiry = true
2026年06月30日 16:11:21.496 NotificationManager.scheduleSessionExpiryNotifications()
2026年06月30日 16:11:21.496 NotificationManager.requestAuthorization()
2026年06月30日 16:11:21.516 Notifications authorized
2026年06月30日 16:11:21.516 NotificationManager.scheduleSessionExpiryNotifications(): isAuthorized = true
2026年06月30日 16:11:21.517 Scheduling 4 notifications
2026年06月30日 16:11:33.217 ServerDetailViewModel.handleProfileSelectionChange(profileId: 'ts')
2026年06月30日 16:11:33.217 ServerDetailViewModel: cancelConnection(forRenewal:nextLaunchBehaviour:)
2026年06月30日 16:11:33.226 Connection status: diconnecting
2026年06月30日 16:11:33.226 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.226 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.227 State changed to Disconnecting... (from Connected)
2026年06月30日 16:11:33.613 Connection status: disconnected
2026年06月30日 16:11:33.613 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.614 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.615 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.615 State changed to Not connected (from Disconnecting...)
2026年06月30日 16:11:33.669 NotificationManager.descheduleSessionExpiryNotifications()
2026年06月30日 16:11:33.774 proceedToConnect(shouldPreferTCP:): shouldPreferTCP = false, state = notConnected
2026年06月30日 16:11:33.774 State changed to Contacting the server... (from Not connected)
2026年06月30日 16:11:33.910 State changed to Configuring... (from Contacting the server...)
2026年06月30日 16:11:33.910 proceedToConnect(shouldPreferTCP:): Got wireguard VPN config with shouldFailover = true
2026年06月30日 16:11:33.943 Connection status: connecting
2026年06月30日 16:11:33.943 State changed to Connecting... (from Configuring...)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:33.944 State changed to Connecting... (from Not connected)
2026年06月30日 16:11:34.358 Connection status: connected
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.358 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 State changed to Connected (from Connecting...)
2026年06月30日 16:11:34.359 updateControlsWithCurrentServer()
2026年06月30日 16:11:34.359 Session expires at: 2026年07月06日 07:15:25 +0000
2026年06月30日 16:11:34.359 Button to be shown at: 2026年07月05日 07:15:25 +0000
2026年06月30日 16:11:34.359 Session-valid-till to be shown at: 2026年07月05日 07:15:25 +0000
2026年06月30日 16:11:34.360 NotificationManager.removeAllDisplayedNotifications()
2026年06月30日 16:11:34.360 ServerDetailViewModel: performFailover(wgQuickConfig:)
2026年06月30日 16:11:34.360 State changed to Testing connection... (from Connecting...)
2026年06月30日 16:11:34.360 ServerDetailViewModel: performFailover(wgQuickConfig:): Performing connection test
2026年06月30日 16:11:34.389 NotificationManager.attemptSchedulingSessionExpiryNotifications()
2026年06月30日 16:11:34.389 shouldNotifySavedValue = true
2026年06月30日 16:11:34.389 shouldNotifyToggleValue = true
2026年06月30日 16:11:34.389 hasAskedUserOnNotifyBeforeSessionExpiry = true
2026年06月30日 16:11:34.389 NotificationManager.scheduleSessionExpiryNotifications()
2026年06月30日 16:11:34.389 NotificationManager.requestAuthorization()
2026年06月30日 16:11:34.413 Notifications authorized
2026年06月30日 16:11:34.413 NotificationManager.scheduleSessionExpiryNotifications(): isAuthorized = true
2026年06月30日 16:11:34.413 Scheduling 4 notifications
2026年06月30日 16:11:34.429 doWeHaveConnectivityOverVPN(interfaceAddresses:mtu:readRxBytes:) shouldFailover = false. Returning true
2026年06月30日 16:11:34.429 ServerDetailViewModel: performFailover(wgQuickConfig:): Connection test passed
2026年06月30日 16:11:34.429 State changed to Connected (from Testing connection...)
2026年07月01日 08:36:15.186 applicationShouldTerminate
2026年07月01日 08:36:15.186 applicationShouldTerminate: Invoking silentlyStopVPNAndQuit
2026年07月01日 08:36:15.186 ServerDetailViewModel: cancelConnection(forRenewal:nextLaunchBehaviour:)
2026年07月01日 08:36:15.192 Connection status: diconnecting
2026年07月01日 08:36:15.192 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.193 State changed to Disconnecting... (from Connected)
2026年07月01日 08:36:15.604 Connection status: disconnected
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.605 State changed to Not connected (from Disconnecting...)
2026年07月01日 08:36:15.664 NotificationManager.descheduleSessionExpiryNotifications()
2026年07月01日 08:36:16.001 applicationWillTerminate
--- EOF ---
2026年07月01日 08:44:55.593 App version: 4.1.3 (2456)
2026年07月01日 08:44:55.594 MainViewModel.init
2026年07月01日 08:44:55.595 UpdatesManager.init()
2026年07月01日 08:44:55.595 NotificationManager.init:
2026年07月01日 08:44:55.595 shouldNotifySavedValue = true
2026年07月01日 08:44:55.595 hasAskedUserOnNotifyBeforeSessionExpiry = true
2026年07月01日 08:44:55.597 NotificationManager.requestAuthorization()
2026年07月01日 08:44:55.748 Notifications authorized
2026年07月01日 08:44:57.103 initializeTunnelManager: tunnelManager has saved server info
2026年07月01日 08:44:57.103 initializeTunnelManager: Have eduvpn-common-stored current server: (instituteAccess, https://surf.eduvpn.nl/)
2026年07月01日 08:44:57.103 initializeTunnelManager: tunnelManagerServerInfo: (instituteAccess, https://surf.eduvpn.nl/)
2026年07月01日 08:44:57.103 Same server
2026年07月01日 08:44:57.103 ServerDetailViewModel.init: Server: https://surf.eduvpn.nl/, Connection status: Disconnected
2026年07月01日 08:44:57.103 updateControlsWithCurrentServer()
2026年07月01日 08:44:57.104 Session expires at: 2026年07月06日 07:15:25 +0000
2026年07月01日 08:44:57.104 Button to be shown at: 2026年07月05日 07:15:25 +0000
2026年07月01日 08:44:57.104 Session-valid-till to be shown at: 2026年07月05日 07:15:25 +0000
2026年07月01日 08:44:57.104 NotificationManager.removeAllDisplayedNotifications()
2026年07月01日 08:44:57.120 Tunnel has autoConnect = true
2026年07月01日 08:44:57.120 Auto-connecting to server
2026年07月01日 08:44:57.120 proceedToConnect(shouldPreferTCP:): shouldPreferTCP = false, state = notStarted
2026年07月01日 08:44:57.120 State changed to Contacting the server... (from Not connected)
2026年07月01日 08:44:57.252 NotificationManager.attemptSchedulingSessionExpiryNotifications()
2026年07月01日 08:44:57.252 shouldNotifySavedValue = true
2026年07月01日 08:44:57.252 shouldNotifyToggleValue = true
2026年07月01日 08:44:57.252 hasAskedUserOnNotifyBeforeSessionExpiry = true
2026年07月01日 08:44:57.252 NotificationManager.scheduleSessionExpiryNotifications()
2026年07月01日 08:44:57.252 NotificationManager.requestAuthorization()
2026年07月01日 08:44:57.273 Notifications authorized
2026年07月01日 08:44:57.273 NotificationManager.scheduleSessionExpiryNotifications(): isAuthorized = true
2026年07月01日 08:44:57.273 Scheduling 4 notifications
2026年07月01日 08:46:45.771 Error: openOAuthURL(_:): While authenticating: Error Domain=com.apple.AuthenticationServices.WebAuthenticationSession Code=1 "(null)"
2026年07月01日 08:46:45.802 State changed to Not connected (from Contacting the server...)
2026年07月01日 08:46:45.802 Error: ServerDetailViewModel: proceedToConnect(shouldPreferTCP:): (not shown to the user) Error: Failed to connect to server. The cause of the error is: context canceled. (Source: Common Lib)
2026年07月01日 08:46:47.651 proceedToConnect(shouldPreferTCP:): shouldPreferTCP = false, state = notConnected
2026年07月01日 08:46:47.652 State changed to Contacting the server... (from Not connected)
2026年07月01日 08:46:47.777 State changed to Configuring... (from Contacting the server...)
2026年07月01日 08:46:47.777 proceedToConnect(shouldPreferTCP:): Got wireguard VPN config with shouldFailover = true
2026年07月01日 08:46:47.805 Connection status: connecting
2026年07月01日 08:46:47.805 State changed to Connecting... (from Configuring...)
2026年07月01日 08:46:48.574 Connection status: connected
2026年07月01日 08:46:48.574 updateControlsWithCurrentServer()
2026年07月01日 08:46:48.575 Session expires at: 2026年07月06日 07:15:25 +0000
2026年07月01日 08:46:48.575 Button to be shown at: 2026年07月05日 07:15:25 +0000
2026年07月01日 08:46:48.575 Session-valid-till to be shown at: 2026年07月05日 07:15:25 +0000
2026年07月01日 08:46:48.575 NotificationManager.removeAllDisplayedNotifications()
2026年07月01日 08:46:48.575 ServerDetailViewModel: performFailover(wgQuickConfig:)
2026年07月01日 08:46:48.575 State changed to Testing connection... (from Connecting...)
2026年07月01日 08:46:48.575 ServerDetailViewModel: performFailover(wgQuickConfig:): Performing connection test
2026年07月01日 08:46:48.594 NotificationManager.attemptSchedulingSessionExpiryNotifications()
2026年07月01日 08:46:48.594 shouldNotifySavedValue = true
2026年07月01日 08:46:48.595 shouldNotifyToggleValue = true
2026年07月01日 08:46:48.595 hasAskedUserOnNotifyBeforeSessionExpiry = true
2026年07月01日 08:46:48.595 NotificationManager.scheduleSessionExpiryNotifications()
2026年07月01日 08:46:48.595 NotificationManager.requestAuthorization()
2026年07月01日 08:46:48.604 Notifications authorized
2026年07月01日 08:46:48.605 NotificationManager.scheduleSessionExpiryNotifications(): isAuthorized = true
2026年07月01日 08:46:48.605 Scheduling 4 notifications
2026年07月01日 08:46:48.892 doWeHaveConnectivityOverVPN(interfaceAddresses:mtu:readRxBytes:) shouldFailover = false. Returning true
2026年07月01日 08:46:48.893 ServerDetailViewModel: performFailover(wgQuickConfig:): Connection test passed
2026年07月01日 08:46:48.893 State changed to Connected (from Testing connection...)