Sphereon-Opensource / SIOP-OID4VP

Self Issued OpenID Provider v2 (SIOP) with optional OpenID for Verifiable Presentations (OpenID4VP)
Apache License 2.0
77 stars 25 forks source link

fix: no async in filter #77

Closed TimoGlastra closed 2 months ago

TimoGlastra commented 2 months ago

This one took me really long to debug, but i was finally able to find out why a succesful verification event was emitted even though the presentation verification callback failed.

The filter that had an async method doesn't really work, and thus it would see the returned promise value in the filter method as a truthy value (Boolean(Promise.reject()) will still evaluate to true). It was especially weird since the error was thrown, but because it was not handled within a promise, it was an unhandled rejection.

It does mean that the presentation verification callback has had no effect on the outcome of the verification, so this seems like a serious bug to get released as soon as possible.