From 3e3a8c29b4e525eee152a79060123aa4d5eefa7f Mon Sep 17 00:00:00 2001 From: Daniel <dhaavi@users.noreply.github.com> Date: Fri, 12 Aug 2022 13:15:58 +0200 Subject: [PATCH] Fix and improve recent additions --- cmd/cmd-verify.go | 8 ++++---- cmd/main.go | 2 +- envelope.go | 4 ++-- filesig/main.go | 3 +++ import_export.go | 6 ++++-- 5 files changed, 14 insertions(+), 9 deletions(-) diff --git a/cmd/cmd-verify.go b/cmd/cmd-verify.go index 1efc832..061dcf6 100644 --- a/cmd/cmd-verify.go +++ b/cmd/cmd-verify.go @@ -83,7 +83,7 @@ var verifyCmd = &cobra.Command{ } // Only verify if .sig or .letter. - if strings.HasSuffix(path, sigFileExtension) || + if strings.HasSuffix(path, filesig.Extension) || strings.HasSuffix(path, letterFileExtension) { if err := verify(path, true); err != nil { verificationFails++ @@ -135,11 +135,11 @@ func verify(filename string, bulkMode bool) error { signedBy, err = verifyLetter(filename, bulkMode) case strings.HasSuffix(filename, letterFileExtension): signedBy, err = verifyLetter(filename, bulkMode) - case strings.HasSuffix(filename, sigFileExtension): - filename = strings.TrimSuffix(filename, sigFileExtension) + case strings.HasSuffix(filename, filesig.Extension): + filename = strings.TrimSuffix(filename, filesig.Extension) fallthrough default: - signame = filename + sigFileExtension + signame = filename + filesig.Extension signedBy, err = verifySig(filename, signame, bulkMode) } diff --git a/cmd/main.go b/cmd/main.go index d7f97f1..b603063 100644 --- a/cmd/main.go +++ b/cmd/main.go @@ -53,7 +53,7 @@ func main() { rootCmd.PersistentFlags().StringVarP(&trustStoreDir, "tsdir", "d", "", "specify a truststore directory (default loaded from JESS_TS_DIR env variable)", ) - rootCmd.PersistentFlags().StringVarP(&trustStoreDir, "tskeyring", "k", "", + rootCmd.PersistentFlags().StringVarP(&trustStoreKeyring, "tskeyring", "r", "", "specify a truststore keyring namespace (default loaded from JESS_TS_KEYRING env variable) - lower priority than tsdir", ) rootCmd.PersistentFlags().StringVarP(&noSpec, "no", "n", "", diff --git a/envelope.go b/envelope.go index 2935041..71c2aa8 100644 --- a/envelope.go +++ b/envelope.go @@ -285,14 +285,14 @@ func (e *Envelope) CleanSignets() { } } for i, signet := range e.Senders { - e.Secrets[i] = &Signet{ + e.Senders[i] = &Signet{ Version: signet.Version, ID: signet.ID, Scheme: signet.Scheme, } } for i, signet := range e.Recipients { - e.Secrets[i] = &Signet{ + e.Recipients[i] = &Signet{ Version: signet.Version, ID: signet.ID, Scheme: signet.Scheme, diff --git a/filesig/main.go b/filesig/main.go index b4f54ba..b71ad87 100644 --- a/filesig/main.go +++ b/filesig/main.go @@ -9,6 +9,9 @@ import ( "github.com/safing/portbase/formats/dsd" ) +// Extension holds the default file extension to be used for signature files. +const Extension = ".sig" + var fileSigRequirements = jess.NewRequirements(). Remove(jess.RecipientAuthentication). Remove(jess.Confidentiality) diff --git a/import_export.go b/import_export.go index 347d5c2..86de909 100644 --- a/import_export.go +++ b/import_export.go @@ -182,11 +182,13 @@ func EnvelopeFromTextFormat(textFormat string) (*Envelope, error) { return EnvelopeFromBase58(splitted[len(splitted)-1]) } -var replaceForTextFormatMatcher = regexp.MustCompile(`[^A-Za-z\-]+`) +var replaceForTextFormatMatcher = regexp.MustCompile(`[^A-Za-z0-9]+`) // toTextFormatString makes a string compatible with the text format. func toTextFormatString(s string) string { return strings.ToLower( - replaceForTextFormatMatcher.ReplaceAllString(s, "_"), + strings.Trim( + replaceForTextFormatMatcher.ReplaceAllString(s, "-"), "-", + ), ) }