diff --git a/hscontrol/app.go b/hscontrol/app.go index 26cd1bba..6d6a93e2 100644 --- a/hscontrol/app.go +++ b/hscontrol/app.go @@ -711,7 +711,12 @@ func (h *Headscale) Serve() error { } if err != nil { - return fmt.Errorf("binding to TCP address: %w", err) + return &types.ListenerBindError{ + Listener: "main HTTP", + YAMLKey: "listen_addr", + Addr: h.cfg.Addr, + Err: err, + } } errorGroup.Go(func() error { return httpServer.Serve(httpListener) }) @@ -727,7 +732,12 @@ func (h *Headscale) Serve() error { if h.cfg.MetricsAddr != "" { debugHTTPListener, err = (&net.ListenConfig{}).Listen(ctx, "tcp", h.cfg.MetricsAddr) if err != nil { - return fmt.Errorf("binding to TCP address: %w", err) + return &types.ListenerBindError{ + Listener: "metrics", + YAMLKey: "metrics_listen_addr", + Addr: h.cfg.MetricsAddr, + Err: err, + } } debugHTTPServer = h.debugHTTPServer()