italia / eudi-wallet-it-python

Python toolchain for building an OpenID4VP RP with a SATOSA backend compliant with the Italian Wallet implementation profile
Apache License 2.0
17 stars 14 forks source link

[Bug][Satosa] Default request and response routing logic is flipped #246

Closed Zicchio closed 3 months ago

Zicchio commented 3 months ago

According to the interface specification, the RequestHandler interface https://github.com/italia/eudi-wallet-it-python/blob/dev/pyeudiw/satosa/interfaces/request_handler.py defines the creation of the Request Object https://github.com/italia/eudi-wallet-it-python/blob/52fcbece3fa77fefbd5e91181ac3e2e73fc5f098/pyeudiw/satosa/interfaces/request_handler.py#L16

But the default realization delegates this behaviour to the ResponseHandler default implementation https://github.com/italia/eudi-wallet-it-python/blob/dev/pyeudiw/satosa/default/response_handler.py

Likewise, the interface ResponseHandler interface https://github.com/italia/eudi-wallet-it-python/blob/dev/pyeudiw/satosa/interfaces/request_handler.py should process the /authorize response https://github.com/italia/eudi-wallet-it-python/blob/52fcbece3fa77fefbd5e91181ac3e2e73fc5f098/pyeudiw/satosa/interfaces/response_handler.py#L15 but this behaviour is actually delegated to the RequestHandler default realization https://github.com/italia/eudi-wallet-it-python/blob/dev/pyeudiw/satosa/default/request_handler.py

Confronting the python docstring with the eudi it wallet specification suggest that the interface definition and docstring are correct, and the implementations are erroneously flipped.

peppelinux commented 3 months ago

Resolved by https://github.com/italia/eudi-wallet-it-python/pull/253