Skip to content

Commit

Permalink
Fix panic in credential renewal job
Browse files Browse the repository at this point in the history
This commit modifies the credential renewal job to handle a case where the `renewLease` method can
return `nil, nil`. Currently, a panic is caused by usage of the `renewedCred` variable in this scenario.

This commit adds a nil check and returns an error if the `renewedCred` variable is returned as `nil`.

Signed-off-by: David Bond <davidsbond93@gmail.com>
  • Loading branch information
davidsbond committed Sep 18, 2024
1 parent b120a03 commit 036d7ad
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions internal/credential/vault/jobs.go
Original file line number Diff line number Diff line change
Expand Up @@ -604,6 +604,9 @@ func (r *CredentialRenewalJob) renewCred(ctx context.Context, c *privateCredenti
if err != nil {
return errors.Wrap(ctx, err, op, errors.WithMsg("unable to renew credential"))
}
if renewedCred == nil {
return errors.New(ctx, errors.Unknown, op, "vault returned empty credential")
}

cred.expiration = time.Duration(renewedCred.LeaseDuration) * time.Second
query, values := cred.updateExpirationQuery()
Expand Down

0 comments on commit 036d7ad

Please sign in to comment.