Implement review suggestions and fix tests and linter errors
This commit is contained in:
parent
19f008e701
commit
678c558e7f
9 changed files with 25 additions and 31 deletions
|
@ -3,7 +3,7 @@ package main
|
||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io/ioutil"
|
"io"
|
||||||
"os"
|
"os"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
|
@ -89,9 +89,9 @@ var (
|
||||||
// load file
|
// load file
|
||||||
var data []byte
|
var data []byte
|
||||||
if filename == "-" {
|
if filename == "-" {
|
||||||
data, err = ioutil.ReadAll(os.Stdin)
|
data, err = io.ReadAll(os.Stdin)
|
||||||
} else {
|
} else {
|
||||||
data, err = ioutil.ReadFile(filename)
|
data, err = os.ReadFile(filename)
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
|
@ -4,7 +4,6 @@ import (
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
"io/ioutil"
|
|
||||||
"os"
|
"os"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
|
@ -79,9 +78,9 @@ var (
|
||||||
// load file
|
// load file
|
||||||
var data []byte
|
var data []byte
|
||||||
if filename == "-" {
|
if filename == "-" {
|
||||||
data, err = ioutil.ReadAll(os.Stdin)
|
data, err = io.ReadAll(os.Stdin)
|
||||||
} else {
|
} else {
|
||||||
data, err = ioutil.ReadFile(filename)
|
data, err = os.ReadFile(filename)
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
|
@ -3,8 +3,8 @@ package main
|
||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"io"
|
||||||
"io/fs"
|
"io/fs"
|
||||||
"io/ioutil"
|
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"strings"
|
"strings"
|
||||||
|
@ -185,9 +185,9 @@ func verifyLetter(filename string, silent bool) (signedBy []string, err error) {
|
||||||
// load file
|
// load file
|
||||||
var data []byte
|
var data []byte
|
||||||
if filename == "-" {
|
if filename == "-" {
|
||||||
data, err = ioutil.ReadAll(os.Stdin)
|
data, err = io.ReadAll(os.Stdin)
|
||||||
} else {
|
} else {
|
||||||
data, err = ioutil.ReadFile(filename)
|
data, err = os.ReadFile(filename)
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
|
|
@ -16,7 +16,6 @@ import (
|
||||||
const (
|
const (
|
||||||
stdInOutFilename = "-"
|
stdInOutFilename = "-"
|
||||||
letterFileExtension = ".letter"
|
letterFileExtension = ".letter"
|
||||||
sigFileExtension = ".sig"
|
|
||||||
|
|
||||||
warnFileSize = 12000000 // 120MB
|
warnFileSize = 12000000 // 120MB
|
||||||
)
|
)
|
||||||
|
|
17
core_test.go
17
core_test.go
|
@ -225,10 +225,8 @@ func TestCoreAllCombinations(t *testing.T) {
|
||||||
t.Logf("of these, %d were successfully detected as invalid", combinationsDetectedInvalid)
|
t.Logf("of these, %d were successfully detected as invalid", combinationsDetectedInvalid)
|
||||||
}
|
}
|
||||||
|
|
||||||
func testStorage(t *testing.T, suite *Suite) (detectedInvalid bool) {
|
func testStorage(t *testing.T, suite *Suite) (detectedInvalid bool) { //nolint:thelper
|
||||||
t.Helper()
|
t.Logf("testing storage with %s", suite.ID)
|
||||||
|
|
||||||
// t.Logf("testing storage with %s", suite.ID)
|
|
||||||
|
|
||||||
e, err := setupEnvelopeAndTrustStore(t, suite)
|
e, err := setupEnvelopeAndTrustStore(t, suite)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -404,9 +402,7 @@ func setupEnvelopeAndTrustStore(t *testing.T, suite *Suite) (*Envelope, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// check if we are missing key derivation - this is only ok if we are merely signing
|
// check if we are missing key derivation - this is only ok if we are merely signing
|
||||||
if !keyDerPresent &&
|
if !keyDerPresent && len(e.Senders) != len(e.suite.Tools) {
|
||||||
(len(e.suite.Provides.all) != 1 ||
|
|
||||||
!e.suite.Provides.Has(SenderAuthentication)) {
|
|
||||||
return nil, testInvalidToolset(e, "omitting a key derivation tool is only allowed when merely signing")
|
return nil, testInvalidToolset(e, "omitting a key derivation tool is only allowed when merely signing")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -514,9 +510,10 @@ func getOrMakeSignet(t *testing.T, tool tools.ToolLogic, recipient bool, signetI
|
||||||
}
|
}
|
||||||
|
|
||||||
// generateCombinations returns all possible combinations of the given []string slice.
|
// generateCombinations returns all possible combinations of the given []string slice.
|
||||||
// Forked from https://github.com/mxschmitt/golang-combinations/blob/a887187146560effd2677e987b069262f356297f/combinations.go
|
//
|
||||||
// Copyright (c) 2018 Max Schmitt,
|
// Forked from https://github.com/mxschmitt/golang-combinations/blob/a887187146560effd2677e987b069262f356297f/combinations.go
|
||||||
// MIT License.
|
// Copyright (c) 2018 Max Schmitt,
|
||||||
|
// MIT License.
|
||||||
func generateCombinations(set []string) (subsets [][]string) {
|
func generateCombinations(set []string) (subsets [][]string) {
|
||||||
length := uint(len(set))
|
length := uint(len(set))
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,6 @@ package filesig
|
||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io/ioutil"
|
|
||||||
"os"
|
"os"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
|
@ -51,7 +50,7 @@ func SignFile(dataFilePath, signatureFilePath string, metaData map[string]string
|
||||||
return nil, fmt.Errorf("failed to sign file: %w", err)
|
return nil, fmt.Errorf("failed to sign file: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
sigFileData, err := ioutil.ReadFile(signatureFilePath)
|
sigFileData, err := os.ReadFile(signatureFilePath)
|
||||||
var newSigFileData []byte
|
var newSigFileData []byte
|
||||||
switch {
|
switch {
|
||||||
case err == nil:
|
case err == nil:
|
||||||
|
@ -71,7 +70,7 @@ func SignFile(dataFilePath, signatureFilePath string, metaData map[string]string
|
||||||
}
|
}
|
||||||
|
|
||||||
// Write the signature to file.
|
// Write the signature to file.
|
||||||
if err := ioutil.WriteFile(signatureFilePath, newSigFileData, 0o0644); err != nil { //nolint:gosec
|
if err := os.WriteFile(signatureFilePath, newSigFileData, 0o0644); err != nil { //nolint:gosec
|
||||||
return nil, fmt.Errorf("failed to write signature to file: %w", err)
|
return nil, fmt.Errorf("failed to write signature to file: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -86,7 +85,7 @@ func VerifyFile(dataFilePath, signatureFilePath string, metaData map[string]stri
|
||||||
var lastErr error
|
var lastErr error
|
||||||
|
|
||||||
// Read signature from file.
|
// Read signature from file.
|
||||||
sigFileData, err := ioutil.ReadFile(signatureFilePath)
|
sigFileData, err := os.ReadFile(signatureFilePath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("failed to read signature file: %w", err)
|
return nil, fmt.Errorf("failed to read signature file: %w", err)
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,6 +7,7 @@ import (
|
||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Keywords and Prefixes for the export text format.
|
||||||
const (
|
const (
|
||||||
ExportSenderKeyword = "sender"
|
ExportSenderKeyword = "sender"
|
||||||
ExportSenderPrefix = "sender:"
|
ExportSenderPrefix = "sender:"
|
||||||
|
|
|
@ -36,7 +36,7 @@ func Digest(alg Algorithm, data []byte) *LabeledHash {
|
||||||
// DigestFile creates a new labeled hash and digests the given file.
|
// DigestFile creates a new labeled hash and digests the given file.
|
||||||
func DigestFile(alg Algorithm, pathToFile string) (*LabeledHash, error) {
|
func DigestFile(alg Algorithm, pathToFile string) (*LabeledHash, error) {
|
||||||
// Open file that should be hashed.
|
// Open file that should be hashed.
|
||||||
file, err := os.OpenFile(pathToFile, os.O_RDONLY, 0)
|
file, err := os.Open(pathToFile)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("failed to open file: %w", err)
|
return nil, fmt.Errorf("failed to open file: %w", err)
|
||||||
}
|
}
|
||||||
|
@ -181,7 +181,7 @@ func (lh *LabeledHash) Matches(data []byte) bool {
|
||||||
}
|
}
|
||||||
|
|
||||||
// MatchesData returns true if the digest of the given data matches the hash.
|
// MatchesData returns true if the digest of the given data matches the hash.
|
||||||
// DEPRECATED: Use Matches instead.
|
// Deprecated: Use Matches instead.
|
||||||
func (lh *LabeledHash) MatchesData(data []byte) bool {
|
func (lh *LabeledHash) MatchesData(data []byte) bool {
|
||||||
return lh.Equal(Digest(lh.alg, data))
|
return lh.Equal(Digest(lh.alg, data))
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,6 @@ package truststores
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
"io/ioutil"
|
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/safing/jess"
|
"github.com/safing/jess"
|
||||||
|
@ -27,7 +26,7 @@ func WriteSignetToFile(signet *jess.Signet, filename string) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
// write
|
// write
|
||||||
err = ioutil.WriteFile(filename, data, 0o0600)
|
err = os.WriteFile(filename, data, 0o0600)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -37,7 +36,7 @@ func WriteSignetToFile(signet *jess.Signet, filename string) error {
|
||||||
|
|
||||||
// LoadSignetFromFile loads a signet from the given filepath.
|
// LoadSignetFromFile loads a signet from the given filepath.
|
||||||
func LoadSignetFromFile(filename string) (*jess.Signet, error) {
|
func LoadSignetFromFile(filename string) (*jess.Signet, error) {
|
||||||
data, err := ioutil.ReadFile(filename)
|
data, err := os.ReadFile(filename)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if os.IsNotExist(err) {
|
if os.IsNotExist(err) {
|
||||||
return nil, jess.ErrSignetNotFound
|
return nil, jess.ErrSignetNotFound
|
||||||
|
@ -72,7 +71,7 @@ func WriteEnvelopeToFile(envelope *jess.Envelope, filename string) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
// write to storage
|
// write to storage
|
||||||
err = ioutil.WriteFile(filename, data, 0600) //nolint:gofumpt // gofumpt is ignorant of octal numbers.
|
err = os.WriteFile(filename, data, 0600) //nolint:gofumpt // gofumpt is ignorant of octal numbers.
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -82,7 +81,7 @@ func WriteEnvelopeToFile(envelope *jess.Envelope, filename string) error {
|
||||||
|
|
||||||
// LoadEnvelopeFromFile loads an envelope from the given filepath.
|
// LoadEnvelopeFromFile loads an envelope from the given filepath.
|
||||||
func LoadEnvelopeFromFile(filename string) (*jess.Envelope, error) {
|
func LoadEnvelopeFromFile(filename string) (*jess.Envelope, error) {
|
||||||
data, err := ioutil.ReadFile(filename)
|
data, err := os.ReadFile(filename)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if os.IsNotExist(err) {
|
if os.IsNotExist(err) {
|
||||||
return nil, jess.ErrEnvelopeNotFound
|
return nil, jess.ErrEnvelopeNotFound
|
||||||
|
|
Loading…
Add table
Reference in a new issue