Skip to content
Snippets Groups Projects
Commit 2eca2ee4 authored by Sydney Anne Erickson's avatar Sydney Anne Erickson :chipmunk:
Browse files

Fix SendDeleteMessage

parent 93882e4d
No related branches found
No related tags found
No related merge requests found
...@@ -20,10 +20,10 @@ build: ...@@ -20,10 +20,10 @@ build:
go mod tidy go mod tidy
update_release: update_release:
GOFLAGS="" go get -u gitlab.com/elixxir/primitives@peppa/newClient GOFLAGS="" go get -u gitlab.com/elixxir/primitives@release
GOFLAGS="" go get -u gitlab.com/elixxir/crypto@peppa/newClient GOFLAGS="" go get -u gitlab.com/elixxir/crypto@release
GOFLAGS="" go get -u gitlab.com/xx_network/crypto@release GOFLAGS="" go get -u gitlab.com/xx_network/crypto@release
GOFLAGS="" go get -u gitlab.com/elixxir/comms@hotfix/TestingFunction GOFLAGS="" go get -u gitlab.com/elixxir/comms@"Anne/FactCommsHotfix"
GOFLAGS="" go get -u gitlab.com/xx_network/comms@release GOFLAGS="" go get -u gitlab.com/xx_network/comms@release
GOFLAGS="" go get -u gitlab.com/xx_network/primitives@release GOFLAGS="" go get -u gitlab.com/xx_network/primitives@release
......
...@@ -17,11 +17,11 @@ require ( ...@@ -17,11 +17,11 @@ require (
github.com/spf13/jwalterweatherman v1.1.0 github.com/spf13/jwalterweatherman v1.1.0
github.com/spf13/pflag v1.0.5 // indirect github.com/spf13/pflag v1.0.5 // indirect
github.com/spf13/viper v1.7.1 github.com/spf13/viper v1.7.1
gitlab.com/elixxir/comms v0.0.4-0.20201103220934-c476c9282f30 gitlab.com/elixxir/comms v0.0.4-0.20201116215317-0febe6765554
gitlab.com/elixxir/crypto v0.0.5-0.20201109203841-ba162a25be6e gitlab.com/elixxir/crypto v0.0.5-0.20201110193609-6b5e881867b4
gitlab.com/elixxir/ekv v0.1.3 gitlab.com/elixxir/ekv v0.1.3
gitlab.com/elixxir/primitives v0.0.2 gitlab.com/elixxir/primitives v0.0.3-0.20201116174806-97f190989704
gitlab.com/xx_network/comms v0.0.3 gitlab.com/xx_network/comms v0.0.4-0.20201110022115-4a6171cad07d
gitlab.com/xx_network/crypto v0.0.4 gitlab.com/xx_network/crypto v0.0.4
gitlab.com/xx_network/primitives v0.0.2 gitlab.com/xx_network/primitives v0.0.2
golang.org/x/crypto v0.0.0-20201016220609-9e8e0b390897 golang.org/x/crypto v0.0.0-20201016220609-9e8e0b390897
......
This diff is collapsed.
package ud package ud
import ( import (
"crypto/rand"
"github.com/golang/protobuf/proto"
"github.com/golang/protobuf/ptypes/any"
"gitlab.com/elixxir/client/interfaces/contact" "gitlab.com/elixxir/client/interfaces/contact"
"gitlab.com/elixxir/comms/mixmessages" "gitlab.com/elixxir/comms/mixmessages"
"gitlab.com/elixxir/crypto/hash"
"gitlab.com/xx_network/comms/connect" "gitlab.com/xx_network/comms/connect"
"gitlab.com/xx_network/comms/messages" "gitlab.com/xx_network/comms/messages"
"gitlab.com/xx_network/crypto/signature/rsa"
) )
type removeFactComms interface { type removeFactComms interface {
SendDeleteMessage(host *connect.Host, message *messages.AuthenticatedMessage) (*messages.Ack, error) SendDeleteMessage(host *connect.Host, message *mixmessages.FactRemovalRequest) (*messages.Ack, error)
} }
func (m *Manager) RemoveFact(fact contact.Fact) error { func (m *Manager) RemoveFact(fact contact.Fact) error {
...@@ -28,42 +23,14 @@ func (m *Manager) removeFact(fact contact.Fact, rFC removeFactComms) error { ...@@ -28,42 +23,14 @@ func (m *Manager) removeFact(fact contact.Fact, rFC removeFactComms) error {
FactType: uint32(fact.T), FactType: uint32(fact.T),
} }
// Sign the fact
signedFact, err := rsa.Sign(rand.Reader, m.privKey, hash.CMixHash, mmFact.Digest(), rsa.NewDefaultOptions())
if err != nil {
return err
}
// Create our Fact Removal Request message data // Create our Fact Removal Request message data
remFactMsg := mixmessages.FactRemovalRequest{ remFactMsg := mixmessages.FactRemovalRequest{
UID: m.host.GetId().Marshal(), UID: m.host.GetId().Marshal(),
RemovalData: &mmFact, RemovalData: &mmFact,
} }
// Marshal it to bytes for sending over the wire
remFactMsgMarshalled, err := proto.Marshal(&remFactMsg)
if err != nil {
return err
}
// Convert our marshalled Fact Removal Request to an Any
// object for sending in an authed message
remFactMsgAny := any.Any{
TypeUrl: "gitlab.com/elixxir/client/interfaces/contact.Fact",
Value: remFactMsgMarshalled,
}
// Create our AuthenticatedMessage so we can send the data over
msg := messages.AuthenticatedMessage{
ID: nil,
Signature: signedFact,
Token: nil,
Client: nil,
Message: &remFactMsgAny,
}
// Send the message // Send the message
_, err = rFC.SendDeleteMessage(m.host, &msg) _, err := rFC.SendDeleteMessage(m.host, &remFactMsg)
// Return the error // Return the error
return err return err
......
...@@ -3,6 +3,7 @@ package ud ...@@ -3,6 +3,7 @@ package ud
import ( import (
"gitlab.com/elixxir/client/interfaces/contact" "gitlab.com/elixxir/client/interfaces/contact"
"gitlab.com/elixxir/comms/client" "gitlab.com/elixxir/comms/client"
pb "gitlab.com/elixxir/comms/mixmessages"
"gitlab.com/elixxir/crypto/cyclic" "gitlab.com/elixxir/crypto/cyclic"
"gitlab.com/xx_network/comms/connect" "gitlab.com/xx_network/comms/connect"
"gitlab.com/xx_network/comms/messages" "gitlab.com/xx_network/comms/messages"
...@@ -33,7 +34,7 @@ var genericGroup = cyclic.NewGroup( ...@@ -33,7 +34,7 @@ var genericGroup = cyclic.NewGroup(
type testRFC struct{} type testRFC struct{}
func (rFC *testRFC) SendDeleteMessage(host *connect.Host, message *messages.AuthenticatedMessage) (*messages.Ack, error) { func (rFC *testRFC) SendDeleteMessage(host *connect.Host, message *pb.FactRemovalRequest) (*messages.Ack, error) {
return &messages.Ack{}, nil return &messages.Ack{}, nil
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment