Refactor: Move Signal server and client (#80)

* Move Signal Server

* Move Signal Client

* Cleanup duplicates and unused files

* Moved Signal client tests
This commit is contained in:
Maycon Santos 2021-08-09 19:21:48 +02:00 committed by GitHub
parent 9f0c86c28e
commit d5af5f1878
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 15 additions and 75 deletions

View File

@ -6,8 +6,8 @@ import (
log "github.com/sirupsen/logrus" log "github.com/sirupsen/logrus"
"github.com/spf13/cobra" "github.com/spf13/cobra"
"github.com/wiretrustee/wiretrustee/encryption" "github.com/wiretrustee/wiretrustee/encryption"
sig "github.com/wiretrustee/wiretrustee/signal"
sigProto "github.com/wiretrustee/wiretrustee/signal/proto" sigProto "github.com/wiretrustee/wiretrustee/signal/proto"
"github.com/wiretrustee/wiretrustee/signal/server"
"google.golang.org/grpc" "google.golang.org/grpc"
"google.golang.org/grpc/credentials" "google.golang.org/grpc/credentials"
"google.golang.org/grpc/keepalive" "google.golang.org/grpc/keepalive"
@ -65,7 +65,7 @@ var (
log.Fatalf("failed to listen: %v", err) log.Fatalf("failed to listen: %v", err)
} }
sigProto.RegisterSignalExchangeServer(grpcServer, sig.NewServer()) sigProto.RegisterSignalExchangeServer(grpcServer, server.NewServer())
log.Printf("started server: localhost:%v", signalPort) log.Printf("started server: localhost:%v", signalPort)
if err := grpcServer.Serve(lis); err != nil { if err := grpcServer.Serve(lis); err != nil {
log.Fatalf("failed to serve: %v", err) log.Fatalf("failed to serve: %v", err)

View File

@ -2,6 +2,7 @@ package cmd
import ( import (
"context" "context"
signal "github.com/wiretrustee/wiretrustee/signal/client"
"io" "io"
"os" "os"
"strings" "strings"
@ -12,7 +13,6 @@ import (
"github.com/wiretrustee/wiretrustee/connection" "github.com/wiretrustee/wiretrustee/connection"
"github.com/wiretrustee/wiretrustee/encryption" "github.com/wiretrustee/wiretrustee/encryption"
mgm "github.com/wiretrustee/wiretrustee/management/proto" mgm "github.com/wiretrustee/wiretrustee/management/proto"
sig "github.com/wiretrustee/wiretrustee/signal"
"golang.zx2c4.com/wireguard/wgctrl/wgtypes" "golang.zx2c4.com/wireguard/wgctrl/wgtypes"
"google.golang.org/grpc" "google.golang.org/grpc"
"google.golang.org/grpc/codes" "google.golang.org/grpc/codes"
@ -44,7 +44,7 @@ var (
var sigTLSEnabled = false var sigTLSEnabled = false
ctx := context.Background() ctx := context.Background()
signalClient, err := sig.NewClient(ctx, config.SignalAddr, myKey, sigTLSEnabled) signalClient, err := signal.NewClient(ctx, config.SignalAddr, myKey, sigTLSEnabled)
if err != nil { if err != nil {
log.Errorf("error while connecting to the Signal Exchange Service %s: %s", config.SignalAddr, err) log.Errorf("error while connecting to the Signal Exchange Service %s: %s", config.SignalAddr, err)
os.Exit(ExitSetupFailed) os.Exit(ExitSetupFailed)

View File

@ -6,7 +6,7 @@ import (
ice "github.com/pion/ice/v2" ice "github.com/pion/ice/v2"
log "github.com/sirupsen/logrus" log "github.com/sirupsen/logrus"
"github.com/wiretrustee/wiretrustee/iface" "github.com/wiretrustee/wiretrustee/iface"
"github.com/wiretrustee/wiretrustee/signal" signal "github.com/wiretrustee/wiretrustee/signal/client"
sProto "github.com/wiretrustee/wiretrustee/signal/proto" sProto "github.com/wiretrustee/wiretrustee/signal/proto"
"golang.zx2c4.com/wireguard/wgctrl/wgtypes" "golang.zx2c4.com/wireguard/wgctrl/wgtypes"
"sync" "sync"

View File

@ -6,7 +6,7 @@ import (
ice "github.com/pion/ice/v2" ice "github.com/pion/ice/v2"
log "github.com/sirupsen/logrus" log "github.com/sirupsen/logrus"
"github.com/wiretrustee/wiretrustee/iface" "github.com/wiretrustee/wiretrustee/iface"
sig "github.com/wiretrustee/wiretrustee/signal" signal "github.com/wiretrustee/wiretrustee/signal/client"
"golang.zx2c4.com/wireguard/wgctrl" "golang.zx2c4.com/wireguard/wgctrl"
"golang.zx2c4.com/wireguard/wgctrl/wgtypes" "golang.zx2c4.com/wireguard/wgctrl/wgtypes"
"testing" "testing"
@ -41,7 +41,7 @@ func Test_Start(t *testing.T) {
var sigTLSEnabled = false var sigTLSEnabled = false
signalClient, err := sig.NewClient(ctx, "signal.wiretrustee.com:10000", testKey, sigTLSEnabled) signalClient, err := signal.NewClient(ctx, "signal.wiretrustee.com:10000", testKey, sigTLSEnabled)
if err != nil { if err != nil {
t.Fatal(err) t.Fatal(err)
} }

View File

@ -1,4 +1,4 @@
package signal package client
import ( import (
"context" "context"

View File

@ -1,4 +1,4 @@
package signal_test package client
import ( import (
. "github.com/onsi/ginkgo" . "github.com/onsi/ginkgo"

View File

@ -1,12 +1,12 @@
package signal_test package client
import ( import (
"context" "context"
. "github.com/onsi/ginkgo" . "github.com/onsi/ginkgo"
. "github.com/onsi/gomega" . "github.com/onsi/gomega"
log "github.com/sirupsen/logrus" log "github.com/sirupsen/logrus"
"github.com/wiretrustee/wiretrustee/signal"
sigProto "github.com/wiretrustee/wiretrustee/signal/proto" sigProto "github.com/wiretrustee/wiretrustee/signal/proto"
"github.com/wiretrustee/wiretrustee/signal/server"
"golang.zx2c4.com/wireguard/wgctrl/wgtypes" "golang.zx2c4.com/wireguard/wgctrl/wgtypes"
"google.golang.org/grpc" "google.golang.org/grpc"
"google.golang.org/grpc/keepalive" "google.golang.org/grpc/keepalive"
@ -143,9 +143,9 @@ var _ = Describe("Client", func() {
}) })
func createSignalClient(addr string, key wgtypes.Key) *signal.Client { func createSignalClient(addr string, key wgtypes.Key) *Client {
var sigTLSEnabled = false var sigTLSEnabled = false
client, err := signal.NewClient(context.Background(), addr, key, sigTLSEnabled) client, err := NewClient(context.Background(), addr, key, sigTLSEnabled)
if err != nil { if err != nil {
Fail("failed creating signal client") Fail("failed creating signal client")
} }
@ -173,7 +173,7 @@ func startSignal() (*grpc.Server, net.Listener) {
panic(err) panic(err)
} }
s := grpc.NewServer() s := grpc.NewServer()
sigProto.RegisterSignalExchangeServer(s, signal.NewServer()) sigProto.RegisterSignalExchangeServer(s, server.NewServer())
go func() { go func() {
if err := s.Serve(lis); err != nil { if err := s.Serve(lis); err != nil {
log.Fatalf("failed to serve: %v", err) log.Fatalf("failed to serve: %v", err)

View File

@ -1,41 +0,0 @@
package signal
import (
"github.com/wiretrustee/wiretrustee/encryption"
"golang.zx2c4.com/wireguard/wgctrl/wgtypes"
"testing"
)
func TestEncryptDecrypt(t *testing.T) {
strMsg := "message to encrypt"
bytesMsg := []byte(strMsg)
peerAKey, err := wgtypes.GenerateKey()
if err != nil {
t.Error()
return
}
peerBKey, err := wgtypes.GenerateKey()
if err != nil {
t.Error()
return
}
encryptedMessage, err := encryption.Encrypt(bytesMsg, peerBKey.PublicKey(), peerAKey)
if err != nil {
t.Error(err)
return
}
decryptedMessage, err := encryption.Decrypt(encryptedMessage, peerAKey.PublicKey(), peerBKey)
if err != nil {
t.Error(err)
return
}
if string(decryptedMessage) != strMsg {
t.Error()
}
}

View File

@ -1,19 +0,0 @@
package signal
import (
"crypto/sha256"
"encoding/hex"
)
const (
// HexTable Table of Hexadecimal chars
HexTable = "0123456789abcdef"
)
// FingerPrint generates a SHA256 Fingerprint of the string
func FingerPrint(key string) string {
hasher := sha256.New()
hasher.Write([]byte(key))
sha := hasher.Sum(nil)
return hex.EncodeToString(sha)
}

View File

@ -1,4 +1,4 @@
package signal package server
import ( import (
"context" "context"