diff --git a/relay.go b/relay.go index 247caf3..d9a5b29 100644 --- a/relay.go +++ b/relay.go @@ -190,9 +190,11 @@ func (r *Relay) handleMessage(message string) { } r.challenge = *env.Challenge if r.authHandler != nil { - r.Auth(r.Context(), func(ctx context.Context, evt *Event) error { - return r.authHandler(ctx, r, evt) - }) + go func() { + r.Auth(r.Context(), func(ctx context.Context, evt *Event) error { + return r.authHandler(ctx, r, evt) + }) + }() } case *EventEnvelope: // we already have the subscription from the pre-check above, so we can just reuse it