fix(lib): detect failures on challenge method initialization

Signed-off-by: Xe Iaso <me@xeiaso.net>
This commit is contained in:
Xe Iaso
2025-09-28 04:02:49 +00:00
parent 8b60b4309b
commit cf931cc0a5
2 changed files with 9 additions and 3 deletions

View File

@@ -18,7 +18,7 @@ import (
//go:generate go tool github.com/a-h/templ/cmd/templ generate
func init() {
chall.Register("hashx", &Impl{algorithm: "argon2id"})
chall.Register("hashx", &Impl{algorithm: "hashx"})
chall.Register("sha256", &Impl{algorithm: "sha256"})
}
@@ -37,7 +37,11 @@ func (i *Impl) Setup(mux *http.ServeMux) error {
i.runner, err = wasm.NewRunner(context.Background(), fname, fin)
return err
if err != nil {
return err
}
return nil
}
func (i *Impl) Issue(w http.ResponseWriter, r *http.Request, lg *slog.Logger, in *chall.IssueInput) (templ.Component, error) {

View File

@@ -175,7 +175,9 @@ func New(opts Options) (*Server, error) {
for _, implKind := range challenge.Methods() {
impl, _ := challenge.Get(implKind)
impl.Setup(mux)
if err := impl.Setup(mux); err != nil {
return nil, fmt.Errorf("failed to init challenge method %s: %w", implKind, err)
}
}
result.mux = mux