Skip to content
This repository has been archived by the owner on Mar 27, 2024. It is now read-only.

fix: didsignjwt Signer interface not exported #3440

Merged
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions pkg/doc/util/didsignjwt/signjwt.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,9 @@ type cryptoSigner interface {
Sign(msg []byte, kh interface{}) ([]byte, error)
}

type signer interface {
// A Signer is capable of signing data.
type Signer interface {
// Sign provides a signature for msg.
Sign(msg []byte) ([]byte, error)
}

Expand All @@ -58,11 +60,11 @@ type defaultSigner struct {
}

// SignerGetter creates a signer that signs with the private key corresponding to the given public key.
type SignerGetter func(vm *did.VerificationMethod) (signer, error)
type SignerGetter func(vm *did.VerificationMethod) (Signer, error)

// UseDefaultSigner provides SignJWT with a signer that uses the given KMS and Crypto instances.
func UseDefaultSigner(r keyReader, s cryptoSigner) SignerGetter {
return func(vm *did.VerificationMethod) (signer, error) {
return func(vm *did.VerificationMethod) (Signer, error) {
pubKey, keyType, _, err := vmparse.VMToBytesTypeCrv(vm)
if err != nil {
return nil, fmt.Errorf("parsing verification method: %w", err)
Expand Down