Hi,
I have an issue where the server appears to panic when connecting by IOS client, not sure the core issue here is the debug logs. I have not had time to look and fix but if I do I will come back here and update, just wanted to make you aware of this issue
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.082981451 +00:00 [INFO] server.rs:252 - POST /api/oidc/auth application/json:
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.083078144 +00:00 [INFO] server.rs:327 - Matched: (oidc_auth) POST /api/oidc/auth application/json
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.083309529 +00:00 [DEBUG] lib.rs:1000 - oidc_auth: ExtendedJson { data: OidcAuthRequest { device_info: OidcDeviceInfo { name: "iPhone16,2", os: "ios", type: "client" }, id: "1631979775", op: "casdoor", uuid: "KxANXXNXwSMHX2ekciUpsq82Vi9UtBa1MCSUKiT3sKA=" }, headers: {"accept": "/", "accept-encoding": "gzip", "host": "rdscore.local.thomasdye.net:21114", "x-forwarded-proto": "https", "x-forwarded-for": "10.0.8.125", "content-length": "150", "content-type": "application/json"} }
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.083393298 +00:00 [DEBUG] lib.rs:1002 - headers: {"accept": "/", "accept-encoding": "gzip", "host": "rdscore.local.thomasdye.net:21114", "x-forwarded-proto": "https", "x-forwarded-for": "10.0.8.125", "content-length": "150", "content-type": "application/json"}
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085793839 +00:00 [ERROR] server.rs:58 - Handler oidc_auth panicked.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085857531 +00:00 [INFO] server.rs:58 - This is an application bug.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085883147 +00:00 [INFO] server.rs:58 - A panic in Rust must be treated as an exceptional event.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085907301 +00:00 [INFO] server.rs:58 - Panicking is not a suitable error handling mechanism.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085930762 +00:00 [INFO] server.rs:58 - Unwinding, the result of a panic, is an expensive operation.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085953378 +00:00 [INFO] server.rs:58 - Panics will degrade application performance.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085974762 +00:00 [INFO] server.rs:58 - Instead of panicking, return Option and/or Result.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085995993 +00:00 [INFO] server.rs:58 - Values of either type can be returned directly from handlers.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.086018531 +00:00 [WARN] server.rs:58 - A panic is treated as an internal server error.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.086046839 +00:00 [INFO] server.rs:337 - Outcome: Error(500 Internal Server Error)
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.086091301 +00:00 [WARN] server.rs:376 - No 500 catcher registered. Using Rocket default.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.086384609 +00:00 [DEBUG] server.rs:163 - sending response: Response {
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: status: 500,
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: version: HTTP/1.1,
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: headers: {
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "content-type": "text/html; charset=utf-8",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "server": "SCTGDeskServer/1.1.99-47",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "permissions-policy": "interest-cohort=()",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "x-content-type-options": "nosniff",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "x-frame-options": "SAMEORIGIN",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "access-control-allow-origin": "",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "access-control-allow-methods": "POST, GET, PUT, DELETE, OPTIONS",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "access-control-allow-headers": "",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "access-control-allow-credentials": "true",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "content-length": "488",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: },
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: body: Body(
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: Streaming,
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: ),
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: }
Hi,
I have an issue where the server appears to panic when connecting by IOS client, not sure the core issue here is the debug logs. I have not had time to look and fix but if I do I will come back here and update, just wanted to make you aware of this issue
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.082981451 +00:00 [INFO] server.rs:252 - POST /api/oidc/auth application/json:
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.083078144 +00:00 [INFO] server.rs:327 - Matched: (oidc_auth) POST /api/oidc/auth application/json
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.083309529 +00:00 [DEBUG] lib.rs:1000 - oidc_auth: ExtendedJson { data: OidcAuthRequest { device_info: OidcDeviceInfo { name: "iPhone16,2", os: "ios", type: "client" }, id: "1631979775", op: "casdoor", uuid: "KxANXXNXwSMHX2ekciUpsq82Vi9UtBa1MCSUKiT3sKA=" }, headers: {"accept": "/", "accept-encoding": "gzip", "host": "rdscore.local.thomasdye.net:21114", "x-forwarded-proto": "https", "x-forwarded-for": "10.0.8.125", "content-length": "150", "content-type": "application/json"} }
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.083393298 +00:00 [DEBUG] lib.rs:1002 - headers: {"accept": "/", "accept-encoding": "gzip", "host": "rdscore.local.thomasdye.net:21114", "x-forwarded-proto": "https", "x-forwarded-for": "10.0.8.125", "content-length": "150", "content-type": "application/json"}
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085793839 +00:00 [ERROR] server.rs:58 - Handler oidc_auth panicked.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085857531 +00:00 [INFO] server.rs:58 - This is an application bug.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085883147 +00:00 [INFO] server.rs:58 - A panic in Rust must be treated as an exceptional event.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085907301 +00:00 [INFO] server.rs:58 - Panicking is not a suitable error handling mechanism.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085930762 +00:00 [INFO] server.rs:58 - Unwinding, the result of a panic, is an expensive operation.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085953378 +00:00 [INFO] server.rs:58 - Panics will degrade application performance.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085974762 +00:00 [INFO] server.rs:58 - Instead of panicking, return
Optionand/orResult.Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.085995993 +00:00 [INFO] server.rs:58 - Values of either type can be returned directly from handlers.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.086018531 +00:00 [WARN] server.rs:58 - A panic is treated as an internal server error.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.086046839 +00:00 [INFO] server.rs:337 - Outcome: Error(500 Internal Server Error)
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.086091301 +00:00 [WARN] server.rs:376 - No 500 catcher registered. Using Rocket default.
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: 2025-03-29 16:36:34.086384609 +00:00 [DEBUG] server.rs:163 - sending response: Response {
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: status: 500,
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: version: HTTP/1.1,
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: headers: {
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "content-type": "text/html; charset=utf-8",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "server": "SCTGDeskServer/1.1.99-47",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "permissions-policy": "interest-cohort=()",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "x-content-type-options": "nosniff",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "x-frame-options": "SAMEORIGIN",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "access-control-allow-origin": "",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "access-control-allow-methods": "POST, GET, PUT, DELETE, OPTIONS",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "access-control-allow-headers": "",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "access-control-allow-credentials": "true",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: "content-length": "488",
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: },
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: body: Body(
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: Streaming,
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: ),
Mar 29 16:36:34 TDS-SONOS-AIRPLAY hbbs[11139]: }