From 76f22618a56f9eaca173f3fc65823c226b29fa52 Mon Sep 17 00:00:00 2001 From: Linus Nordberg Date: Mon, 2 May 2022 11:28:31 +0200 Subject: use dns package from sigsum-go Issue: #26 --- cmd/sigsum_log_go/main.go | 2 +- internal/mocks/dns/dns.go | 50 ++++++++++++++++++++++++++++++++++++++++++++ pkg/dns/dns.go | 39 ---------------------------------- pkg/dns/mocks/dns.go | 50 -------------------------------------------- pkg/instance/handler_test.go | 2 +- pkg/instance/instance.go | 2 +- 6 files changed, 53 insertions(+), 92 deletions(-) create mode 100644 internal/mocks/dns/dns.go delete mode 100644 pkg/dns/dns.go delete mode 100644 pkg/dns/mocks/dns.go diff --git a/cmd/sigsum_log_go/main.go b/cmd/sigsum_log_go/main.go index 042c2df..356726a 100644 --- a/cmd/sigsum_log_go/main.go +++ b/cmd/sigsum_log_go/main.go @@ -22,8 +22,8 @@ import ( "google.golang.org/grpc" "git.sigsum.org/sigsum-go/pkg/types" + "git.sigsum.org/sigsum-go/pkg/dns" "git.sigsum.org/log-go/pkg/db" - "git.sigsum.org/log-go/pkg/dns" "git.sigsum.org/log-go/pkg/instance" "git.sigsum.org/log-go/pkg/state" ) diff --git a/internal/mocks/dns/dns.go b/internal/mocks/dns/dns.go new file mode 100644 index 0000000..0cc45fc --- /dev/null +++ b/internal/mocks/dns/dns.go @@ -0,0 +1,50 @@ +// Code generated by MockGen. DO NOT EDIT. +// Source: git.sigsum.org/sigsum-go/pkg/dns (interfaces: Verifier) + +// Package dns is a generated GoMock package. +package dns + +import ( + context "context" + reflect "reflect" + + types "git.sigsum.org/sigsum-go/pkg/types" + gomock "github.com/golang/mock/gomock" +) + +// MockVerifier is a mock of Verifier interface. +type MockVerifier struct { + ctrl *gomock.Controller + recorder *MockVerifierMockRecorder +} + +// MockVerifierMockRecorder is the mock recorder for MockVerifier. +type MockVerifierMockRecorder struct { + mock *MockVerifier +} + +// NewMockVerifier creates a new mock instance. +func NewMockVerifier(ctrl *gomock.Controller) *MockVerifier { + mock := &MockVerifier{ctrl: ctrl} + mock.recorder = &MockVerifierMockRecorder{mock} + return mock +} + +// EXPECT returns an object that allows the caller to indicate expected use. +func (m *MockVerifier) EXPECT() *MockVerifierMockRecorder { + return m.recorder +} + +// Verify mocks base method. +func (m *MockVerifier) Verify(arg0 context.Context, arg1 string, arg2 *types.PublicKey) error { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Verify", arg0, arg1, arg2) + ret0, _ := ret[0].(error) + return ret0 +} + +// Verify indicates an expected call of Verify. +func (mr *MockVerifierMockRecorder) Verify(arg0, arg1, arg2 interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Verify", reflect.TypeOf((*MockVerifier)(nil).Verify), arg0, arg1, arg2) +} diff --git a/pkg/dns/dns.go b/pkg/dns/dns.go deleted file mode 100644 index 5baccc3..0000000 --- a/pkg/dns/dns.go +++ /dev/null @@ -1,39 +0,0 @@ -package dns - -import ( - "context" - "fmt" - "net" - - "git.sigsum.org/sigsum-go/pkg/hex" - "git.sigsum.org/sigsum-go/pkg/types" -) - -// Verifier can verify that a domain name is aware of a public key -type Verifier interface { - Verify(ctx context.Context, name string, key *types.PublicKey) error -} - -// DefaultResolver implements the Verifier interface with Go's default resolver -type DefaultResolver struct { - resolver net.Resolver -} - -func NewDefaultResolver() Verifier { - return &DefaultResolver{} -} - -func (dr *DefaultResolver) Verify(ctx context.Context, name string, key *types.PublicKey) error { - rsp, err := dr.resolver.LookupTXT(ctx, name) - if err != nil { - return fmt.Errorf("domain name look-up failed: %v", err) - } - - want := hex.Serialize(types.HashFn(key[:])[:]) - for _, got := range rsp { - if got == want { - return nil - } - } - return fmt.Errorf("%q is not aware of key hash %q", name, want) -} diff --git a/pkg/dns/mocks/dns.go b/pkg/dns/mocks/dns.go deleted file mode 100644 index 27a32cf..0000000 --- a/pkg/dns/mocks/dns.go +++ /dev/null @@ -1,50 +0,0 @@ -// Code generated by MockGen. DO NOT EDIT. -// Source: git.sigsum.org/sigsum-log-go/pkg/dns (interfaces: Verifier) - -// Package mocks is a generated GoMock package. -package mocks - -import ( - context "context" - reflect "reflect" - - types "git.sigsum.org/sigsum-go/pkg/types" - gomock "github.com/golang/mock/gomock" -) - -// MockVerifier is a mock of Verifier interface. -type MockVerifier struct { - ctrl *gomock.Controller - recorder *MockVerifierMockRecorder -} - -// MockVerifierMockRecorder is the mock recorder for MockVerifier. -type MockVerifierMockRecorder struct { - mock *MockVerifier -} - -// NewMockVerifier creates a new mock instance. -func NewMockVerifier(ctrl *gomock.Controller) *MockVerifier { - mock := &MockVerifier{ctrl: ctrl} - mock.recorder = &MockVerifierMockRecorder{mock} - return mock -} - -// EXPECT returns an object that allows the caller to indicate expected use. -func (m *MockVerifier) EXPECT() *MockVerifierMockRecorder { - return m.recorder -} - -// Verify mocks base method. -func (m *MockVerifier) Verify(arg0 context.Context, arg1 string, arg2 *types.PublicKey) error { - m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Verify", arg0, arg1, arg2) - ret0, _ := ret[0].(error) - return ret0 -} - -// Verify indicates an expected call of Verify. -func (mr *MockVerifierMockRecorder) Verify(arg0, arg1, arg2 interface{}) *gomock.Call { - mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Verify", reflect.TypeOf((*MockVerifier)(nil).Verify), arg0, arg1, arg2) -} diff --git a/pkg/instance/handler_test.go b/pkg/instance/handler_test.go index ab429ae..c7539b7 100644 --- a/pkg/instance/handler_test.go +++ b/pkg/instance/handler_test.go @@ -13,7 +13,7 @@ import ( "time" mocksDB "git.sigsum.org/log-go/pkg/db/mocks" - mocksDNS "git.sigsum.org/log-go/pkg/dns/mocks" + mocksDNS "git.sigsum.org/log-go/internal/mocks/dns" mocksState "git.sigsum.org/log-go/pkg/state/mocks" "git.sigsum.org/sigsum-go/pkg/types" "github.com/golang/mock/gomock" diff --git a/pkg/instance/instance.go b/pkg/instance/instance.go index 4d7582a..7f84bbb 100644 --- a/pkg/instance/instance.go +++ b/pkg/instance/instance.go @@ -8,8 +8,8 @@ import ( "time" "git.sigsum.org/log-go/pkg/db" - "git.sigsum.org/log-go/pkg/dns" "git.sigsum.org/log-go/pkg/state" + "git.sigsum.org/sigsum-go/pkg/dns" "git.sigsum.org/sigsum-go/pkg/requests" "git.sigsum.org/sigsum-go/pkg/types" ) -- cgit v1.2.3