remove unnecessary checks on slices

This commit is contained in:
Benjamin George Roberts 2022-09-23 17:58:06 +10:00
parent 09863b540d
commit c52e3aafe6
4 changed files with 24 additions and 31 deletions

View File

@ -108,15 +108,14 @@ var listPreAuthKeys = &cobra.Command{
reusable = fmt.Sprintf("%v", key.GetReusable()) reusable = fmt.Sprintf("%v", key.GetReusable())
} }
var aclTags string aclTags := ""
if len(key.AclTags) > 0 { for _, tag := range key.AclTags {
for _, tag := range key.AclTags { aclTags += "," + tag
aclTags += "," + tag
}
aclTags = strings.TrimLeft(aclTags, ",")
} }
aclTags = strings.TrimLeft(aclTags, ",")
tableData = append(tableData, []string{ tableData = append(tableData, []string{
key.GetId(), key.GetId(),
key.GetKey(), key.GetKey(),

View File

@ -1,4 +1,4 @@
//nolint // nolint
package headscale package headscale
import ( import (
@ -106,15 +106,12 @@ func (api headscaleV1APIServer) CreatePreAuthKey(
expiration = request.GetExpiration().AsTime() expiration = request.GetExpiration().AsTime()
} }
if len(request.AclTags) > 0 { for _, tag := range request.AclTags {
for _, tag := range request.AclTags { err := validateTag(tag)
err := validateTag(tag) if err != nil {
return &v1.CreatePreAuthKeyResponse{
if err != nil { PreAuthKey: nil,
return &v1.CreatePreAuthKeyResponse{ }, status.Error(codes.InvalidArgument, err.Error())
PreAuthKey: nil,
}, status.Error(codes.InvalidArgument, err.Error())
}
} }
} }
@ -154,7 +151,6 @@ func (api headscaleV1APIServer) ListPreAuthKeys(
request *v1.ListPreAuthKeysRequest, request *v1.ListPreAuthKeysRequest,
) (*v1.ListPreAuthKeysResponse, error) { ) (*v1.ListPreAuthKeysResponse, error) {
preAuthKeys, err := api.h.ListPreAuthKeys(request.GetNamespace()) preAuthKeys, err := api.h.ListPreAuthKeys(request.GetNamespace())
if err != nil { if err != nil {
return nil, err return nil, err
} }

View File

@ -234,10 +234,8 @@ func (key *PreAuthKey) toProto() *v1.PreAuthKey {
protoKey.CreatedAt = timestamppb.New(*key.CreatedAt) protoKey.CreatedAt = timestamppb.New(*key.CreatedAt)
} }
if len(key.ACLTags) > 0 { for idx := range key.ACLTags {
for idx := range key.ACLTags { protoKey.AclTags[idx] = key.ACLTags[idx].Tag
protoKey.AclTags[idx] = key.ACLTags[idx].Tag
}
} }
return &protoKey return &protoKey

View File

@ -358,18 +358,18 @@ func (h *Headscale) handleAuthKeyCommon(
if len(aclTags) > 0 { if len(aclTags) > 0 {
// This conditional preserves the existing behaviour, although SaaS would reset the tags on auth-key login // This conditional preserves the existing behaviour, although SaaS would reset the tags on auth-key login
err = h.SetTags(machine, aclTags) err = h.SetTags(machine, aclTags)
}
if err != nil { if err != nil {
log.Error(). log.Error().
Caller(). Caller().
Bool("noise", machineKey.IsZero()). Bool("noise", machineKey.IsZero()).
Str("machine", machine.Hostname). Str("machine", machine.Hostname).
Strs("aclTags", aclTags). Strs("aclTags", aclTags).
Err(err). Err(err).
Msg("Failed to set tags after refreshing machine") Msg("Failed to set tags after refreshing machine")
return return
}
} }
} else { } else {
now := time.Now().UTC() now := time.Now().UTC()