mirror of
https://github.com/TecharoHQ/anubis.git
synced 2026-04-17 05:44:57 +00:00
fix(lib): detect failures on challenge method initialization
Signed-off-by: Xe Iaso <me@xeiaso.net>
This commit is contained in:
@@ -18,7 +18,7 @@ import (
|
|||||||
//go:generate go tool github.com/a-h/templ/cmd/templ generate
|
//go:generate go tool github.com/a-h/templ/cmd/templ generate
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
chall.Register("hashx", &Impl{algorithm: "argon2id"})
|
chall.Register("hashx", &Impl{algorithm: "hashx"})
|
||||||
chall.Register("sha256", &Impl{algorithm: "sha256"})
|
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)
|
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) {
|
func (i *Impl) Issue(w http.ResponseWriter, r *http.Request, lg *slog.Logger, in *chall.IssueInput) (templ.Component, error) {
|
||||||
|
|||||||
@@ -175,7 +175,9 @@ func New(opts Options) (*Server, error) {
|
|||||||
|
|
||||||
for _, implKind := range challenge.Methods() {
|
for _, implKind := range challenge.Methods() {
|
||||||
impl, _ := challenge.Get(implKind)
|
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
|
result.mux = mux
|
||||||
|
|||||||
Reference in New Issue
Block a user