Skip to content

Commit

Permalink
keygen: removed unused context (#39922)
Browse files Browse the repository at this point in the history
* keygen: removed unused context

* Remove keygen.Close
  • Loading branch information
zmb3 authored Mar 28, 2024
1 parent 6522669 commit ec28ab5
Show file tree
Hide file tree
Showing 8 changed files with 10 additions and 32 deletions.
18 changes: 3 additions & 15 deletions lib/auth/keygen/keygen.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,6 @@ import (
// Keygen is a key generator that precomputes keys to provide quick access to
// public/private key pairs.
type Keygen struct {
ctx context.Context
cancel context.CancelFunc

// clock is used to control time.
clock clockwork.Clock
}
Expand All @@ -62,12 +59,9 @@ func SetClock(clock clockwork.Clock) Option {
}

// New returns a new key generator.
func New(ctx context.Context, opts ...Option) *Keygen {
ctx, cancel := context.WithCancel(ctx)
func New(_ context.Context, opts ...Option) *Keygen {
k := &Keygen{
ctx: ctx,
cancel: cancel,
clock: clockwork.NewRealClock(),
clock: clockwork.NewRealClock(),
}
for _, opt := range opts {
opt(k)
Expand All @@ -76,13 +70,7 @@ func New(ctx context.Context, opts ...Option) *Keygen {
return k
}

// Close stops the precomputation of keys (if enabled) and releases all resources.
func (k *Keygen) Close() {
k.cancel()
}

// GenerateKeyPair returns fresh priv/pub keypair, takes about 300ms to
// execute.
// GenerateKeyPair returns fresh priv/pub keypair, takes about 300ms to execute.
func (k *Keygen) GenerateKeyPair() ([]byte, []byte, error) {
return native.GenerateKeyPair()
}
Expand Down
2 changes: 0 additions & 2 deletions lib/service/service.go
Original file line number Diff line number Diff line change
Expand Up @@ -5626,8 +5626,6 @@ func (process *TeleportProcess) Shutdown(ctx context.Context) {
func (process *TeleportProcess) Close() error {
process.BroadcastEvent(Event{Name: TeleportExitEvent})

process.Config.Keygen.Close()

var errors []error

if localAuth := process.getLocalAuth(); localAuth != nil {
Expand Down
2 changes: 0 additions & 2 deletions lib/services/authority_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -151,8 +151,6 @@ func TestCertAuthorityEquivalence(t *testing.T) {

func TestCertAuthorityUTCUnmarshal(t *testing.T) {
t.Parallel()
ta := testauthority.New()
t.Cleanup(ta.Close)

_, pub, err := testauthority.New().GenerateKeyPair()
require.NoError(t, err)
Expand Down
5 changes: 2 additions & 3 deletions lib/services/unified_resource_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ import (

"github.com/gravitational/teleport"
"github.com/gravitational/teleport/api/defaults"
apidefaults "github.com/gravitational/teleport/api/defaults"
"github.com/gravitational/teleport/api/types"
"github.com/gravitational/teleport/api/types/header"
"github.com/gravitational/teleport/lib/backend/memory"
Expand Down Expand Up @@ -340,15 +339,15 @@ func TestUnifiedResourceWatcher_DeleteEvent(t *testing.T) {
kube, err := types.NewKubernetesClusterV3(
types.Metadata{
Name: "kube",
Namespace: apidefaults.Namespace,
Namespace: defaults.Namespace,
},
types.KubernetesClusterSpecV3{},
)
require.NoError(t, err)
kubeServer, err := types.NewKubernetesServerV3(
types.Metadata{
Name: "kube_server",
Namespace: apidefaults.Namespace,
Namespace: defaults.Namespace,
},
types.KubernetesServerSpecV3{
Cluster: kube,
Expand Down
3 changes: 0 additions & 3 deletions lib/sshca/sshca.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,4 @@ type Authority interface {
// GenerateUserCert generates user ssh certificate, it takes pkey as a signing
// private key (user certificate authority)
GenerateUserCert(certParams services.UserCertParams) ([]byte, error)

// Close will close the key-management facility.
Close()
}
1 change: 0 additions & 1 deletion tool/tctl/common/auth_command.go
Original file line number Diff line number Diff line change
Expand Up @@ -241,7 +241,6 @@ func (a *AuthCommand) ExportAuthorities(ctx context.Context, clt *auth.Client) e
// GenerateKeys generates a new keypair
func (a *AuthCommand) GenerateKeys(ctx context.Context) error {
keygen := keygen.New(ctx)
defer keygen.Close()
privBytes, pubBytes, err := keygen.GenerateKeyPair()
if err != nil {
return trace.Wrap(err)
Expand Down
7 changes: 4 additions & 3 deletions tool/tctl/common/helpers_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -185,23 +185,24 @@ func mustDecodeJSON[T any](t *testing.T, r io.Reader) T {
return out
}

func mustDecodeYAMLDocuments[T any](t *testing.T, r io.Reader, out *[]T) error {
func mustDecodeYAMLDocuments[T any](t *testing.T, r io.Reader, out *[]T) {
t.Helper()
decoder := yaml.NewDecoder(r)
for {
var entry T
if err := decoder.Decode(&entry); err != nil {
// Break when there are no more documents to decode
if !errors.Is(err, io.EOF) {
return err
require.FailNow(t, "error decoding YAML: %v", err)
}
break
}
*out = append(*out, entry)
}
return nil
}

func mustDecodeYAML[T any](t *testing.T, r io.Reader) T {
t.Helper()
var out T
err := yaml.NewDecoder(r).Decode(&out)
require.NoError(t, err)
Expand Down
4 changes: 1 addition & 3 deletions tool/tctl/common/token_command_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -130,10 +130,8 @@ func TestTokens(t *testing.T) {
buf, err = runTokensCommand(t, fileConfig, []string{"ls", "--format", teleport.YAML})
require.NoError(t, err)
yamlOut := []listedToken{}
err = mustDecodeYAMLDocuments(t, buf, &yamlOut)
require.NoError(t, err)
mustDecodeYAMLDocuments(t, buf, &yamlOut)
require.Len(t, yamlOut, 5)

require.Equal(t, jsonOut, yamlOut)
})
}

0 comments on commit ec28ab5

Please sign in to comment.