diff --git a/cmd/headscale/cli/routes.go b/cmd/headscale/cli/routes.go index e39b407f..ef289497 100644 --- a/cmd/headscale/cli/routes.go +++ b/cmd/headscale/cli/routes.go @@ -251,10 +251,15 @@ func routesToPtables(routes []*v1.Route) pterm.TableData { isPrimaryStr = strconv.FormatBool(route.GetIsPrimary()) } + var nodeName string + if route.GetNode() != nil { + nodeName = route.GetNode().GetGivenName() + } + tableData = append(tableData, []string{ strconv.FormatUint(route.GetId(), Base10), - route.GetNode().GetGivenName(), + nodeName, route.GetPrefix(), strconv.FormatBool(route.GetAdvertised()), strconv.FormatBool(route.GetEnabled()), diff --git a/hscontrol/types/routes.go b/hscontrol/types/routes.go index f98c037d..12559fa6 100644 --- a/hscontrol/types/routes.go +++ b/hscontrol/types/routes.go @@ -79,7 +79,6 @@ func (rs Routes) Proto() []*v1.Route { for _, route := range rs { protoRoute := v1.Route{ Id: uint64(route.ID), - Node: route.Node.Proto(), Prefix: route.Prefix.String(), Advertised: route.Advertised, Enabled: route.Enabled, @@ -88,6 +87,10 @@ func (rs Routes) Proto() []*v1.Route { UpdatedAt: timestamppb.New(route.UpdatedAt), } + if route.Node != nil { + protoRoute.Node = route.Node.Proto() + } + if route.DeletedAt.Valid { protoRoute.DeletedAt = timestamppb.New(route.DeletedAt.Time) }