geteduroam / apple-app

This app for iPhone, iPad and Mac configures devices for use with the eduroam network.
https://geteduroam.app/
BSD 3-Clause "New" or "Revised" License
6 stars 2 forks source link

Error when trying to connect on iPhone #75

Closed RianneBoortman closed 7 months ago

RianneBoortman commented 8 months ago

On the getgovroam app I get an error. When I connect to a profile (govroam test), fill in the credentials, I get this error.

Image

johankool commented 8 months ago

POST /app/govroam.eap-config HTTP/1.1 Host: geteduroam.nl Connection: keep-alive If-None-Match: "3ad7-60ae4d346916e" Accept: / If-Modified-Since: Fri, 24 Nov 2023 12:09:33 GMT User-Agent: getgovroam/27 CFNetwork/1490.0.4 Darwin/23.2.0 Accept-Language: nl-NL,nl;q=0.9 Accept-Encoding: gzip, deflate, br Content-Length: 0

HTTP/1.1 412 Precondition Failed Date: Fri, 15 Dec 2023 18:45:56 GMT Server: Apache Strict-Transport-Security: max-age=63072000 Upgrade: h2 Connection: Upgrade, Keep-Alive Last-Modified: Fri, 24 Nov 2023 12:09:33 GMT ETag: "3ad7-60ae4d346916e" Accept-Ranges: bytes Content-Length: 0 Keep-Alive: timeout=5, max=100

@pauldekkers Any idea which precondition triggers this?

pauldekkers commented 8 months ago

I think this is because it's a POST, while it should have been a GET, because it's not an OAUTH eap-config endpoint and in fact based on a static file. I tried to fix this test-profile by moving it from an nginx webserver to Apache earlier, because I noticed Apache didn't mind about the POST going to a static file URL -- but the second invocation uses the If-None-Match and If-Moditfied-Since and (I think!) that triggers the "mid-air edit collision"-filtering in Apache apparently. The profiles in CAT work, because that is actually generated by php, and not a static file.

RianneBoortman commented 7 months ago

Tested on: iPhone 11 Pro Max, iOS 16.7

Version: geteduroam version 2.1 (83)

✅ test approved I do not get the error now any more, which is good.