The following exception keeps getting triggered, which may be obscuring exceptions that are of concern, so we need to fix this one. It is likely to be caused by calls into auth by attackers probing for vulnerabilities:
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in __call__
| with recv_stream, send_stream, collapse_excgroups():
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/contextlib.py", line 158, in __exit__
| self.gen.throw(typ, value, traceback)
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups
| raise exc
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in __call__
| response = await self.dispatch_func(request, call_next)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| File "/home/pasta/auth/webapp/main.py", line 193, in dispatch
| response = await call_next(request)
| ^^^^^^^^^^^^^^^^^^^^^^^^
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next
| raise app_exc from app_exc.__cause__ or app_exc.__context__
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro
| await self.app(scope, receive_or_disconnect, send_no_error)
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in __call__
| with recv_stream, send_stream, collapse_excgroups():
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/contextlib.py", line 158, in __exit__
| self.gen.throw(typ, value, traceback)
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups
| raise exc
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in __call__
| response = await self.dispatch_func(request, call_next)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| File "/home/pasta/auth/webapp/main.py", line 165, in dispatch
| return await call_next(request)
| ^^^^^^^^^^^^^^^^^^^^^^^^
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next
| raise app_exc from app_exc.__cause__ or app_exc.__context__
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro
| await self.app(scope, receive_or_disconnect, send_no_error)
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 63, in __call__
| await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
| raise exc
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
| await app(scope, receive, sender)
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__
| await self.app(scope, receive, send)
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/routing.py", line 716, in __call__
| await self.middleware_stack(scope, receive, send)
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/routing.py", line 736, in app
| await route.handle(scope, receive, send)
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/routing.py", line 290, in handle
| await self.app(scope, receive, send)
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/fastapi/routing.py", line 115, in app
| await wrap_app_handling_exceptions(app, request)(scope, receive, send)
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
| raise exc
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
| await app(scope, receive, sender)
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/fastapi/routing.py", line 101, in app
| response = await f(request)
| ^^^^^^^^^^^^^^^^
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/fastapi/routing.py", line 355, in app
| raw_response = await run_endpoint_function(
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| File "/home/pasta/miniconda3/envs/auth/lib/python3.11/site-packages/fastapi/routing.py", line 243, in run_endpoint_function
| return await dependant.call(**values)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| File "/home/pasta/auth/webapp/idp/google.py", line 74, in get_callback_google
| login_type, target_url = util.login.unpack_state(request.query_params.get('state'))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| File "/home/pasta/auth/webapp/util/login.py", line 206, in unpack_state
| return state_str.split(':', maxsplit=1)
| ^^^^^^^^^^^^^^^
| AttributeError: 'NoneType' object has no attribute 'split'
The following exception keeps getting triggered, which may be obscuring exceptions that are of concern, so we need to fix this one. It is likely to be caused by calls into auth by attackers probing for vulnerabilities: