diff --git a/api/client.go b/api/client.go index 02d8cb741e863a6d44810615dd9958dcd15e9d28..a7019760a03751caacf9c64b9de92adf4f16b09b 100644 --- a/api/client.go +++ b/api/client.go @@ -13,13 +13,13 @@ import ( jww "github.com/spf13/jwalterweatherman" "gitlab.com/elixxir/client/auth" "gitlab.com/elixxir/client/catalog" + "gitlab.com/elixxir/client/cmix" keyExchange2 "gitlab.com/elixxir/client/e2e/rekey" "gitlab.com/elixxir/client/event" "gitlab.com/elixxir/client/interfaces" "gitlab.com/elixxir/client/interfaces/params" "gitlab.com/elixxir/client/interfaces/preimage" "gitlab.com/elixxir/client/interfaces/user" - "gitlab.com/elixxir/client/network" "gitlab.com/elixxir/client/registration" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" @@ -349,7 +349,7 @@ func Login(storageDir string, password []byte, parameters params.Network) (*Clie } // Initialize network and link it to context - c.network, err = network.NewManager(c.storage, c.switchboard, c.rng, + c.network, err = cmix.NewManager(c.storage, c.switchboard, c.rng, c.events, c.comms, parameters, def) if err != nil { return nil, err @@ -409,7 +409,7 @@ func LoginWithNewBaseNDF_UNSAFE(storageDir string, password []byte, } // Initialize network and link it to context - c.network, err = network.NewManager(c.storage, c.switchboard, c.rng, + c.network, err = cmix.NewManager(c.storage, c.switchboard, c.rng, c.events, c.comms, parameters, def) if err != nil { return nil, err @@ -467,7 +467,7 @@ func LoginWithProtoClient(storageDir string, password []byte, protoClientJSON [] } // Initialize network and link it to context - c.network, err = network.NewManager(c.storage, c.switchboard, c.rng, + c.network, err = cmix.NewManager(c.storage, c.switchboard, c.rng, c.events, c.comms, parameters, def) if err != nil { return nil, err diff --git a/api/send.go b/api/send.go index 3c6cc0178451408221692bb801458e69b4350ef8..5af5704d82b3696693997a7c6911fd08955440dc 100644 --- a/api/send.go +++ b/api/send.go @@ -49,7 +49,7 @@ func (c *Client) SendUnsafe(m message.Send, param params.Unsafe) ([]id.Round, // if it fails. func (c *Client) SendCMIX(msg format.Message, recipientID *id.ID, param params.CMIX) (id.Round, ephemeral.Id, error) { - jww.INFO.Printf("SendCMIX(%s)", string(msg.GetContents())) + jww.INFO.Printf("Send(%s)", string(msg.GetContents())) return c.network.SendCMIX(msg, recipientID, param) } diff --git a/api/utilsInterfaces_test.go b/api/utilsInterfaces_test.go index 01d2f44b4ab200608f6f22ebb65f03df01e0afbf..29b5f8eb9abbc2217c1713cc25764472087701fa 100644 --- a/api/utilsInterfaces_test.go +++ b/api/utilsInterfaces_test.go @@ -7,11 +7,11 @@ package api import ( + "gitlab.com/elixxir/client/cmix/gateway" "gitlab.com/elixxir/client/event" "gitlab.com/elixxir/client/interfaces" "gitlab.com/elixxir/client/interfaces/message" "gitlab.com/elixxir/client/interfaces/params" - "gitlab.com/elixxir/client/network/gateway" "gitlab.com/elixxir/client/stoppable" pb "gitlab.com/elixxir/comms/mixmessages" "gitlab.com/elixxir/comms/network" diff --git a/api/utils_test.go b/api/utils_test.go index 7bfa0836856e31ef230a8660199715d7021153b1..2171ee98fb7645daef91c2fa2cb27c378c6e98a6 100644 --- a/api/utils_test.go +++ b/api/utils_test.go @@ -9,7 +9,7 @@ package api import ( "bytes" - "gitlab.com/elixxir/client/network/gateway" + "gitlab.com/elixxir/client/cmix/gateway" "testing" "github.com/pkg/errors" diff --git a/auth/callbacks.go b/auth/callbacks.go index 428cf29db3411417590935014ce5333f3bd8b242..376a4079d5807dea5b11400f61aaef1c2689711e 100644 --- a/auth/callbacks.go +++ b/auth/callbacks.go @@ -8,8 +8,8 @@ package auth import ( - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity/receptionID" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/crypto/contact" "gitlab.com/xx_network/primitives/id" "sync" diff --git a/auth/confirm.go b/auth/confirm.go index 40f7f82ec491a9af8ccef5221377fd876e405793..a256238edb2d5af358716cd763a79324b2019092 100644 --- a/auth/confirm.go +++ b/auth/confirm.go @@ -13,10 +13,10 @@ import ( jww "github.com/spf13/jwalterweatherman" "gitlab.com/elixxir/client/auth/store" "gitlab.com/elixxir/client/catalog" + "gitlab.com/elixxir/client/cmix" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet/partner/session" "gitlab.com/elixxir/client/event" - "gitlab.com/elixxir/client/network" - "gitlab.com/elixxir/client/network/message" util "gitlab.com/elixxir/client/storage/utility" "gitlab.com/elixxir/crypto/contact" cAuth "gitlab.com/elixxir/crypto/e2e/auth" @@ -144,7 +144,7 @@ func (s *State) confirmRequestAuth(partner contact.Contact, me *id.ID) ( return sentRound, err } -func sendAuthConfirm(net network.Manager, partner, me *id.ID, +func sendAuthConfirm(net cmix.Client, partner, me *id.ID, fp format.Fingerprint, payload, mac []byte, event event.Manager) ( id.Round, error) { svc := message.Service{ @@ -153,10 +153,10 @@ func sendAuthConfirm(net network.Manager, partner, me *id.ID, Metadata: nil, } - cmixParam := network.GetDefaultCMIXParams() + cmixParam := cmix.GetDefaultCMIXParams() cmixParam.DebugTag = "auth.Confirm" cmixParam.Critical = true - sentRound, _, err := net.SendCMIX(partner, fp, svc, payload, mac, cmixParam) + sentRound, _, err := net.Send(partner, fp, svc, payload, mac, cmixParam) if err != nil { // if the send fails just set it to failed, it will but automatically // retried diff --git a/auth/receivedConfirm.go b/auth/receivedConfirm.go index 96d88f4b64cfa50cc949adf7901996334f9a1383..cfc7336282ffdd1c40d4059b0e0559475229b52f 100644 --- a/auth/receivedConfirm.go +++ b/auth/receivedConfirm.go @@ -6,10 +6,10 @@ import ( jww "github.com/spf13/jwalterweatherman" "gitlab.com/elixxir/client/auth/store" "gitlab.com/elixxir/client/catalog" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity/receptionID" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet/partner/session" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity/receptionID" - "gitlab.com/elixxir/client/network/message" "gitlab.com/elixxir/crypto/contact" cAuth "gitlab.com/elixxir/crypto/e2e/auth" "gitlab.com/elixxir/primitives/fact" diff --git a/auth/receivedRequest.go b/auth/receivedRequest.go index 70e43ab01b8d8b0026bcd2bc7e0b99be9849a178..93010fb8f853e95cf3a3902e31d1b1ac0eaeb453 100644 --- a/auth/receivedRequest.go +++ b/auth/receivedRequest.go @@ -7,9 +7,9 @@ import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" "gitlab.com/elixxir/client/auth/store" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/client/e2e/ratchet" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity/receptionID" "gitlab.com/elixxir/crypto/contact" cAuth "gitlab.com/elixxir/crypto/e2e/auth" "gitlab.com/elixxir/primitives/fact" diff --git a/auth/request.go b/auth/request.go index a40acddbd94efab7e0a2f935a6031f3f9a2ffacd..6fe4210cf7106dc8f3128b5ea267c1cc960ccdac 100644 --- a/auth/request.go +++ b/auth/request.go @@ -13,9 +13,9 @@ import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" "gitlab.com/elixxir/client/catalog" + "gitlab.com/elixxir/client/cmix" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet" - "gitlab.com/elixxir/client/network" - "gitlab.com/elixxir/client/network/message" util "gitlab.com/elixxir/client/storage/utility" "gitlab.com/elixxir/crypto/contact" "gitlab.com/elixxir/crypto/cyclic" @@ -112,14 +112,14 @@ func (s *State) requestAuth(partner, me contact.Contact, jww.INFO.Printf("Requesting Auth with %s, msgDigest: %s", partner.ID, format.DigestContents(contents)) - p := network.GetDefaultCMIXParams() + p := cmix.GetDefaultCMIXParams() p.DebugTag = "auth.Request" svc := message.Service{ Identifier: partner.ID.Marshal(), Tag: catalog.Request, Metadata: nil, } - round, _, err := s.net.SendCMIX(partner.ID, requestfp, svc, contents, mac, p) + round, _, err := s.net.Send(partner.ID, requestfp, svc, contents, mac, p) if err != nil { // if the send fails just set it to failed, it will // but automatically retried diff --git a/auth/state.go b/auth/state.go index 052b475f49ea5f8632574414177ae782f5c863f6..93a34792bab5b7f6aeabbac11af9b8ae6b527c2f 100644 --- a/auth/state.go +++ b/auth/state.go @@ -9,11 +9,11 @@ package auth import ( "gitlab.com/elixxir/client/auth/store" + "gitlab.com/elixxir/client/cmix" "gitlab.com/elixxir/client/e2e" "gitlab.com/elixxir/client/event" "gitlab.com/elixxir/client/interfaces" "gitlab.com/elixxir/client/interfaces/message" - "gitlab.com/elixxir/client/network" "gitlab.com/elixxir/client/storage" "gitlab.com/elixxir/client/storage/versioned" "gitlab.com/elixxir/client/switchboard" @@ -27,7 +27,7 @@ type State struct { confirmCallbacks *callbackMap resetCallbacks *callbackMap - net network.Manager + net cmix.Client e2e e2e.Handler rng *fastRNG.StreamGenerator @@ -45,7 +45,7 @@ type identity struct { request, confirm, reset Callback } -func NewManager(kv *versioned.KV, net network.Manager, e2e e2e.Handler, +func NewManager(kv *versioned.KV, net cmix.Client, e2e e2e.Handler, rng *fastRNG.StreamGenerator, event event.Manager, params Param, defaultID []identity) *State { m := &State{ diff --git a/bindings/client.go b/bindings/client.go index 2068bfbfa01b8ca1cc338c919cd50a015a9e28fe..f07598c9386ddcb7d038224be15a9a525960cc20 100644 --- a/bindings/client.go +++ b/bindings/client.go @@ -13,7 +13,7 @@ import ( "encoding/json" "errors" "fmt" - "gitlab.com/elixxir/client/network" + "gitlab.com/elixxir/client/cmix" "runtime/pprof" "strings" "sync" @@ -408,7 +408,7 @@ func (c *Client) RegisterRoundEventsHandler(rid int, cb RoundEventCallback, func (c *Client) WaitForRoundCompletion(roundID int, rec RoundCompletionCallback, timeoutMS int) error { - f := func(allRoundsSucceeded, timedOut bool, rounds map[id.Round]network.RoundLookupStatus) { + f := func(allRoundsSucceeded, timedOut bool, rounds map[id.Round]cmix.RoundLookupStatus) { rec.EventCallback(roundID, allRoundsSucceeded, timedOut) } @@ -443,7 +443,7 @@ func (c *Client) WaitForMessageDelivery(marshaledSendReport []byte, "unmarshal: %s", string(marshaledSendReport))) } - f := func(allRoundsSucceeded, timedOut bool, rounds map[id.Round]network.RoundLookupStatus) { + f := func(allRoundsSucceeded, timedOut bool, rounds map[id.Round]cmix.RoundLookupStatus) { results := make([]byte, len(sr.rl.list)) jww.INFO.Printf("Processing WaitForMessageDelivery report "+ "for %v, success: %v, timedout: %v", sr.mid, allRoundsSucceeded, diff --git a/cmd/root.go b/cmd/root.go index 39f8ee6bdb8244368f32c828f0538ba6185b3605..a3bd31ef5c22245504283d8901ef2f3c3c315c95 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -14,7 +14,7 @@ import ( "encoding/hex" "encoding/json" "fmt" - "gitlab.com/elixxir/client/network" + "gitlab.com/elixxir/client/cmix" "io/ioutil" "log" "os" @@ -378,7 +378,7 @@ var rootCmd = &cobra.Command{ // Construct the callback function which // verifies successful message send or retries f := func(allRoundsSucceeded, timedOut bool, - rounds map[id.Round]network.RoundLookupStatus) { + rounds map[id.Round]cmix.RoundLookupStatus) { printRoundResults(allRoundsSucceeded, timedOut, rounds, roundIDs, msg) if !allRoundsSucceeded { retryChan <- struct{}{} diff --git a/cmd/utils.go b/cmd/utils.go index 5ded04095948763e64f9c7f2bf9725edf295ec61..b7dc952764fdd613914673d6c625bc24ab2613c7 100644 --- a/cmd/utils.go +++ b/cmd/utils.go @@ -4,8 +4,8 @@ import ( "fmt" jww "github.com/spf13/jwalterweatherman" "github.com/spf13/viper" + "gitlab.com/elixxir/client/cmix" "gitlab.com/elixxir/client/interfaces/message" - "gitlab.com/elixxir/client/network" backupCrypto "gitlab.com/elixxir/crypto/backup" "gitlab.com/elixxir/crypto/contact" "gitlab.com/xx_network/primitives/id" @@ -47,7 +47,7 @@ func printChanRequest(requestor contact.Contact) { // Helper function which prints the round resuls func printRoundResults(allRoundsSucceeded, timedOut bool, - rounds map[id.Round]network.RoundLookupStatus, roundIDs []id.Round, msg message.Send) { + rounds map[id.Round]cmix.RoundLookupStatus, roundIDs []id.Round, msg message.Send) { // Done as string slices for easy and human readable printing successfulRounds := make([]string, 0) @@ -58,9 +58,9 @@ func printRoundResults(allRoundsSucceeded, timedOut bool, // Group all round reports into a category based on their // result (successful, failed, or timed out) if result, exists := rounds[r]; exists { - if result == network.Succeeded { + if result == cmix.Succeeded { successfulRounds = append(successfulRounds, strconv.Itoa(int(r))) - } else if result == network.Failed { + } else if result == cmix.Failed { failedRounds = append(failedRounds, strconv.Itoa(int(r))) } else { timedOutRounds = append(timedOutRounds, strconv.Itoa(int(r))) diff --git a/network/address/addressSpace.go b/cmix/address/addressSpace.go similarity index 100% rename from network/address/addressSpace.go rename to cmix/address/addressSpace.go diff --git a/network/address/addressSpace_test.go b/cmix/address/addressSpace_test.go similarity index 100% rename from network/address/addressSpace_test.go rename to cmix/address/addressSpace_test.go diff --git a/network/check.go b/cmix/check.go similarity index 94% rename from network/check.go rename to cmix/check.go index fd84dc88a3c3416107087623cc2e772268037ee5..899fe10db2a7420f493bf70e23d12065245ffd16 100644 --- a/network/check.go +++ b/cmix/check.go @@ -1,8 +1,8 @@ -package network +package cmix import ( "encoding/binary" - "gitlab.com/elixxir/client/network/identity/receptionID/store" + "gitlab.com/elixxir/client/cmix/identity/receptionID/store" "gitlab.com/xx_network/primitives/id" ) diff --git a/network/check_test.go b/cmix/check_test.go similarity index 95% rename from network/check_test.go rename to cmix/check_test.go index 45a3dedd804cd6118f6e8507e6e0ec044bb1760e..515b468cbb83b6127c2af09ac85f3f9fc9508181 100644 --- a/network/check_test.go +++ b/cmix/check_test.go @@ -1,8 +1,8 @@ -package network +package cmix import ( bloom "gitlab.com/elixxir/bloomfilter" - "gitlab.com/elixxir/client/network/identity/receptionID/store" + "gitlab.com/elixxir/client/cmix/identity/receptionID/store" "gitlab.com/elixxir/client/storage/versioned" "gitlab.com/elixxir/comms/mixmessages" "gitlab.com/elixxir/ekv" diff --git a/network/manager.go b/cmix/client.go similarity index 66% rename from network/manager.go rename to cmix/client.go index e47e981832f2c45d6129479d30c6c4454851ba03..a161824c714cd4320d624f97b5b5ff970fd61918 100644 --- a/network/manager.go +++ b/cmix/client.go @@ -5,25 +5,25 @@ // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix // tracker.go controls access to network resources. Interprocess communications // and intra-client state are accessible through the context object. import ( "github.com/pkg/errors" + "gitlab.com/elixxir/client/cmix/address" + "gitlab.com/elixxir/client/cmix/gateway" + "gitlab.com/elixxir/client/cmix/health" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity" + "gitlab.com/elixxir/client/cmix/message" + "gitlab.com/elixxir/client/cmix/nodes" + "gitlab.com/elixxir/client/cmix/rounds" "gitlab.com/elixxir/client/event" - "gitlab.com/elixxir/client/network/address" - "gitlab.com/elixxir/client/network/gateway" - "gitlab.com/elixxir/client/network/health" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity" - "gitlab.com/elixxir/client/network/message" - "gitlab.com/elixxir/client/network/nodes" - "gitlab.com/elixxir/client/network/rounds" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" - "gitlab.com/elixxir/comms/client" + commClient "gitlab.com/elixxir/comms/client" commNetwork "gitlab.com/elixxir/comms/network" "gitlab.com/elixxir/crypto/fastRNG" "gitlab.com/elixxir/primitives/format" @@ -41,13 +41,13 @@ import ( // the earliest round when polling with a fake identity. const fakeIdentityRange = 800 -// manager implements the Manager interface inside context. It controls access +// client implements the Client interface inside context. It controls access // to network resources and implements all the communications functions used by // the client. -// CRITICAL: Manager must be private. It embeds submodules that export functions +// CRITICAL: Client must be private. It embeds submodules that export functions // for it, but not for public consumption. By being private and returning as the // public interface, these can be kept private. -type manager struct { +type client struct { // User Identity Storage session storage.Session // Generic RNG for client @@ -87,17 +87,17 @@ type manager struct { maxMsgLen int } -// NewManager builds a new reception manager object using inputted key fields. -func NewManager(params Params, comms *client.Comms, session storage.Session, +// NewManager builds a new reception client object using inputted key fields. +func NewManager(params Params, comms *commClient.Comms, session storage.Session, ndf *ndf.NetworkDefinition, rng *fastRNG.StreamGenerator, - events event.Manager) (Manager, error) { + events event.Manager) (Client, error) { // Start network instance instance, err := commNetwork.NewInstance( comms.ProtoComms, ndf, nil, nil, commNetwork.None, params.FastPolling) if err != nil { return nil, errors.WithMessage( - err, "failed to create client network manager") + err, "failed to create network client") } tmpMsg := format.NewMessage(session.GetCmixGroup().GetP().ByteLen()) @@ -105,8 +105,8 @@ func NewManager(params Params, comms *client.Comms, session storage.Session, tracker := uint64(0) earliest := uint64(0) - // Create manager object - m := &manager{ + // Create client object + c := &client{ param: params, tracker: &tracker, Space: address.NewAddressSpace(), @@ -118,10 +118,10 @@ func NewManager(params Params, comms *client.Comms, session storage.Session, instance: instance, maxMsgLen: tmpMsg.ContentsSize(), } - m.UpdateAddressSpace(18) + c.UpdateAddressSpace(18) if params.VerboseRoundTracking { - m.verboseRounds = NewRoundTracker() + c.verboseRounds = NewRoundTracker() } /* Set up modules */ @@ -136,58 +136,58 @@ func NewManager(params Params, comms *client.Comms, session storage.Session, // Enable optimized HostPool initialization poolParams.MaxPings = 50 poolParams.ForceConnection = true - m.Sender, err = gateway.NewSender( + c.Sender, err = gateway.NewSender( poolParams, rng, ndf, comms, session, nodeChan) if err != nil { return nil, err } // Set up the node registrar - m.Registrar, err = nodes.LoadRegistrar( - session, m.Sender, m.comms, m.rng, nodeChan) + c.Registrar, err = nodes.LoadRegistrar( + session, c.Sender, c.comms, c.rng, nodeChan) if err != nil { return nil, err } // Set up the historical rounds handler - m.Retriever = historical.NewRetriever( - params.Historical, comms, m.Sender, events) + c.Retriever = historical.NewRetriever( + params.Historical, comms, c.Sender, events) // Set up Message Handler - m.Handler = message.NewHandler(params.Message, m.session.GetKV(), m.events, - m.session.GetReceptionID()) + c.Handler = message.NewHandler(params.Message, c.session.GetKV(), c.events, + c.session.GetReceptionID()) // Set up round handler - m.Pickup = rounds.NewPickup( - params.Rounds, m.Handler.GetMessageReceptionChannel(), m.Sender, - m.Retriever, m.rng, m.instance, m.session) + c.Pickup = rounds.NewPickup( + params.Rounds, c.Handler.GetMessageReceptionChannel(), c.Sender, + c.Retriever, c.rng, c.instance, c.session) // Add the identity system - m.Tracker = identity.NewOrLoadTracker(m.session, m.Space) + c.Tracker = identity.NewOrLoadTracker(c.session, c.Space) // Set up the ability to register with new nodes when they appear - m.instance.SetAddGatewayChan(nodeChan) + c.instance.SetAddGatewayChan(nodeChan) // Set up the health monitor - m.Monitor = health.Init(instance, params.NetworkHealthTimeout) + c.Monitor = health.Init(instance, params.NetworkHealthTimeout) // Set up critical message tracking (sendCmix only) critSender := func(msg format.Message, recipient *id.ID, params CMIXParams, ) (id.Round, ephemeral.Id, error) { - return sendCmixHelper(m.Sender, msg, recipient, params, m.instance, - m.session.GetCmixGroup(), m.Registrar, m.rng, m.events, - m.session.GetTransmissionID(), m.comms) + return sendCmixHelper(c.Sender, msg, recipient, params, c.instance, + c.session.GetCmixGroup(), c.Registrar, c.rng, c.events, + c.session.GetTransmissionID(), c.comms) } - m.crit = newCritical( - session.GetKV(), m.Monitor, m.instance.GetRoundEvents(), critSender) + c.crit = newCritical( + session.GetKV(), c.Monitor, c.instance.GetRoundEvents(), critSender) // Report health events - m.Monitor.AddHealthCallback(func(isHealthy bool) { - m.events.Report(5, "health", "IsHealthy", strconv.FormatBool(isHealthy)) + c.Monitor.AddHealthCallback(func(isHealthy bool) { + c.events.Report(5, "health", "IsHealthy", strconv.FormatBool(isHealthy)) }) - return m, nil + return c, nil } // Follow StartRunners kicks off all network reception goroutines ("threads"). @@ -200,58 +200,58 @@ func NewManager(params Params, comms *client.Comms, session storage.Session, // - Garbled Messages (/network/message/inProgress.go) // - Critical Messages (/network/message/critical.go) // - Ephemeral ID tracking (network/address/tracker.go) -func (m *manager) Follow(report ClientErrorReport) (stoppable.Stoppable, error) { +func (c *client) Follow(report ClientErrorReport) (stoppable.Stoppable, error) { multi := stoppable.NewMulti("networkManager") // health tracker - healthStop, err := m.Monitor.StartProcesses() + healthStop, err := c.Monitor.StartProcesses() if err != nil { return nil, errors.Errorf("failed to follow") } multi.Add(healthStop) // Node Updates - multi.Add(m.Registrar.StartProcesses(m.param.ParallelNodeRegistrations)) // Adding/MixCypher + multi.Add(c.Registrar.StartProcesses(c.param.ParallelNodeRegistrations)) // Adding/MixCypher // TODO: node remover // Start the Network tracker followNetworkStopper := stoppable.NewSingle("FollowNetwork") - go m.followNetwork(report, followNetworkStopper) + go c.followNetwork(report, followNetworkStopper) multi.Add(followNetworkStopper) // Message reception - multi.Add(m.Handler.StartProcesses()) + multi.Add(c.Handler.StartProcesses()) // Round processing - multi.Add(m.Pickup.StartProcessors()) + multi.Add(c.Pickup.StartProcessors()) // Historical rounds processing - multi.Add(m.Retriever.StartProcesses()) + multi.Add(c.Retriever.StartProcesses()) // Start the processes for the identity handler - multi.Add(m.Tracker.StartProcesses()) + multi.Add(c.Tracker.StartProcesses()) return multi, nil } // GetInstance returns the network instance object (NDF state). -func (m *manager) GetInstance() *commNetwork.Instance { - return m.instance +func (c *client) GetInstance() *commNetwork.Instance { + return c.instance } // GetVerboseRounds returns verbose round information. -func (m *manager) GetVerboseRounds() string { - if m.verboseRounds == nil { +func (c *client) GetVerboseRounds() string { + if c.verboseRounds == nil { return "Verbose Round tracking not enabled" } - return m.verboseRounds.String() + return c.verboseRounds.String() } -func (m *manager) SetFakeEarliestRound(rnd id.Round) { - atomic.StoreUint64(m.earliestRound, uint64(rnd)) +func (c *client) SetFakeEarliestRound(rnd id.Round) { + atomic.StoreUint64(c.earliestRound, uint64(rnd)) } // GetMaxMessageLength returns the maximum length of a cMix message. -func (m *manager) GetMaxMessageLength() int { - return m.maxMsgLen +func (c *client) GetMaxMessageLength() int { + return c.maxMsgLen } diff --git a/network/cmixMessageBuffer.go b/cmix/cmixMessageBuffer.go similarity index 99% rename from network/cmixMessageBuffer.go rename to cmix/cmixMessageBuffer.go index 0a916515bbe966992e90d43b3c7be233a095b999..54ba624ab9a203559de9bfcb6340adf1bddec8a6 100644 --- a/network/cmixMessageBuffer.go +++ b/cmix/cmixMessageBuffer.go @@ -5,7 +5,7 @@ // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix import ( "encoding/json" diff --git a/network/cmixMessageBuffer_test.go b/cmix/cmixMessageBuffer_test.go similarity index 99% rename from network/cmixMessageBuffer_test.go rename to cmix/cmixMessageBuffer_test.go index b098518d258389609b281d49ca24cafc6c6a8660..162a69baca54da69c84d4aba5cd170b597115cae 100644 --- a/network/cmixMessageBuffer_test.go +++ b/cmix/cmixMessageBuffer_test.go @@ -5,7 +5,7 @@ // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix import ( "bytes" diff --git a/network/critical.go b/cmix/critical.go similarity index 96% rename from network/critical.go rename to cmix/critical.go index e834ae3f2156ceddafaa8975baf15a35f392b27b..03ebfc7b56429b0fd0e8f588fa5ca2fe2e809491 100644 --- a/network/critical.go +++ b/cmix/critical.go @@ -1,8 +1,8 @@ -package network +package cmix import ( jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/health" + "gitlab.com/elixxir/client/cmix/health" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage/versioned" ds "gitlab.com/elixxir/comms/network/dataStructures" @@ -24,7 +24,7 @@ type roundEventRegistrar interface { // criticalSender is an anonymous function that takes the data critical knows // for sending. It should call sendCmixHelper and use scope sharing in an -// anonymous function to include the structures from manager that critical is +// anonymous function to include the structures from client that critical is // not aware of. type criticalSender func(msg format.Message, recipient *id.ID, params CMIXParams) (id.Round, ephemeral.Id, error) diff --git a/network/critical_test.go b/cmix/critical_test.go similarity index 98% rename from network/critical_test.go rename to cmix/critical_test.go index ffef3d8d3b851982078b423ea5c03c28b30ad90d..5f99738584f45a97a10094f4007d788055f64242 100644 --- a/network/critical_test.go +++ b/cmix/critical_test.go @@ -1,4 +1,4 @@ -package network +package cmix import ( "gitlab.com/elixxir/client/stoppable" diff --git a/network/follow.go b/cmix/follow.go similarity index 82% rename from network/follow.go rename to cmix/follow.go index 4353d9c5374d9e437ad0ebbd399cd6565a1165ff..5bafb3718f4d16e59c006d932b8e567fb0145be4 100644 --- a/network/follow.go +++ b/cmix/follow.go @@ -5,7 +5,7 @@ // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix // follow.go tracks the network for: // 1. The status of the network and its accessibility @@ -28,7 +28,7 @@ import ( "encoding/binary" "fmt" jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/identity/receptionID/store" + "gitlab.com/elixxir/client/cmix/identity/receptionID/store" "gitlab.com/elixxir/client/stoppable" pb "gitlab.com/elixxir/comms/mixmessages" "gitlab.com/elixxir/primitives/knownRounds" @@ -60,16 +60,16 @@ type followNetworkComms interface { // followNetwork polls the network to get updated on the state of nodes, the // round status, and informs the client when messages can be retrieved. -func (m *manager) followNetwork(report ClientErrorReport, +func (c *client) followNetwork(report ClientErrorReport, stop *stoppable.Single) { - ticker := time.NewTicker(m.param.TrackNetworkPeriod) + ticker := time.NewTicker(c.param.TrackNetworkPeriod) TrackTicker := time.NewTicker(debugTrackPeriod) - rng := m.rng.GetStream() + rng := c.rng.GetStream() abandon := func(round id.Round) { return } - if m.verboseRounds != nil { + if c.verboseRounds != nil { abandon = func(round id.Round) { - m.verboseRounds.denote(round, Abandoned) + c.verboseRounds.denote(round, Abandoned) } } @@ -80,40 +80,40 @@ func (m *manager) followNetwork(report ClientErrorReport, stop.ToStopped() return case <-ticker.C: - m.follow(report, rng, m.comms, stop, abandon) + c.follow(report, rng, c.comms, stop, abandon) case <-TrackTicker.C: - numPolls := atomic.SwapUint64(m.tracker, 0) - if m.numLatencies != 0 { + numPolls := atomic.SwapUint64(c.tracker, 0) + if c.numLatencies != 0 { latencyAvg := time.Nanosecond * time.Duration( - m.latencySum/m.numLatencies) - m.latencySum, m.numLatencies = 0, 0 + c.latencySum/c.numLatencies) + c.latencySum, c.numLatencies = 0, 0 infoMsg := fmt.Sprintf("Polled the network %d times in the "+ "last %s, with an average newest packet latency of %s", numPolls, debugTrackPeriod, latencyAvg) jww.INFO.Printf(infoMsg) - m.events.Report(1, "Polling", "MetricsWithLatency", infoMsg) + c.events.Report(1, "Polling", "MetricsWithLatency", infoMsg) } else { infoMsg := fmt.Sprintf( "Polled the network %d times in the last %s", numPolls, debugTrackPeriod) jww.INFO.Printf(infoMsg) - m.events.Report(1, "Polling", "Metrics", infoMsg) + c.events.Report(1, "Polling", "Metrics", infoMsg) } } } } // follow executes each iteration of the follower. -func (m *manager) follow(report ClientErrorReport, rng csprng.Source, +func (c *client) follow(report ClientErrorReport, rng csprng.Source, comms followNetworkComms, stop *stoppable.Single, abandon func(round id.Round)) { // Get the identity we will poll for - identity, err := m.GetEphemeralIdentity( - rng, m.Space.GetAddressSpaceWithoutWait()) + identity, err := c.GetEphemeralIdentity( + rng, c.Space.GetAddressSpaceWithoutWait()) if err != nil { jww.FATAL.Panicf( "Failed to get an identity, this should be impossible: %+v", err) @@ -124,30 +124,30 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, // to be randomly generated rather than based on actual state. if identity.Fake { fakeEr := &store.EarliestRound{} - fakeEr.Set(m.getFakeEarliestRound()) + fakeEr.Set(c.getFakeEarliestRound()) identity.ER = fakeEr } - atomic.AddUint64(m.tracker, 1) + atomic.AddUint64(c.tracker, 1) // Get client version for poll - version := m.session.GetClientVersion() + version := c.session.GetClientVersion() // Poll network updates pollReq := pb.GatewayPoll{ Partial: &pb.NDFHash{ - Hash: m.instance.GetPartialNdf().GetHash(), + Hash: c.instance.GetPartialNdf().GetHash(), }, - LastUpdate: uint64(m.instance.GetLastUpdateID()), + LastUpdate: uint64(c.instance.GetLastUpdateID()), ReceptionID: identity.EphId[:], StartTimestamp: identity.StartValid.UnixNano(), EndTimestamp: identity.EndValid.UnixNano(), ClientVersion: []byte(version.String()), - FastPolling: m.param.FastPolling, + FastPolling: c.param.FastPolling, LastRound: uint64(identity.ER.Get()), } - result, err := m.SendToAny(func(host *connect.Host) (interface{}, error) { + result, err := c.SendToAny(func(host *connect.Host) (interface{}, error) { jww.DEBUG.Printf("Executing poll for %v(%s) range: %s-%s(%s) from %s", identity.EphId.Int64(), identity.Source, identity.StartValid, identity.EndValid, identity.EndValid.Sub(identity.StartValid), @@ -172,7 +172,7 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, ) } errMsg := fmt.Sprintf("Unable to poll gateway: %+v", err) - m.events.Report(10, "Polling", "Error", errMsg) + c.events.Report(10, "Polling", "Error", errMsg) jww.ERROR.Print(errMsg) return } @@ -191,20 +191,20 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, // NOTE: this updates the structure, AND sends events over the nodes update // channels about new and removed nodes if pollResp.PartialNDF != nil { - err = m.instance.UpdatePartialNdf(pollResp.PartialNDF) + err = c.instance.UpdatePartialNdf(pollResp.PartialNDF) if err != nil { jww.ERROR.Printf("Unable to update partial NDF: %+v", err) return } // update gateway connections - m.UpdateNdf(m.GetInstance().GetPartialNdf().Get()) - m.session.SetNDF(m.GetInstance().GetPartialNdf().Get()) + c.UpdateNdf(c.GetInstance().GetPartialNdf().Get()) + c.session.SetNDF(c.GetInstance().GetPartialNdf().Get()) } // Update the address space size - if len(m.instance.GetPartialNdf().Get().AddressSpace) != 0 { - m.UpdateAddressSpace(m.instance.GetPartialNdf().Get().AddressSpace[0].Size) + if len(c.instance.GetPartialNdf().Get().AddressSpace) != 0 { + c.UpdateAddressSpace(c.instance.GetPartialNdf().Get().AddressSpace[0].Size) } // NOTE: this updates rounds and updates the tracking of the health of the @@ -220,7 +220,7 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, continue } - marshaledTid := m.session.GetTransmissionID().Marshal() + marshaledTid := c.session.GetTransmissionID().Marshal() for _, clientErr := range update.ClientErrors { // If this Client appears in the ClientError if bytes.Equal(clientErr.ClientId, marshaledTid) { @@ -239,14 +239,14 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, update.State = uint32(states.FAILED) // trigger a reregistration with the node - m.Registrar.TriggerNodeRegistration(nid) + c.Registrar.TriggerNodeRegistration(nid) } } } // Trigger RoundEvents for all polled updates, including modified rounds // with ClientErrors - err = m.instance.RoundUpdates(pollResp.Updates) + err = c.instance.RoundUpdates(pollResp.Updates) if err != nil { jww.ERROR.Printf("%+v", err) return @@ -263,8 +263,8 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, if newest.After(now) { deltaDur := newest.Sub(now) - m.latencySum = uint64(deltaDur) - m.numLatencies++ + c.latencySum = uint64(deltaDur) + c.numLatencies++ } } @@ -294,8 +294,8 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, // handling threads roundChecker := func(rid id.Round) bool { hasMessage := Checker(rid, filterList, identity.CR) - if !hasMessage && m.verboseRounds != nil { - m.verboseRounds.denote(rid, RoundState(NoMessageAvailable)) + if !hasMessage && c.verboseRounds != nil { + c.verboseRounds.denote(rid, RoundState(NoMessageAvailable)) } return hasMessage } @@ -303,7 +303,7 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, // Move the earliest unknown round tracker forward to the earliest tracked // round if it is behind earliestTrackedRound := id.Round(pollResp.EarliestRound) - m.SetFakeEarliestRound(earliestTrackedRound) + c.SetFakeEarliestRound(earliestTrackedRound) updatedEarliestRound, old, _ := identity.ER.Set(earliestTrackedRound) // If there was no registered rounds for the identity @@ -315,8 +315,8 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, timeSinceStartValid := netTime.Now().Sub(identity.StartValid) roundsDelta := uint(timeSinceStartValid / time.Second * estimatedRoundsPerSecond) - if roundsDelta < m.param.KnownRoundsThreshold { - roundsDelta = m.param.KnownRoundsThreshold + if roundsDelta < c.param.KnownRoundsThreshold { + roundsDelta = c.param.KnownRoundsThreshold } if id.Round(roundsDelta) > lastCheckedRound { @@ -345,13 +345,13 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, // remaining earliestRemaining, roundsWithMessages, roundsUnknown := gwRoundsState.RangeUnchecked( - updatedEarliestRound, m.param.KnownRoundsThreshold, roundChecker) + updatedEarliestRound, c.param.KnownRoundsThreshold, roundChecker) jww.DEBUG.Printf("Processed RangeUnchecked, Oldest: %d, "+ "firstUnchecked: %d, last Checked: %d, threshold: %d, "+ "NewEarliestRemaining: %d, NumWithMessages: %d, NumUnknown: %d", updatedEarliestRound, gwRoundsState.GetFirstUnchecked(), - gwRoundsState.GetLastChecked(), m.param.KnownRoundsThreshold, + gwRoundsState.GetLastChecked(), c.param.KnownRoundsThreshold, earliestRemaining, len(roundsWithMessages), len(roundsUnknown)) _, _, changed := identity.ER.Set(earliestRemaining) @@ -364,7 +364,7 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, var roundsWithMessages2 []id.Round - if !m.param.RealtimeOnly { + if !c.param.RealtimeOnly { roundsWithMessages2 = identity.UR.Iterate(func(rid id.Round) bool { if gwRoundsState.Checked(rid) { return Checker(rid, filterList, identity.CR) @@ -376,7 +376,7 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, for _, rid := range roundsWithMessages { // Denote that the round has been looked at in the tracking store if identity.CR.Check(rid) { - m.GetMessagesFromRound(rid, identity.EphemeralIdentity) + c.GetMessagesFromRound(rid, identity.EphemeralIdentity) } } @@ -388,13 +388,13 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, } for _, rid := range roundsWithMessages2 { - m.GetMessagesFromRound(rid, identity.EphemeralIdentity) + c.GetMessagesFromRound(rid, identity.EphemeralIdentity) } - if m.verboseRounds != nil { + if c.verboseRounds != nil { trackingStart := updatedEarliestRound - if uint(earliestRemaining-updatedEarliestRound) > m.param.KnownRoundsThreshold { - trackingStart = earliestRemaining - id.Round(m.param.KnownRoundsThreshold) + if uint(earliestRemaining-updatedEarliestRound) > c.param.KnownRoundsThreshold { + trackingStart = earliestRemaining - id.Round(c.param.KnownRoundsThreshold) } jww.DEBUG.Printf("Rounds tracked: %v to %v", trackingStart, earliestRemaining) @@ -416,14 +416,14 @@ func (m *manager) follow(report ClientErrorReport, rng csprng.Source, state = Unknown } } - m.verboseRounds.denote(i, RoundState(state)) + c.verboseRounds.denote(i, RoundState(state)) } } } // getFakeEarliestRound generates a random earliest round for a fake identity. -func (m *manager) getFakeEarliestRound() id.Round { +func (c *client) getFakeEarliestRound() id.Round { b, err := csprng.Generate(8, rand.Reader) if err != nil { jww.FATAL.Panicf("Could not get random number: %+v", err) @@ -431,7 +431,7 @@ func (m *manager) getFakeEarliestRound() id.Round { rangeVal := binary.LittleEndian.Uint64(b) % 800 - earliestKnown := atomic.LoadUint64(m.earliestRound) + earliestKnown := atomic.LoadUint64(c.earliestRound) return id.Round(earliestKnown - rangeVal) } diff --git a/network/follow_test.go b/cmix/follow_test.go similarity index 84% rename from network/follow_test.go rename to cmix/follow_test.go index d79f9e093eaf5d215e6a5c28af233077eafd1f54..fbe7a8da3619e45b00ea3b20afa7b075e6bc06bd 100644 --- a/network/follow_test.go +++ b/cmix/follow_test.go @@ -1,9 +1,9 @@ -package network +package cmix //func TestManager_Follow(t *testing.T) { // m, err := newTestManager(t) // if err != nil { -// t.Fatalf("Failed to create test manager: %+v", err) +// t.Fatalf("Failed to create test client: %+v", err) // } // // clientErrorReport := func(source, message, trace string) { diff --git a/network/gateway/hostPool.go b/cmix/gateway/hostPool.go similarity index 100% rename from network/gateway/hostPool.go rename to cmix/gateway/hostPool.go diff --git a/network/gateway/hostpool_test.go b/cmix/gateway/hostpool_test.go similarity index 100% rename from network/gateway/hostpool_test.go rename to cmix/gateway/hostpool_test.go diff --git a/network/gateway/sender.go b/cmix/gateway/sender.go similarity index 100% rename from network/gateway/sender.go rename to cmix/gateway/sender.go diff --git a/network/gateway/sender_test.go b/cmix/gateway/sender_test.go similarity index 100% rename from network/gateway/sender_test.go rename to cmix/gateway/sender_test.go diff --git a/network/gateway/storeHostList.go b/cmix/gateway/storeHostList.go similarity index 100% rename from network/gateway/storeHostList.go rename to cmix/gateway/storeHostList.go diff --git a/network/gateway/storeHostList_test.go b/cmix/gateway/storeHostList_test.go similarity index 100% rename from network/gateway/storeHostList_test.go rename to cmix/gateway/storeHostList_test.go diff --git a/network/gateway/utils_test.go b/cmix/gateway/utils_test.go similarity index 100% rename from network/gateway/utils_test.go rename to cmix/gateway/utils_test.go diff --git a/network/health/tracker.go b/cmix/health/tracker.go similarity index 100% rename from network/health/tracker.go rename to cmix/health/tracker.go diff --git a/network/health/tracker_test.go b/cmix/health/tracker_test.go similarity index 100% rename from network/health/tracker_test.go rename to cmix/health/tracker_test.go diff --git a/network/historical/historical.go b/cmix/historical/historical.go similarity index 99% rename from network/historical/historical.go rename to cmix/historical/historical.go index f21a5e711b3c675edb893e6dfda9731a52cced59..5e5c4faefcd04a92fd3734775aa6a11459c45439 100644 --- a/network/historical/historical.go +++ b/cmix/historical/historical.go @@ -13,8 +13,8 @@ import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" + "gitlab.com/elixxir/client/cmix/gateway" "gitlab.com/elixxir/client/event" - "gitlab.com/elixxir/client/network/gateway" "gitlab.com/elixxir/client/stoppable" pb "gitlab.com/elixxir/comms/mixmessages" "gitlab.com/xx_network/comms/connect" diff --git a/network/historical/historical_test.go b/cmix/historical/historical_test.go similarity index 99% rename from network/historical/historical_test.go rename to cmix/historical/historical_test.go index af3ef9d9dd44ae1d5de64c3d38ce327e6f13ac73..250c66ab6b7066089af308d1ea677ad502f51991 100644 --- a/network/historical/historical_test.go +++ b/cmix/historical/historical_test.go @@ -12,7 +12,7 @@ import ( "testing" "time" - "gitlab.com/elixxir/client/network/gateway" + "gitlab.com/elixxir/client/cmix/gateway" "gitlab.com/elixxir/client/stoppable" pb "gitlab.com/elixxir/comms/mixmessages" "gitlab.com/xx_network/comms/connect" diff --git a/network/historical/params.go b/cmix/historical/params.go similarity index 100% rename from network/historical/params.go rename to cmix/historical/params.go diff --git a/network/historical/round.go b/cmix/historical/round.go similarity index 100% rename from network/historical/round.go rename to cmix/historical/round.go diff --git a/network/identity/receptionID/IdentityUse.go b/cmix/identity/receptionID/IdentityUse.go similarity index 92% rename from network/identity/receptionID/IdentityUse.go rename to cmix/identity/receptionID/IdentityUse.go index e97a2553866ad70f2eb5b84999fa617ee92df4a6..7255a65faafb0d73a4d4d7f44e80e92173d34894 100644 --- a/network/identity/receptionID/IdentityUse.go +++ b/cmix/identity/receptionID/IdentityUse.go @@ -2,7 +2,7 @@ package receptionID import ( "fmt" - "gitlab.com/elixxir/client/network/identity/receptionID/store" + "gitlab.com/elixxir/client/cmix/identity/receptionID/store" "strconv" "strings" ) diff --git a/network/identity/receptionID/fake.go b/cmix/identity/receptionID/fake.go similarity index 100% rename from network/identity/receptionID/fake.go rename to cmix/identity/receptionID/fake.go diff --git a/network/identity/receptionID/fake_test.go b/cmix/identity/receptionID/fake_test.go similarity index 100% rename from network/identity/receptionID/fake_test.go rename to cmix/identity/receptionID/fake_test.go diff --git a/network/identity/receptionID/identity.go b/cmix/identity/receptionID/identity.go similarity index 100% rename from network/identity/receptionID/identity.go rename to cmix/identity/receptionID/identity.go diff --git a/network/identity/receptionID/identity_test.go b/cmix/identity/receptionID/identity_test.go similarity index 100% rename from network/identity/receptionID/identity_test.go rename to cmix/identity/receptionID/identity_test.go diff --git a/network/identity/receptionID/registration.go b/cmix/identity/receptionID/registration.go similarity index 97% rename from network/identity/receptionID/registration.go rename to cmix/identity/receptionID/registration.go index 71be6903f72bea647653851780fd8a59ff958fe5..2655eee3a864558365e1cf2e1d8c6ea81ce2c4a0 100644 --- a/network/identity/receptionID/registration.go +++ b/cmix/identity/receptionID/registration.go @@ -3,7 +3,7 @@ package receptionID import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/identity/receptionID/store" + "gitlab.com/elixxir/client/cmix/identity/receptionID/store" "gitlab.com/elixxir/client/storage/versioned" "gitlab.com/xx_network/primitives/id" "gitlab.com/xx_network/primitives/id/ephemeral" diff --git a/network/identity/receptionID/registration_test.go b/cmix/identity/receptionID/registration_test.go similarity index 100% rename from network/identity/receptionID/registration_test.go rename to cmix/identity/receptionID/registration_test.go diff --git a/network/identity/receptionID/store.go b/cmix/identity/receptionID/store.go similarity index 100% rename from network/identity/receptionID/store.go rename to cmix/identity/receptionID/store.go diff --git a/network/identity/receptionID/store/checkedRounds.go b/cmix/identity/receptionID/store/checkedRounds.go similarity index 100% rename from network/identity/receptionID/store/checkedRounds.go rename to cmix/identity/receptionID/store/checkedRounds.go diff --git a/network/identity/receptionID/store/checkedRounds_test.go b/cmix/identity/receptionID/store/checkedRounds_test.go similarity index 100% rename from network/identity/receptionID/store/checkedRounds_test.go rename to cmix/identity/receptionID/store/checkedRounds_test.go diff --git a/network/identity/receptionID/store/earliestRound.go b/cmix/identity/receptionID/store/earliestRound.go similarity index 100% rename from network/identity/receptionID/store/earliestRound.go rename to cmix/identity/receptionID/store/earliestRound.go diff --git a/network/identity/receptionID/store/unknownRounds.go b/cmix/identity/receptionID/store/unknownRounds.go similarity index 100% rename from network/identity/receptionID/store/unknownRounds.go rename to cmix/identity/receptionID/store/unknownRounds.go diff --git a/network/identity/receptionID/store/unknownRounds_test.go b/cmix/identity/receptionID/store/unknownRounds_test.go similarity index 100% rename from network/identity/receptionID/store/unknownRounds_test.go rename to cmix/identity/receptionID/store/unknownRounds_test.go diff --git a/network/identity/receptionID/store_test.go b/cmix/identity/receptionID/store_test.go similarity index 100% rename from network/identity/receptionID/store_test.go rename to cmix/identity/receptionID/store_test.go diff --git a/network/identity/tracker.go b/cmix/identity/tracker.go similarity index 99% rename from network/identity/tracker.go rename to cmix/identity/tracker.go index 9f3eecebdd945de387addb382d686c0deedc82c7..93cde203c4ca3f3f55516783a14fddcb4d0e329e 100644 --- a/network/identity/tracker.go +++ b/cmix/identity/tracker.go @@ -17,8 +17,8 @@ import ( jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/address" - "gitlab.com/elixxir/client/network/identity/receptionID" + "gitlab.com/elixxir/client/cmix/address" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" "gitlab.com/elixxir/client/storage/versioned" diff --git a/network/interface.go b/cmix/interface.go similarity index 95% rename from network/interface.go rename to cmix/interface.go index b68b0ccc7137c6dff7732c4653012c7b63c8f4ba..d008d4398b37b7851f76a37a19f54feae9e6ef3d 100644 --- a/network/interface.go +++ b/cmix/interface.go @@ -1,11 +1,11 @@ -package network +package cmix import ( - "gitlab.com/elixxir/client/network/gateway" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity" - "gitlab.com/elixxir/client/network/message" - "gitlab.com/elixxir/client/network/nodes" + "gitlab.com/elixxir/client/cmix/gateway" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity" + "gitlab.com/elixxir/client/cmix/message" + "gitlab.com/elixxir/client/cmix/nodes" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/comms/network" "gitlab.com/elixxir/primitives/format" @@ -15,7 +15,7 @@ import ( "time" ) -type Manager interface { +type Client interface { // Follow starts the tracking of the network in a new thread. // Errors that occur are reported on the ClientErrorReport function if // passed. The returned stoppable can be used to stop the follower. @@ -27,7 +27,7 @@ type Manager interface { // GetMaxMessageLength returns the max message size for the current network. GetMaxMessageLength() int - // SendCMIX sends a "raw" cMix message payload to the provided recipient. + // Send sends a "raw" cMix message payload to the provided recipient. // Returns the round ID of the round the payload was sent or an error if it // fails. // This does not have end-to-end encryption on it and is used exclusively as @@ -48,11 +48,11 @@ type Manager interface { // Will return an error if the network is unhealthy or if it fails to send // (along with the reason). Blocks until successful sends or errors. // WARNING: Do not roll your own crypto. - SendCMIX(recipient *id.ID, fingerprint format.Fingerprint, + Send(recipient *id.ID, fingerprint format.Fingerprint, service message.Service, payload, mac []byte, cmixParams CMIXParams) ( id.Round, ephemeral.Id, error) - // SendManyCMIX sends many "raw" cMix message payloads to the provided + // SendMany sends many "raw" cMix message payloads to the provided // recipients all in the same round. // Returns the round ID of the round the payloads was sent or an error if it // fails. @@ -76,7 +76,7 @@ type Manager interface { // Will return an error if the network is unhealthy or if it fails to send // (along with the reason). Blocks until successful send or err. // WARNING: Do not roll your own crypto. - SendManyCMIX(messages []TargetedCmixMessage, p CMIXParams) ( + SendMany(messages []TargetedCmixMessage, p CMIXParams) ( id.Round, []ephemeral.Id, error) /* === Message Reception ================================================ */ @@ -205,7 +205,7 @@ type Manager interface { /* === Nodes ============================================================ */ /* Keys must be registered with nodes in order to send messages through them. This process is, in general, automatically handled by the Network - Manager. */ + Client. */ // HasNode can be used to determine if a keying relationship exists with a // node. @@ -222,7 +222,7 @@ type Manager interface { /* === Rounds =========================================================== */ /* A complete set of round info is not kept on the client, and sometimes the network will need to be queried to get round info. Historical rounds - is the system internal to the Network Manager to do this. It can be used + is the system internal to the Network Client to do this. It can be used externally as well. */ // GetRoundResults adjudicates on the rounds requested. Checks if they are diff --git a/network/message/bundle.go b/cmix/message/bundle.go similarity index 87% rename from network/message/bundle.go rename to cmix/message/bundle.go index 13b1a619a1be45c60d3c73c495b696b79a76f73c..2dd4a582d409495714b1531348fe6d62ab65546c 100644 --- a/network/message/bundle.go +++ b/cmix/message/bundle.go @@ -8,8 +8,8 @@ package message import ( - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity/receptionID" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/primitives/format" "gitlab.com/xx_network/primitives/id" ) diff --git a/network/message/fingerprints.go b/cmix/message/fingerprints.go similarity index 100% rename from network/message/fingerprints.go rename to cmix/message/fingerprints.go diff --git a/network/message/fingerprints_test.go b/cmix/message/fingerprints_test.go similarity index 98% rename from network/message/fingerprints_test.go rename to cmix/message/fingerprints_test.go index 2be40a1f3bef5e8c903abece16d4172945220c59..46407a1b0d94cff0177ba992696e4097d4eee71e 100644 --- a/network/message/fingerprints_test.go +++ b/cmix/message/fingerprints_test.go @@ -9,8 +9,8 @@ package message import ( jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity/receptionID" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/primitives/format" "gitlab.com/xx_network/primitives/id" "reflect" diff --git a/network/message/handler.go b/cmix/message/handler.go similarity index 100% rename from network/message/handler.go rename to cmix/message/handler.go diff --git a/network/message/inProgress.go b/cmix/message/inProgress.go similarity index 98% rename from network/message/inProgress.go rename to cmix/message/inProgress.go index 8f12e8e1da7b2f4285fd79373529437b0a76af65..c21ef6f64493e1978df6c0cc8761c2afc072df60 100644 --- a/network/message/inProgress.go +++ b/cmix/message/inProgress.go @@ -9,7 +9,7 @@ package message import ( jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/historical" + "gitlab.com/elixxir/client/cmix/historical" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/primitives/format" "gitlab.com/xx_network/primitives/id" diff --git a/network/message/inProgress_test.go b/cmix/message/inProgress_test.go similarity index 96% rename from network/message/inProgress_test.go rename to cmix/message/inProgress_test.go index 919090cee3c15c456d6364aed0b3eb9783b5a720..bca0c64bf04ab4fa5c3858f814626018c282c981 100644 --- a/network/message/inProgress_test.go +++ b/cmix/message/inProgress_test.go @@ -2,7 +2,7 @@ package message import ( jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/identity/receptionID" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage/versioned" pb "gitlab.com/elixxir/comms/mixmessages" diff --git a/network/message/meteredCmixMessageBuffer.go b/cmix/message/meteredCmixMessageBuffer.go similarity index 99% rename from network/message/meteredCmixMessageBuffer.go rename to cmix/message/meteredCmixMessageBuffer.go index 8bcecabef5f70f221f9fedcf9b3806a8d714995e..3b43838105dda925bd135f192eeefc9dc34faff1 100644 --- a/network/message/meteredCmixMessageBuffer.go +++ b/cmix/message/meteredCmixMessageBuffer.go @@ -11,7 +11,7 @@ import ( "encoding/json" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/identity/receptionID" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/client/storage/utility" "gitlab.com/elixxir/client/storage/versioned" pb "gitlab.com/elixxir/comms/mixmessages" diff --git a/network/message/meteredCmixMessageBuffer_test.go b/cmix/message/meteredCmixMessageBuffer_test.go similarity index 99% rename from network/message/meteredCmixMessageBuffer_test.go rename to cmix/message/meteredCmixMessageBuffer_test.go index 3260db33d92c431b7d3ecd31830c182fcae2a269..6fed4e9e84d84aa7b1993b33b3f3242329d478d1 100644 --- a/network/message/meteredCmixMessageBuffer_test.go +++ b/cmix/message/meteredCmixMessageBuffer_test.go @@ -10,7 +10,7 @@ package message import ( "bytes" "encoding/json" - "gitlab.com/elixxir/client/network/identity/receptionID" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/client/storage/utility" "gitlab.com/elixxir/client/storage/versioned" pb "gitlab.com/elixxir/comms/mixmessages" diff --git a/network/message/params.go b/cmix/message/params.go similarity index 100% rename from network/message/params.go rename to cmix/message/params.go diff --git a/network/message/pickup.go b/cmix/message/pickup.go similarity index 100% rename from network/message/pickup.go rename to cmix/message/pickup.go diff --git a/network/message/processor.go b/cmix/message/processor.go similarity index 85% rename from network/message/processor.go rename to cmix/message/processor.go index 1e316fb161006c021d7322d65ffc03dca5cb2d73..8df34ae5ae90160e9b8ce1b78a96fb9abc4da2b6 100644 --- a/network/message/processor.go +++ b/cmix/message/processor.go @@ -1,8 +1,8 @@ package message import ( - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity/receptionID" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/primitives/format" ) diff --git a/network/message/serviceGenerators.go b/cmix/message/serviceGenerators.go similarity index 100% rename from network/message/serviceGenerators.go rename to cmix/message/serviceGenerators.go diff --git a/network/message/serviceInterface.go b/cmix/message/serviceInterface.go similarity index 100% rename from network/message/serviceInterface.go rename to cmix/message/serviceInterface.go diff --git a/network/message/serviceTracker.go b/cmix/message/serviceTracker.go similarity index 100% rename from network/message/serviceTracker.go rename to cmix/message/serviceTracker.go diff --git a/network/message/services.go b/cmix/message/services.go similarity index 100% rename from network/message/services.go rename to cmix/message/services.go diff --git a/network/nodes/mixCypher.go b/cmix/nodes/mixCypher.go similarity index 100% rename from network/nodes/mixCypher.go rename to cmix/nodes/mixCypher.go diff --git a/network/nodes/mixCypher_test.go b/cmix/nodes/mixCypher_test.go similarity index 100% rename from network/nodes/mixCypher_test.go rename to cmix/nodes/mixCypher_test.go diff --git a/network/nodes/register.go b/cmix/nodes/register.go similarity index 99% rename from network/nodes/register.go rename to cmix/nodes/register.go index e0d38e5801b3860d166a5e6e61f022bd97d81f90..9cd4502f04a1e9fd16269df09c07f0eb31a1d727 100644 --- a/network/nodes/register.go +++ b/cmix/nodes/register.go @@ -13,7 +13,7 @@ import ( "github.com/golang/protobuf/proto" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/gateway" + "gitlab.com/elixxir/client/cmix/gateway" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" pb "gitlab.com/elixxir/comms/mixmessages" diff --git a/network/nodes/register_test.go b/cmix/nodes/register_test.go similarity index 100% rename from network/nodes/register_test.go rename to cmix/nodes/register_test.go diff --git a/network/nodes/registrar.go b/cmix/nodes/registrar.go similarity index 98% rename from network/nodes/registrar.go rename to cmix/nodes/registrar.go index 6af74986c43e696e11b2f6a820b2cc5d04634d21..460aaab23cae36c329d5d7d44108b0ced07445fd 100644 --- a/network/nodes/registrar.go +++ b/cmix/nodes/registrar.go @@ -3,7 +3,7 @@ package nodes import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/gateway" + "gitlab.com/elixxir/client/cmix/gateway" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" "gitlab.com/elixxir/client/storage/versioned" diff --git a/network/nodes/registrar_test.go b/cmix/nodes/registrar_test.go similarity index 99% rename from network/nodes/registrar_test.go rename to cmix/nodes/registrar_test.go index c0712c5281430bbf0c0daa2baad10be6d9d32f1f..2c006a9b135b016d60f9aadd6b5ae5ecc85ca1a3 100644 --- a/network/nodes/registrar_test.go +++ b/cmix/nodes/registrar_test.go @@ -9,7 +9,7 @@ package nodes import ( "bytes" - "gitlab.com/elixxir/client/network/gateway" + "gitlab.com/elixxir/client/cmix/gateway" "gitlab.com/elixxir/client/storage" commNetwork "gitlab.com/elixxir/comms/network" "gitlab.com/elixxir/crypto/cyclic" diff --git a/network/nodes/store.go b/cmix/nodes/store.go similarity index 100% rename from network/nodes/store.go rename to cmix/nodes/store.go diff --git a/network/nodes/storeKey.go b/cmix/nodes/storeKey.go similarity index 100% rename from network/nodes/storeKey.go rename to cmix/nodes/storeKey.go diff --git a/network/nodes/store_test.go b/cmix/nodes/store_test.go similarity index 100% rename from network/nodes/store_test.go rename to cmix/nodes/store_test.go diff --git a/network/nodes/utils_test.go b/cmix/nodes/utils_test.go similarity index 99% rename from network/nodes/utils_test.go rename to cmix/nodes/utils_test.go index f466463570fc6c1533d9465255974f0f1a8828b4..aeaae339f42dcc07b258e5a83b01e13664b21b66 100644 --- a/network/nodes/utils_test.go +++ b/cmix/nodes/utils_test.go @@ -8,7 +8,7 @@ package nodes import ( - "gitlab.com/elixxir/client/network/gateway" + "gitlab.com/elixxir/client/cmix/gateway" "gitlab.com/elixxir/client/storage" pb "gitlab.com/elixxir/comms/mixmessages" commNetwork "gitlab.com/elixxir/comms/network" diff --git a/network/params.go b/cmix/params.go similarity index 97% rename from network/params.go rename to cmix/params.go index a4c4fa45e0c78082a6b37e0d0e3cabf402e2d9bc..4d61bca66e2895b3827e3327ccf543ce087d72e5 100644 --- a/network/params.go +++ b/cmix/params.go @@ -1,11 +1,11 @@ -package network +package cmix import ( "encoding/base64" "encoding/json" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/message" - "gitlab.com/elixxir/client/network/rounds" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/message" + "gitlab.com/elixxir/client/cmix/rounds" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/primitives/excludedRounds" "gitlab.com/xx_network/primitives/id" diff --git a/network/params_test.go b/cmix/params_test.go similarity index 99% rename from network/params_test.go rename to cmix/params_test.go index c23f4e544a92cd0b1fb2c60ae7518c7cc274cd3d..bb19499b3640c5234ece0b9a14d2cd7789649872 100644 --- a/network/params_test.go +++ b/cmix/params_test.go @@ -5,7 +5,7 @@ // LICENSE file // //////////////////////////////////////////////////////////////////////////////// -package network +package cmix import ( "encoding/json" diff --git a/network/polltracker.go b/cmix/polltracker.go similarity index 98% rename from network/polltracker.go rename to cmix/polltracker.go index 63bc03c90427220a81b6d8c29172516796fc4ead..835a820c548137965d0566178f22cc397c862881 100644 --- a/network/polltracker.go +++ b/cmix/polltracker.go @@ -1,4 +1,4 @@ -package network +package cmix import ( "fmt" diff --git a/network/remoteFilters.go b/cmix/remoteFilters.go similarity index 98% rename from network/remoteFilters.go rename to cmix/remoteFilters.go index dd01c09e8b0c11c9cbad3693b200ad943dfa6c8c..45afbd1a3d1ae7cecbb57a6d47cda17af34f3ba8 100644 --- a/network/remoteFilters.go +++ b/cmix/remoteFilters.go @@ -5,7 +5,7 @@ // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix import ( jww "github.com/spf13/jwalterweatherman" diff --git a/network/remoteFilters_test.go b/cmix/remoteFilters_test.go similarity index 99% rename from network/remoteFilters_test.go rename to cmix/remoteFilters_test.go index bf7c52c779825dbb07e2c3dfc345ee61a1c3420c..b33daa8b4904ec557857724609433b8baf33b8e2 100644 --- a/network/remoteFilters_test.go +++ b/cmix/remoteFilters_test.go @@ -5,7 +5,7 @@ // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix import ( jww "github.com/spf13/jwalterweatherman" diff --git a/network/results.go b/cmix/results.go similarity index 95% rename from network/results.go rename to cmix/results.go index 782532c3feeebc80fb4ab0a9b9e75e1709754042..45f09279de37b13727520a77654c3ce4d84222e1 100644 --- a/network/results.go +++ b/cmix/results.go @@ -5,11 +5,11 @@ // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix import ( "fmt" - "gitlab.com/elixxir/client/network/historical" + "gitlab.com/elixxir/client/cmix/historical" "time" jww "github.com/spf13/jwalterweatherman" @@ -64,22 +64,22 @@ type RoundEventCallback func(allRoundsSucceeded, timedOut bool, rounds map[id.Ro // GetRoundResults adjudicates on the rounds requested. Checks if they are // older rounds or in progress rounds. -func (m *manager) GetRoundResults(timeout time.Duration, +func (c *client) GetRoundResults(timeout time.Duration, roundCallback RoundEventCallback, roundList ...id.Round) error { jww.INFO.Printf("GetRoundResults(%v, %s)", roundList, timeout) sendResults := make(chan ds.EventReturn, len(roundList)) - return m.getRoundResults(roundList, timeout, roundCallback, + return c.getRoundResults(roundList, timeout, roundCallback, sendResults) } // Helper function which does all the logic for GetRoundResults -func (m *manager) getRoundResults(roundList []id.Round, timeout time.Duration, +func (c *client) getRoundResults(roundList []id.Round, timeout time.Duration, roundCallback RoundEventCallback, sendResults chan ds.EventReturn) error { - networkInstance := m.GetInstance() + networkInstance := c.GetInstance() // Generate a message to track all older rounds historicalRequest := make([]id.Round, 0, len(roundList)) @@ -151,7 +151,7 @@ func (m *manager) getRoundResults(roundList []id.Round, timeout time.Duration, Round: round, } } - err := m.Retriever.LookupHistoricalRound(rnd, rrc) + err := c.Retriever.LookupHistoricalRound(rnd, rrc) if err != nil { historicalRoundsCh <- RoundResult{ Status: TimeOut, diff --git a/network/results_test.go b/cmix/results_test.go similarity index 97% rename from network/results_test.go rename to cmix/results_test.go index b2b8b912f8d181c1abf815bc152bea8ee4276985..f8c5986cb96262a2b4354b7aca112fac32991825 100644 --- a/network/results_test.go +++ b/cmix/results_test.go @@ -4,7 +4,7 @@ // Use of this source code is governed by a license that can be found in the // // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix import ( pb "gitlab.com/elixxir/comms/mixmessages" @@ -113,7 +113,7 @@ func TestClient_GetRoundResults_FailedRounds(t *testing.T) { } - // Create a new copy of the test manager for this test + // Create a new copy of the test client for this test m, err := newTestManager(t) if err != nil { t.Fatalf("Failed in setup: %v", err) @@ -178,7 +178,7 @@ func TestClient_GetRoundResults_HistoricalRounds(t *testing.T) { } } - // Create a new copy of the test manager for this test + // Create a new copy of the test client for this test m, err := newTestManager(t) if err != nil { t.Fatalf("Failed in setup: %v", err) @@ -222,7 +222,7 @@ func TestClient_GetRoundResults_Timeout(t *testing.T) { var sendResults chan ds.EventReturn sendResults = nil - // Create a new copy of the test manager for this test + // Create a new copy of the test client for this test m, err := newTestManager(t) if err != nil { t.Fatalf("Failed in setup: %v", err) diff --git a/network/roundTracking.go b/cmix/roundTracking.go similarity index 99% rename from network/roundTracking.go rename to cmix/roundTracking.go index 2d1324e94df21bdc5bc9ce819df6f79c0ced1fc1..534324d272d6d089c00a7dc20cc178116b2baeb9 100644 --- a/network/roundTracking.go +++ b/cmix/roundTracking.go @@ -9,7 +9,7 @@ // accumulate all rounds and then dump on exit. Is only enabled when run through // the command line interface unless enabled explicitly in code. -package network +package cmix import ( "fmt" diff --git a/network/rounds/get.go b/cmix/rounds/get.go similarity index 95% rename from network/rounds/get.go rename to cmix/rounds/get.go index 2954bb69e6ebba6e1a6529a6562f73c0d213855d..774d64fc0b4092b1d4af3a921716fed92b5eba92 100644 --- a/network/rounds/get.go +++ b/cmix/rounds/get.go @@ -9,8 +9,8 @@ package rounds import ( jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity/receptionID" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/xx_network/primitives/id" ) diff --git a/network/rounds/manager.go b/cmix/rounds/manager.go similarity index 90% rename from network/rounds/manager.go rename to cmix/rounds/manager.go index de4c952bbd2205f30f654944c4f4990496e61e86..46e53d5e7c93ef71f15b44517d094aa673b73817 100644 --- a/network/rounds/manager.go +++ b/cmix/rounds/manager.go @@ -8,11 +8,11 @@ package rounds import ( - "gitlab.com/elixxir/client/network/gateway" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity/receptionID" - "gitlab.com/elixxir/client/network/message" - "gitlab.com/elixxir/client/network/rounds/store" + "gitlab.com/elixxir/client/cmix/gateway" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity/receptionID" + "gitlab.com/elixxir/client/cmix/message" + "gitlab.com/elixxir/client/cmix/rounds/store" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" "gitlab.com/elixxir/crypto/fastRNG" diff --git a/network/rounds/params.go b/cmix/rounds/params.go similarity index 100% rename from network/rounds/params.go rename to cmix/rounds/params.go diff --git a/network/rounds/retrieve.go b/cmix/rounds/retrieve.go similarity index 97% rename from network/rounds/retrieve.go rename to cmix/rounds/retrieve.go index 6521a8abdcda8b8a78b3fe448259512b6534ebb5..b3c8e1823f366c2763912e5e62d50a137480fe2f 100644 --- a/network/rounds/retrieve.go +++ b/cmix/rounds/retrieve.go @@ -11,10 +11,10 @@ import ( "encoding/binary" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/gateway" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity/receptionID" - "gitlab.com/elixxir/client/network/message" + "gitlab.com/elixxir/client/cmix/gateway" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity/receptionID" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/stoppable" pb "gitlab.com/elixxir/comms/mixmessages" "gitlab.com/elixxir/crypto/shuffle" diff --git a/network/rounds/retrieve_test.go b/cmix/rounds/retrieve_test.go similarity index 98% rename from network/rounds/retrieve_test.go rename to cmix/rounds/retrieve_test.go index c303d71c4c36c6c5f10efa7f2757b72f10c69312..2a1c940c94d8977a918a3b348390603e8386f7e7 100644 --- a/network/rounds/retrieve_test.go +++ b/cmix/rounds/retrieve_test.go @@ -8,10 +8,10 @@ package rounds import ( "bytes" - "gitlab.com/elixxir/client/network/gateway" - "gitlab.com/elixxir/client/network/historical" - ephemeral2 "gitlab.com/elixxir/client/network/identity/receptionID" - "gitlab.com/elixxir/client/network/message" + "gitlab.com/elixxir/client/cmix/gateway" + "gitlab.com/elixxir/client/cmix/historical" + ephemeral2 "gitlab.com/elixxir/client/cmix/identity/receptionID" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/crypto/fastRNG" "gitlab.com/xx_network/comms/connect" diff --git a/network/rounds/roundGetter.go b/cmix/rounds/roundGetter.go similarity index 100% rename from network/rounds/roundGetter.go rename to cmix/rounds/roundGetter.go diff --git a/network/rounds/store/roundIdentity.go b/cmix/rounds/store/roundIdentity.go similarity index 100% rename from network/rounds/store/roundIdentity.go rename to cmix/rounds/store/roundIdentity.go diff --git a/network/rounds/store/store.go b/cmix/rounds/store/store.go similarity index 100% rename from network/rounds/store/store.go rename to cmix/rounds/store/store.go diff --git a/network/rounds/store/uncheckedRounds.go b/cmix/rounds/store/uncheckedRounds.go similarity index 100% rename from network/rounds/store/uncheckedRounds.go rename to cmix/rounds/store/uncheckedRounds.go diff --git a/network/rounds/store/uncheckedRounds_test.go b/cmix/rounds/store/uncheckedRounds_test.go similarity index 100% rename from network/rounds/store/uncheckedRounds_test.go rename to cmix/rounds/store/uncheckedRounds_test.go diff --git a/network/rounds/unchecked.go b/cmix/rounds/unchecked.go similarity index 96% rename from network/rounds/unchecked.go rename to cmix/rounds/unchecked.go index 61ec17e774ccf4b920926cb202abecc47c0f0590..15859e57fb631f23006c640332a482c5719377c2 100644 --- a/network/rounds/unchecked.go +++ b/cmix/rounds/unchecked.go @@ -9,8 +9,8 @@ package rounds import ( jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/identity/receptionID" - "gitlab.com/elixxir/client/network/rounds/store" + "gitlab.com/elixxir/client/cmix/identity/receptionID" + "gitlab.com/elixxir/client/cmix/rounds/store" "gitlab.com/elixxir/client/stoppable" "gitlab.com/xx_network/primitives/id" "gitlab.com/xx_network/primitives/netTime" diff --git a/network/rounds/unchecked_test.go b/cmix/rounds/unchecked_test.go similarity index 97% rename from network/rounds/unchecked_test.go rename to cmix/rounds/unchecked_test.go index 3f609ad00f7e184f7f2d854bc892db77f09bc8e7..213952c8da85dc8ace613e3d6ce83a0685a95129 100644 --- a/network/rounds/unchecked_test.go +++ b/cmix/rounds/unchecked_test.go @@ -8,8 +8,8 @@ package rounds import ( - "gitlab.com/elixxir/client/network/gateway" - "gitlab.com/elixxir/client/network/message" + "gitlab.com/elixxir/client/cmix/gateway" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/stoppable" pb "gitlab.com/elixxir/comms/mixmessages" "gitlab.com/elixxir/crypto/fastRNG" diff --git a/network/rounds/utils_test.go b/cmix/rounds/utils_test.go similarity index 98% rename from network/rounds/utils_test.go rename to cmix/rounds/utils_test.go index 08995ff1c6c3a3c9381886da5b453f665308395e..f743067287a0c00750edc4e4f775f8d94062053c 100644 --- a/network/rounds/utils_test.go +++ b/cmix/rounds/utils_test.go @@ -9,8 +9,8 @@ package rounds import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/message" - "gitlab.com/elixxir/client/network/rounds/store" + "gitlab.com/elixxir/client/cmix/message" + "gitlab.com/elixxir/client/cmix/rounds/store" "gitlab.com/elixxir/client/storage" pb "gitlab.com/elixxir/comms/mixmessages" "gitlab.com/elixxir/comms/testkeys" diff --git a/network/sendCmix.go b/cmix/sendCmix.go similarity index 81% rename from network/sendCmix.go rename to cmix/sendCmix.go index 382f55fbdc80b6527da3d466c9a9323ce402da91..409ac2dfb34d198c8c8077baf1a27e6b91ff0354 100644 --- a/network/sendCmix.go +++ b/cmix/sendCmix.go @@ -5,16 +5,16 @@ // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix import ( "fmt" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" + "gitlab.com/elixxir/client/cmix/gateway" + "gitlab.com/elixxir/client/cmix/message" + "gitlab.com/elixxir/client/cmix/nodes" "gitlab.com/elixxir/client/event" - "gitlab.com/elixxir/client/network/gateway" - "gitlab.com/elixxir/client/network/message" - "gitlab.com/elixxir/client/network/nodes" "gitlab.com/elixxir/client/stoppable" pb "gitlab.com/elixxir/comms/mixmessages" "gitlab.com/elixxir/comms/network" @@ -53,37 +53,37 @@ import ( // Will return an error if the network is unhealthy or if it fails to send // (along with the reason). Blocks until successful sends or errors. // WARNING: Do not roll your own crypto. -func (m *manager) SendCMIX(recipient *id.ID, fingerprint format.Fingerprint, +func (c *client) Send(recipient *id.ID, fingerprint format.Fingerprint, service message.Service, payload, mac []byte, cmixParams CMIXParams) ( id.Round, ephemeral.Id, error) { - if !m.Monitor.IsHealthy() { + if !c.Monitor.IsHealthy() { return 0, ephemeral.Id{}, errors.New( "Cannot send cmix message when the network is not healthy") } // Build message. Will panic if inputs are not correct. - msg := format.NewMessage(m.session.GetCmixGroup().GetP().ByteLen()) + msg := format.NewMessage(c.session.GetCmixGroup().GetP().ByteLen()) msg.SetKeyFP(fingerprint) msg.SetContents(payload) msg.SetMac(mac) msg.SetSIH(service.Hash(msg.GetContents())) if cmixParams.Critical { - m.crit.AddProcessing(msg, recipient, cmixParams) + c.crit.AddProcessing(msg, recipient, cmixParams) } - rid, ephID, rtnErr := sendCmixHelper(m.Sender, msg, recipient, cmixParams, - m.instance, m.session.GetCmixGroup(), m.Registrar, m.rng, m.events, - m.session.GetTransmissionID(), m.comms) + rid, ephID, rtnErr := sendCmixHelper(c.Sender, msg, recipient, cmixParams, + c.instance, c.session.GetCmixGroup(), c.Registrar, c.rng, c.events, + c.session.GetTransmissionID(), c.comms) if cmixParams.Critical { - m.crit.handle(msg, recipient, rid, rtnErr) + c.crit.handle(msg, recipient, rid, rtnErr) } return rid, ephID, rtnErr } -// sendCmixHelper is a helper function for manager.SendCMIX. +// sendCmixHelper is a helper function for client.SendCMIX. // NOTE: Payloads sent are not end-to-end encrypted; metadata is NOT protected // with this call. See SendE2E for end-to-end encryption and full privacy // protection. @@ -108,7 +108,7 @@ func sendCmixHelper(sender gateway.Sender, msg format.Message, recipient *id.ID, attempted = excludedRounds.NewSet() } - jww.INFO.Printf("[SendCMIX-%s] Looking for round to send cMix message to "+ + jww.INFO.Printf("[Send-%s] Looking for round to send cMix message to "+ "%s (msgDigest: %s)", cmixParams.DebugTag, recipient, msg.Digest()) stream := rng.GetStream() @@ -120,18 +120,18 @@ func sendCmixHelper(sender gateway.Sender, msg format.Message, recipient *id.ID, for numRoundTries := uint(0); numRoundTries < cmixParams.RoundTries; numRoundTries++ { elapsed := netTime.Since(timeStart) - jww.TRACE.Printf("[SendCMIX-%s] try %d, elapsed: %s", + jww.TRACE.Printf("[Send-%s] try %d, elapsed: %s", cmixParams.DebugTag, numRoundTries, elapsed) if elapsed > cmixParams.Timeout { - jww.INFO.Printf("[SendCMIX-%s] No rounds to send to %s "+ + jww.INFO.Printf("[Send-%s] No rounds to send to %s "+ "(msgDigest: %s) were found before timeout %s", cmixParams.DebugTag, recipient, msg.Digest(), cmixParams.Timeout) return 0, ephemeral.Id{}, errors.New("Sending cmix message timed out") } if numRoundTries > 0 { - jww.INFO.Printf("[SendCMIX-%s] Attempt %d to find round to send "+ + jww.INFO.Printf("[Send-%s] Attempt %d to find round to send "+ "message to %s (msgDigest: %s)", cmixParams.DebugTag, numRoundTries+1, recipient, msg.Digest()) } @@ -141,17 +141,17 @@ func sendCmixHelper(sender gateway.Sender, msg format.Message, recipient *id.ID, bestRound, err := instance.GetWaitingRounds().GetUpcomingRealtime( remainingTime, attempted, sendTimeBuffer) if err != nil { - jww.WARN.Printf("[SendCMIX-%s] Failed to GetUpcomingRealtime "+ + jww.WARN.Printf("[Send-%s] Failed to GetUpcomingRealtime "+ "(msgDigest: %s): %+v", cmixParams.DebugTag, msg.Digest(), err) } if bestRound == nil { jww.WARN.Printf( - "[SendCMIX-%s] Best round on send is nil", cmixParams.DebugTag) + "[Send-%s] Best round on send is nil", cmixParams.DebugTag) continue } - jww.TRACE.Printf("[SendCMIX-%s] Best round found: %+v", + jww.TRACE.Printf("[Send-%s] Best round found: %+v", cmixParams.DebugTag, bestRound) // Determine whether the selected round contains any nodes that are @@ -169,7 +169,7 @@ func sendCmixHelper(sender gateway.Sender, msg format.Message, recipient *id.ID, } if containsBlacklisted { - jww.WARN.Printf("[SendCMIX-%s] Round %d contains blacklisted "+ + jww.WARN.Printf("[Send-%s] Round %d contains blacklisted "+ "nodes, skipping...", cmixParams.DebugTag, bestRound.ID) continue } @@ -178,12 +178,12 @@ func sendCmixHelper(sender gateway.Sender, msg format.Message, recipient *id.ID, firstGateway, roundKeys, err := processRound( nodes, bestRound, recipient.String(), msg.Digest()) if err != nil { - jww.WARN.Printf("[SendCMIX-%s] SendCmix failed to process round "+ + jww.WARN.Printf("[Send-%s] SendCmix failed to process round "+ "(will retry): %v", cmixParams.DebugTag, err) continue } - jww.TRACE.Printf("[SendCMIX-%s] Round %v processed, firstGW: %s", + jww.TRACE.Printf("[Send-%s] Round %v processed, firstGW: %s", cmixParams.DebugTag, bestRound, firstGateway) // Build the messages to send @@ -193,7 +193,7 @@ func sendCmixHelper(sender gateway.Sender, msg format.Message, recipient *id.ID, return 0, ephemeral.Id{}, err } - jww.INFO.Printf("[SendCMIX-%s] Sending to EphID %d (%s), on round %d "+ + jww.INFO.Printf("[Send-%s] Sending to EphID %d (%s), on round %d "+ "(msgDigest: %s, ecrMsgDigest: %s) via gateway %s", cmixParams.DebugTag, ephID.Int64(), recipient, bestRound.ID, msg.Digest(), encMsg.Digest(), firstGateway.String()) @@ -204,7 +204,7 @@ func sendCmixHelper(sender gateway.Sender, msg format.Message, recipient *id.ID, wrappedMsg.Target = target.Marshal() jww.TRACE.Printf( - "[SendCMIX-%s] sendFunc %s", cmixParams.DebugTag, host) + "[Send-%s] sendFunc %s", cmixParams.DebugTag, host) // Use the smaller of the two timeout durations timeout = calculateSendTimeout(bestRound, maxTimeout) @@ -215,13 +215,13 @@ func sendCmixHelper(sender gateway.Sender, msg format.Message, recipient *id.ID, // Send the message result, err := comms.SendPutMessage(host, wrappedMsg, timeout) - jww.TRACE.Printf("[SendCMIX-%s] sendFunc %s put message", + jww.TRACE.Printf("[Send-%s] sendFunc %s put message", cmixParams.DebugTag, host) if err != nil { err := handlePutMessageError( firstGateway, nodes, recipient.String(), bestRound, err) - jww.TRACE.Printf("[SendCMIX-%s] sendFunc %s error: %+v", + jww.TRACE.Printf("[Send-%s] sendFunc %s error: %+v", cmixParams.DebugTag, host, err) return result, errors.WithMessagef( err, "SendCmix %s", unrecoverableError) @@ -230,12 +230,12 @@ func sendCmixHelper(sender gateway.Sender, msg format.Message, recipient *id.ID, return result, err } - jww.TRACE.Printf("[SendCMIX-%s] sendToPreferred %s", + jww.TRACE.Printf("[Send-%s] sendToPreferred %s", cmixParams.DebugTag, firstGateway) result, err := sender.SendToPreferred([]*id.ID{firstGateway}, sendFunc, cmixParams.Stop, cmixParams.SendTimeout) - jww.DEBUG.Printf("[SendCMIX-%s] sendToPreferred %s returned", + jww.DEBUG.Printf("[Send-%s] sendToPreferred %s returned", cmixParams.DebugTag, firstGateway) // Exit if the thread has been stopped @@ -246,13 +246,13 @@ func sendCmixHelper(sender gateway.Sender, msg format.Message, recipient *id.ID, // If the comm errors or the message fails to send, continue retrying if err != nil { if strings.Contains(err.Error(), rateLimiting.ClientRateLimitErr) { - jww.ERROR.Printf("[SendCMIX-%s] SendCmix failed to send to "+ + jww.ERROR.Printf("[Send-%s] SendCmix failed to send to "+ "EphID %d (%s) on round %d: %+v", cmixParams.DebugTag, ephID.Int64(), recipient, bestRound.ID, err) return 0, ephemeral.Id{}, err } - jww.ERROR.Printf("[SendCMIX-%s] SendCmix failed to send to "+ + jww.ERROR.Printf("[Send-%s] SendCmix failed to send to "+ "EphID %d (%s) on round %d, trying a new round: %+v", cmixParams.DebugTag, ephID.Int64(), recipient, bestRound.ID, err) continue @@ -261,7 +261,7 @@ func sendCmixHelper(sender gateway.Sender, msg format.Message, recipient *id.ID, // Return if it sends properly gwSlotResp := result.(*pb.GatewaySlotResponse) if gwSlotResp.Accepted { - m := fmt.Sprintf("[SendCMIX-%s] Successfully sent to EphID %v "+ + m := fmt.Sprintf("[Send-%s] Successfully sent to EphID %v "+ "(source: %s) in round %d (msgDigest: %s), elapsed: %s "+ "numRoundTries: %d", cmixParams.DebugTag, ephID.Int64(), recipient, bestRound.ID, msg.Digest(), elapsed, numRoundTries) @@ -271,7 +271,7 @@ func sendCmixHelper(sender gateway.Sender, msg format.Message, recipient *id.ID, return id.Round(bestRound.ID), ephID, nil } else { - jww.FATAL.Panicf("[SendCMIX-%s] Gateway %s returned no error, "+ + jww.FATAL.Panicf("[Send-%s] Gateway %s returned no error, "+ "but failed to accept message when sending to EphID %d (%s) "+ "on round %d", cmixParams.DebugTag, firstGateway, ephID.Int64(), recipient, bestRound.ID) diff --git a/network/sendCmixUtils.go b/cmix/sendCmixUtils.go similarity index 98% rename from network/sendCmixUtils.go rename to cmix/sendCmixUtils.go index 8174fac14273957b729beb03f8365d61c191c398..fd3ad4bc70126cf5661a51068c237bc06cb95709 100644 --- a/network/sendCmixUtils.go +++ b/cmix/sendCmixUtils.go @@ -5,12 +5,12 @@ // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/nodes" + "gitlab.com/elixxir/client/cmix/nodes" pb "gitlab.com/elixxir/comms/mixmessages" "gitlab.com/elixxir/comms/network" "gitlab.com/elixxir/crypto/fastRNG" @@ -25,7 +25,7 @@ import ( "time" ) -// SendCmixCommsInterface is the interface for SendCMIX comms; allows mocking +// SendCmixCommsInterface is the interface for Send comms; allows mocking // this in testing. type SendCmixCommsInterface interface { // SendPutMessage places a cMix message on the gateway to be sent through diff --git a/network/sendCmix_test.go b/cmix/sendCmix_test.go similarity index 94% rename from network/sendCmix_test.go rename to cmix/sendCmix_test.go index 93895bcdb55ac598b1b9e0d64e1c5ee8a4045ef2..d52f626795094102b9e22223bbd5104cfa357d28 100644 --- a/network/sendCmix_test.go +++ b/cmix/sendCmix_test.go @@ -1,7 +1,7 @@ -package network +package cmix import ( - "gitlab.com/elixxir/client/network/message" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/primitives/format" "gitlab.com/xx_network/crypto/csprng" "gitlab.com/xx_network/primitives/id" @@ -113,7 +113,7 @@ func Test_attemptSendCmix(t *testing.T) { func TestManager_SendCMIX(t *testing.T) { m, err := newTestManager(t) if err != nil { - t.Fatalf("Failed to create test manager: %+v", err) + t.Fatalf("Failed to create test client: %+v", err) } recipientID := id.NewIdFromString("zezima", id.User, t) @@ -127,10 +127,10 @@ func TestManager_SendCMIX(t *testing.T) { } mac[0] = 0 params := GetDefaultCMIXParams() - rid, eid, err := m.SendCMIX(recipientID, fp, service, contents, mac, params) + rid, eid, err := m.Send(recipientID, fp, service, contents, mac, params) if err != nil { t.Errorf("Failed to sendcmix: %+v", err) t.FailNow() } - t.Logf("Test of SendCMIX returned:\n\trid: %v\teid: %+v", rid, eid) + t.Logf("Test of Send returned:\n\trid: %v\teid: %+v", rid, eid) } diff --git a/network/sendManyCmix.go b/cmix/sendManyCmix.go similarity index 86% rename from network/sendManyCmix.go rename to cmix/sendManyCmix.go index 35b4b7615f4da31bf71c99b8154ec6c91355a4c9..6e67eff24faa65b815b618d8c6cbef0d5a110b13 100644 --- a/network/sendManyCmix.go +++ b/cmix/sendManyCmix.go @@ -5,16 +5,16 @@ // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix import ( "fmt" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" + "gitlab.com/elixxir/client/cmix/gateway" + "gitlab.com/elixxir/client/cmix/message" + "gitlab.com/elixxir/client/cmix/nodes" "gitlab.com/elixxir/client/event" - "gitlab.com/elixxir/client/network/gateway" - "gitlab.com/elixxir/client/network/message" - "gitlab.com/elixxir/client/network/nodes" "gitlab.com/elixxir/client/stoppable" pb "gitlab.com/elixxir/comms/mixmessages" "gitlab.com/elixxir/comms/network" @@ -65,16 +65,16 @@ type TargetedCmixMessage struct { // Will return an error if the network is unhealthy or if it fails to send // (along with the reason). Blocks until successful send or err. // WARNING: Do not roll your own crypto -func (m *manager) SendManyCMIX(messages []TargetedCmixMessage, +func (c *client) SendMany(messages []TargetedCmixMessage, p CMIXParams) (id.Round, []ephemeral.Id, error) { - if !m.Monitor.IsHealthy() { + if !c.Monitor.IsHealthy() { return 0, []ephemeral.Id{}, errors.New( "Cannot send cMix message when the network is not healthy") } acms := make([]assembledCmixMessage, len(messages)) for i := range messages { - msg := format.NewMessage(m.session.GetCmixGroup().GetP().ByteLen()) + msg := format.NewMessage(c.session.GetCmixGroup().GetP().ByteLen()) msg.SetKeyFP(messages[i].Fingerprint) msg.SetContents(messages[i].Payload) msg.SetMac(messages[i].Mac) @@ -86,9 +86,9 @@ func (m *manager) SendManyCMIX(messages []TargetedCmixMessage, } } - return sendManyCmixHelper(m.Sender, acms, p, - m.instance, m.session.GetCmixGroup(), m.Registrar, m.rng, m.events, - m.session.GetTransmissionID(), m.comms) + return sendManyCmixHelper(c.Sender, acms, p, + c.instance, c.session.GetCmixGroup(), c.Registrar, c.rng, c.events, + c.session.GetTransmissionID(), c.comms) } type assembledCmixMessage struct { @@ -96,11 +96,11 @@ type assembledCmixMessage struct { Message format.Message } -// sendManyCmixHelper is a helper function for manager.SendManyCMIX. +// sendManyCmixHelper is a helper function for client.SendManyCMIX. // // NOTE: Payloads sent are not end-to-end encrypted, metadata is NOT protected // with this call; see SendE2E for end-to-end encryption and full privacy -// protection. Internal SendManyCMIX, which bypasses the network check, will +// protection. Internal SendMany, which bypasses the network check, will // attempt to send to the network without checking state. It has a built-in // retry system which can be configured through the params object. // @@ -126,7 +126,7 @@ func sendManyCmixHelper(sender gateway.Sender, recipientString, msgDigests := messageListToStrings(msgs) - jww.INFO.Printf("[SendManyCMIX-%s] Looking for round to send cMix "+ + jww.INFO.Printf("[SendMany-%s] Looking for round to send cMix "+ "messages to [%s] (msgDigest: %s)", param.DebugTag, recipientString, msgDigests) @@ -143,7 +143,7 @@ func sendManyCmixHelper(sender gateway.Sender, elapsed := netTime.Since(timeStart) if elapsed > param.Timeout { - jww.INFO.Printf("[SendManyCMIX-%s] No rounds to send to %s "+ + jww.INFO.Printf("[SendMany-%s] No rounds to send to %s "+ "(msgDigest: %s) were found before timeout %s", param.DebugTag, recipientString, msgDigests, param.Timeout) return 0, []ephemeral.Id{}, @@ -151,7 +151,7 @@ func sendManyCmixHelper(sender gateway.Sender, } if numRoundTries > 0 { - jww.INFO.Printf("[SendManyCMIX-%s] Attempt %d to find round to "+ + jww.INFO.Printf("[SendMany-%s] Attempt %d to find round to "+ "send message to %s (msgDigest: %s)", param.DebugTag, numRoundTries+1, recipientString, msgDigests) } @@ -179,7 +179,7 @@ func sendManyCmixHelper(sender gateway.Sender, } } if containsBlacklisted { - jww.WARN.Printf("[SendManyCMIX-%s] Round %d contains blacklisted "+ + jww.WARN.Printf("[SendMany-%s] Round %d contains blacklisted "+ "nodes, skipping...", param.DebugTag, bestRound.ID) continue } @@ -188,9 +188,9 @@ func sendManyCmixHelper(sender gateway.Sender, firstGateway, roundKeys, err := processRound( registrar, bestRound, recipientString, msgDigests) if err != nil { - jww.INFO.Printf("[SendManyCMIX-%s] Error processing round: %v", + jww.INFO.Printf("[SendMany-%s] Error processing round: %v", param.DebugTag, err) - jww.WARN.Printf("[SendManyCMIX-%s] SendManyCMIX failed to "+ + jww.WARN.Printf("[SendMany-%s] SendMany failed to "+ "process round %d (will retry): %+v", param.DebugTag, bestRound.ID, err) continue @@ -207,7 +207,7 @@ func sendManyCmixHelper(sender gateway.Sender, bestRound, roundKeys) if err != nil { stream.Close() - jww.INFO.Printf("[SendManyCMIX-%s] Error building slot "+ + jww.INFO.Printf("[SendMany-%s] Error building slot "+ "received: %v", param.DebugTag, err) return 0, []ephemeral.Id{}, errors.Errorf("failed to build "+ "slot message for %s: %+v", msg.Recipient, err) @@ -220,7 +220,7 @@ func sendManyCmixHelper(sender gateway.Sender, ephemeralIDsString := ephemeralIdListToString(ephemeralIDs) encMsgsDigest := messagesToDigestString(encMsgs) - jww.INFO.Printf("[SendManyCMIX-%s]Sending to EphIDs [%s] (%s) on round %d, "+ + jww.INFO.Printf("[SendMany-%s]Sending to EphIDs [%s] (%s) on round %d, "+ "(msgDigest: %s, ecrMsgDigest: %s) via gateway %s", param.DebugTag, ephemeralIDsString, recipientString, bestRound.ID, msgDigests, encMsgsDigest, firstGateway) @@ -247,7 +247,7 @@ func sendManyCmixHelper(sender gateway.Sender, err := handlePutMessageError(firstGateway, registrar, recipientString, bestRound, err) return result, errors.WithMessagef(err, - "SendManyCMIX %s (via %s): %s", + "SendMany %s (via %s): %s", target, host, unrecoverableError) } @@ -264,15 +264,15 @@ func sendManyCmixHelper(sender gateway.Sender, // If the comm errors or the message fails to send, continue retrying if err != nil { if !strings.Contains(err.Error(), unrecoverableError) { - jww.ERROR.Printf("[SendManyCMIX-%s] SendManyCMIX failed to "+ + jww.ERROR.Printf("[SendMany-%s] SendMany failed to "+ "send to EphIDs [%s] (sources: %s) on round %d, trying "+ "a new round %+v", param.DebugTag, ephemeralIDsString, recipientString, bestRound.ID, err) - jww.INFO.Printf("[SendManyCMIX-%s] Error received, "+ + jww.INFO.Printf("[SendMany-%s] Error received, "+ "continuing: %v", param.DebugTag, err) continue } else { - jww.INFO.Printf("[SendManyCMIX-%s] Error received: %v", + jww.INFO.Printf("[SendMany-%s] Error received: %v", param.DebugTag, err) } return 0, []ephemeral.Id{}, err @@ -281,7 +281,7 @@ func sendManyCmixHelper(sender gateway.Sender, // Return if it sends properly gwSlotResp := result.(*pb.GatewaySlotResponse) if gwSlotResp.Accepted { - m := fmt.Sprintf("[SendManyCMIX-%s] Successfully sent to EphIDs "+ + m := fmt.Sprintf("[SendMany-%s] Successfully sent to EphIDs "+ "%s (sources: [%s]) in round %d (msgDigest: %s)", param.DebugTag, ephemeralIDsString, recipientString, bestRound.ID, msgDigests) @@ -289,7 +289,7 @@ func sendManyCmixHelper(sender gateway.Sender, events.Report(1, "MessageSendMany", "Metric", m) return id.Round(bestRound.ID), ephemeralIDs, nil } else { - jww.FATAL.Panicf("[SendManyCMIX-%s] Gateway %s returned no "+ + jww.FATAL.Panicf("[SendMany-%s] Gateway %s returned no "+ "error, but failed to accept message when sending to EphIDs "+ "[%s] (%s) on round %d", param.DebugTag, firstGateway, ephemeralIDsString, recipientString, bestRound.ID) diff --git a/network/sendManyCmix_test.go b/cmix/sendManyCmix_test.go similarity index 94% rename from network/sendManyCmix_test.go rename to cmix/sendManyCmix_test.go index 6e04bc8461ee105f6b53a146b11f1631684a5f46..8a90b405719d7d00324a6496167975b7ca8eb853 100644 --- a/network/sendManyCmix_test.go +++ b/cmix/sendManyCmix_test.go @@ -1,7 +1,7 @@ -package network +package cmix import ( - "gitlab.com/elixxir/client/network/message" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/primitives/format" "gitlab.com/xx_network/crypto/csprng" "gitlab.com/xx_network/primitives/id" @@ -151,7 +151,7 @@ func Test_attemptSendManyCmix(t *testing.T) { func TestManager_SendManyCMIX(t *testing.T) { m, err := newTestManager(t) if err != nil { - t.Fatalf("Failed to create test manager: %+v", err) + t.Fatalf("Failed to create test client: %+v", err) } recipientID := id.NewIdFromString("zezima", id.User, t) @@ -181,10 +181,10 @@ func TestManager_SendManyCMIX(t *testing.T) { }, } - rid, eid, err := m.SendManyCMIX(messages, GetDefaultCMIXParams()) + rid, eid, err := m.SendMany(messages, GetDefaultCMIXParams()) if err != nil { - t.Errorf("Failed to run SendManyCMIX: %+v", err) + t.Errorf("Failed to run SendMany: %+v", err) } - t.Logf("Test of SendManyCMIX returned:\n\trid: %v\teid: %+v", rid, eid) + t.Logf("Test of SendMany returned:\n\trid: %v\teid: %+v", rid, eid) } diff --git a/network/trackResults.go b/cmix/trackResults.go similarity index 98% rename from network/trackResults.go rename to cmix/trackResults.go index 1f17b2cfe4e8cdbd0465793008e85826f92bf26b..c27b259408fe814d9fc1218b0f49047bc3ad4564 100644 --- a/network/trackResults.go +++ b/cmix/trackResults.go @@ -5,7 +5,7 @@ // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix import ( jww "github.com/spf13/jwalterweatherman" diff --git a/network/utils_test.go b/cmix/utils_test.go similarity index 98% rename from network/utils_test.go rename to cmix/utils_test.go index eb81f93621904bd29de429b90054dcbb2fa655c2..f670fa206740b4609c4f8f60d1f2414058c31cae 100644 --- a/network/utils_test.go +++ b/cmix/utils_test.go @@ -4,16 +4,16 @@ // Use of this source code is governed by a license that can be found in the // // LICENSE file // /////////////////////////////////////////////////////////////////////////////// -package network +package cmix import ( "github.com/pkg/errors" - "gitlab.com/elixxir/client/network/gateway" - "gitlab.com/elixxir/client/network/nodes" + "gitlab.com/elixxir/client/cmix/gateway" + "gitlab.com/elixxir/client/cmix/nodes" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" "gitlab.com/elixxir/client/storage/versioned" - "gitlab.com/elixxir/comms/client" + commClient "gitlab.com/elixxir/comms/client" "gitlab.com/elixxir/comms/mixmessages" commsNetwork "gitlab.com/elixxir/comms/network" ds "gitlab.com/elixxir/comms/network/dataStructures" @@ -209,10 +209,10 @@ func mockFailCriticalSender(msg format.Message, recipient *id.ID, return id.Round(1), ephemeral.Id{}, errors.New("Test error") } -func newTestManager(t *testing.T) (*manager, error) { +func newTestManager(t *testing.T) (*client, error) { kv := versioned.NewKV(ekv.Memstore{}) myID := id.NewIdFromString("zezima", id.User, t) - comms, err := client.NewClientComms(myID, nil, nil, nil) + comms, err := commClient.NewClientComms(myID, nil, nil, nil) if err != nil { return nil, err } @@ -259,7 +259,7 @@ func newTestManager(t *testing.T) (*manager, error) { rnd := ds.NewRound(ri, pubKey, nil) inst.GetWaitingRounds().Insert([]*ds.Round{rnd}, nil) - m := &manager{ + m := &client{ session: storage.InitTestingSession(t), rng: fastRNG.NewStreamGenerator(1000, 10, csprng.NewSystemRNG), instance: inst, diff --git a/dummy/send.go b/dummy/send.go index e3d0818e31e57000c5a6cfc2b553e2899b2ee539..4b4722251055773072551a025c1ca65575ff7c40 100644 --- a/dummy/send.go +++ b/dummy/send.go @@ -106,7 +106,7 @@ func (m *Manager) sendMessages(msgs map[id.ID]format.Message) error { _, _, err := m.net.SendCMIX(msg, &recipient, p) if err != nil { jww.WARN.Printf("Failed to send dummy message %d/%d via "+ - "SendCMIX: %+v", i, len(msgs), err) + "Send: %+v", i, len(msgs), err) } else { atomic.AddInt64(&sent, 1) } diff --git a/dummy/utils_test.go b/dummy/utils_test.go index 12af098f4046497b493c2fc7b3a06f383883706b..c6ecaf36b9906501bf1b1c8276c7dd464e2c85ef 100644 --- a/dummy/utils_test.go +++ b/dummy/utils_test.go @@ -9,11 +9,11 @@ package dummy import ( "github.com/pkg/errors" + "gitlab.com/elixxir/client/cmix/gateway" "gitlab.com/elixxir/client/event" "gitlab.com/elixxir/client/interfaces" "gitlab.com/elixxir/client/interfaces/message" "gitlab.com/elixxir/client/interfaces/params" - "gitlab.com/elixxir/client/network/gateway" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" "gitlab.com/elixxir/comms/network" @@ -127,7 +127,7 @@ func (tnm *testNetworkManager) SendCMIX(message format.Message, defer tnm.Unlock() if tnm.sendErr { - return 0, ephemeral.Id{}, errors.New("SendCMIX error") + return 0, ephemeral.Id{}, errors.New("Send error") } tnm.messages[*recipient] = message diff --git a/e2e/critical.go b/e2e/critical.go index 698f4b61e8869eb2ce3fe5be6c4fcd90662a4f25..9019dfee70ae1ea68a8e349d9ea0c8bc34b7eddf 100644 --- a/e2e/critical.go +++ b/e2e/critical.go @@ -3,7 +3,7 @@ package e2e import ( jww "github.com/spf13/jwalterweatherman" "gitlab.com/elixxir/client/catalog" - "gitlab.com/elixxir/client/network" + "gitlab.com/elixxir/client/cmix" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage/versioned" ds "gitlab.com/elixxir/comms/network/dataStructures" @@ -85,7 +85,7 @@ func (c *critical) handle(mt catalog.MessageType, recipient *id.ID, rid, sendResults, 1*time.Minute, states.COMPLETED, states.FAILED) } - success, numTimeOut, _ := network.TrackResults(sendResults, len(rids)) + success, numTimeOut, _ := cmix.TrackResults(sendResults, len(rids)) if !success { if numTimeOut > 0 { jww.ERROR.Printf("Critical e2e message resend to %s "+ diff --git a/e2e/e2eMessageBuffer_test.go b/e2e/e2eMessageBuffer_test.go index fb3e1d2f71b3c7b56202df09cc2b786609373d68..b10433dac17a2f72b7b71bfb6903e5c6731f0a26 100644 --- a/e2e/e2eMessageBuffer_test.go +++ b/e2e/e2eMessageBuffer_test.go @@ -10,7 +10,7 @@ package e2e import ( "encoding/json" "gitlab.com/elixxir/client/catalog" - "gitlab.com/elixxir/client/network" + "gitlab.com/elixxir/client/cmix" "gitlab.com/elixxir/client/storage/utility" "gitlab.com/elixxir/client/storage/versioned" "gitlab.com/elixxir/ekv" @@ -178,7 +178,7 @@ func TestE2EParamMarshalUnmarshal(t *testing.T) { Payload: []byte{1, 2, 3, 4, 5, 6, 7, 8, 9}, MessageType: 42, Params: Params{ - CMIX: network.CMIXParams{ + CMIX: cmix.CMIXParams{ RoundTries: 6, Timeout: 99, RetryDelay: -4, diff --git a/e2e/interface.go b/e2e/interface.go index 96496eda48a4e13722df818ff2599ddd66e38541..670311b885e461e9a89242d6c2a98d18a77f3afa 100644 --- a/e2e/interface.go +++ b/e2e/interface.go @@ -3,10 +3,10 @@ package e2e import ( "github.com/cloudflare/circl/dh/sidh" "gitlab.com/elixxir/client/catalog" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet/partner" "gitlab.com/elixxir/client/e2e/ratchet/partner/session" "gitlab.com/elixxir/client/e2e/receive" - "gitlab.com/elixxir/client/network/message" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/crypto/cyclic" "gitlab.com/elixxir/crypto/e2e" diff --git a/e2e/manager.go b/e2e/manager.go index 0dd00ab243d25e5e83a561d4ca53e7d23eb29b55..56c940e8a436f0bc366e02a5a60834f7e339cb8d 100644 --- a/e2e/manager.go +++ b/e2e/manager.go @@ -4,13 +4,13 @@ import ( "encoding/json" "github.com/pkg/errors" "gitlab.com/elixxir/client/catalog" + "gitlab.com/elixxir/client/cmix" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/parse" "gitlab.com/elixxir/client/e2e/ratchet" "gitlab.com/elixxir/client/e2e/receive" "gitlab.com/elixxir/client/e2e/rekey" "gitlab.com/elixxir/client/event" - "gitlab.com/elixxir/client/network" - "gitlab.com/elixxir/client/network/message" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage/versioned" "gitlab.com/elixxir/crypto/cyclic" @@ -24,7 +24,7 @@ type manager struct { *ratchet.Ratchet *receive.Switchboard partitioner parse.Partitioner - net network.Manager + net cmix.Client myDefaultID *id.ID rng *fastRNG.StreamGenerator events event.Manager @@ -59,7 +59,7 @@ func Init(kv *versioned.KV, myDefaultID *id.ID, privKey *cyclic.Int, // Load returns an e2e manager from storage // Passes a default ID which is used for relationship with // partners when no default ID is selected -func Load(kv *versioned.KV, net network.Manager, myDefaultID *id.ID, +func Load(kv *versioned.KV, net cmix.Client, myDefaultID *id.ID, grp *cyclic.Group, rng *fastRNG.StreamGenerator, events event.Manager) (Handler, error) { //build the manager @@ -106,7 +106,7 @@ func (m *manager) StartProcesses() (stoppable.Stoppable, error) { multi.Add(critcalNetworkStopper) rekeySendFunc := func(mt catalog.MessageType, recipient *id.ID, payload []byte, - cmixParams network.CMIXParams) ( + cmixParams cmix.CMIXParams) ( []id.Round, e2e.MessageID, time.Time, error) { par := GetDefaultParams() par.CMIX = cmixParams diff --git a/e2e/params.go b/e2e/params.go index f897548a94ec04ceff08e985e1f7eb31db7b11c3..78212dbdaf9530d9296a25ef969ad11dd3214dd6 100644 --- a/e2e/params.go +++ b/e2e/params.go @@ -3,7 +3,7 @@ package e2e import ( "encoding/json" "gitlab.com/elixxir/client/catalog" - "gitlab.com/elixxir/client/network" + "gitlab.com/elixxir/client/cmix" "time" ) @@ -23,7 +23,7 @@ type Params struct { //Underlying cmix tags. // Note: if critical is true, an alternative critical messages system within // e2e will be used which preserves privacy - CMIX network.CMIXParams + CMIX cmix.CMIXParams //Authorizes the message to use a key reserved for rekeying. Do not use //unless sending a rekey @@ -38,7 +38,7 @@ func GetDefaultParams() Params { KeyGetRetryCount: 10, KeyGeRetryDelay: 500 * time.Millisecond, - CMIX: network.GetDefaultCMIXParams(), + CMIX: cmix.GetDefaultCMIXParams(), Rekey: false, } } diff --git a/e2e/processor.go b/e2e/processor.go index 62f2ab659347c5d13caf74fb425a39fa0f00be37..be0ad21ad3a03f26805aa9c25ee438f646e50ae4 100644 --- a/e2e/processor.go +++ b/e2e/processor.go @@ -2,9 +2,9 @@ package e2e import ( jww "github.com/spf13/jwalterweatherman" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/client/e2e/ratchet/partner/session" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity/receptionID" "gitlab.com/elixxir/primitives/format" ) diff --git a/e2e/ratchet/partner/interface.go b/e2e/ratchet/partner/interface.go index 170fb88b4126a0d6f33ea2a487841659f18d29e8..c051bf0b71b071387615615fcf50ffc3bd60eaf3 100644 --- a/e2e/ratchet/partner/interface.go +++ b/e2e/ratchet/partner/interface.go @@ -2,8 +2,8 @@ package partner import ( "github.com/cloudflare/circl/dh/sidh" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet/partner/session" - "gitlab.com/elixxir/client/network/message" "gitlab.com/elixxir/crypto/contact" "gitlab.com/elixxir/crypto/cyclic" "gitlab.com/xx_network/primitives/id" diff --git a/e2e/ratchet/partner/manager.go b/e2e/ratchet/partner/manager.go index fe5621e41a20c7150208e793da1256c5d2a0d117..98699392f5e4a56d57b439c984d6e6ec8f89811f 100644 --- a/e2e/ratchet/partner/manager.go +++ b/e2e/ratchet/partner/manager.go @@ -14,8 +14,8 @@ import ( "github.com/cloudflare/circl/dh/sidh" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet/partner/session" - "gitlab.com/elixxir/client/network/message" "gitlab.com/elixxir/client/storage/utility" "gitlab.com/elixxir/client/storage/versioned" "gitlab.com/elixxir/crypto/contact" diff --git a/e2e/ratchet/partner/manager_test.go b/e2e/ratchet/partner/manager_test.go index 45a25e9ba7ae719bef7ea97fbf7e9c5607369e7d..938218ab8215807cedef4620c171ed06d3111773 100644 --- a/e2e/ratchet/partner/manager_test.go +++ b/e2e/ratchet/partner/manager_test.go @@ -11,8 +11,8 @@ import ( "bytes" "encoding/base64" "github.com/cloudflare/circl/dh/sidh" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet/partner/session" - "gitlab.com/elixxir/client/network/message" util "gitlab.com/elixxir/client/storage/utility" dh "gitlab.com/elixxir/crypto/diffieHellman" e2eCrypto "gitlab.com/elixxir/crypto/e2e" diff --git a/e2e/ratchet/ratchet.go b/e2e/ratchet/ratchet.go index 695af6272ee25811d9e97f92877aef423ed93cc8..2396ceef7eccdbeebcd5b15b60ab14dbcabf5fb1 100644 --- a/e2e/ratchet/ratchet.go +++ b/e2e/ratchet/ratchet.go @@ -11,9 +11,9 @@ import ( "github.com/cloudflare/circl/dh/sidh" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet/partner" "gitlab.com/elixxir/client/e2e/ratchet/partner/session" - "gitlab.com/elixxir/client/network/message" util "gitlab.com/elixxir/client/storage/utility" "gitlab.com/elixxir/client/storage/versioned" "gitlab.com/elixxir/crypto/cyclic" diff --git a/e2e/ratchet/serviceList.go b/e2e/ratchet/serviceList.go index b07f083b6a7b79559742347f20c47b57459c3ccd..040a78622f7d89b813048b2cd00a61701351757b 100644 --- a/e2e/ratchet/serviceList.go +++ b/e2e/ratchet/serviceList.go @@ -2,12 +2,12 @@ package ratchet import ( "github.com/pkg/errors" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet/partner" - "gitlab.com/elixxir/client/network/message" "gitlab.com/xx_network/primitives/id" ) -// Services is a subsection of the network.Manager interface used for services +// Services is a subsection of the cmix.Manager interface used for services type Services interface { AddService(AddService *id.ID, newService message.Service, response message.Processor) diff --git a/e2e/ratchet/storage.go b/e2e/ratchet/storage.go index 10aaf8d4de504ac76c1d2e2a58ff38774388cb98..d3b889a2698417413df6d268eb51da8c3171ce58 100644 --- a/e2e/ratchet/storage.go +++ b/e2e/ratchet/storage.go @@ -4,9 +4,9 @@ import ( "encoding/json" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet/partner" "gitlab.com/elixxir/client/e2e/ratchet/partner/session" - "gitlab.com/elixxir/client/network/message" util "gitlab.com/elixxir/client/storage/utility" "gitlab.com/elixxir/client/storage/versioned" "gitlab.com/elixxir/crypto/cyclic" diff --git a/e2e/ratchet/utils_test.go b/e2e/ratchet/utils_test.go index 2856948e6f8a67d1566f907e679b1d168f7609c9..814155300b938aad2572863b09023d04f7afcb6e 100644 --- a/e2e/ratchet/utils_test.go +++ b/e2e/ratchet/utils_test.go @@ -3,9 +3,9 @@ package ratchet import ( "github.com/cloudflare/circl/dh/sidh" "github.com/pkg/errors" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet/partner" "gitlab.com/elixxir/client/e2e/ratchet/partner/session" - "gitlab.com/elixxir/client/network/message" util "gitlab.com/elixxir/client/storage/utility" "gitlab.com/elixxir/client/storage/versioned" "gitlab.com/elixxir/crypto/cyclic" diff --git a/e2e/receive/message.go b/e2e/receive/message.go index fe6ae5f0a57a546fbbd5e627723e74c1262cebb1..560f2224a5aa21e581a4b84e86c1d3e385f92b4b 100644 --- a/e2e/receive/message.go +++ b/e2e/receive/message.go @@ -2,7 +2,7 @@ package receive import ( "gitlab.com/elixxir/client/catalog" - "gitlab.com/elixxir/client/network/historical" + "gitlab.com/elixxir/client/cmix/historical" "gitlab.com/elixxir/crypto/e2e" "gitlab.com/xx_network/primitives/id" "gitlab.com/xx_network/primitives/id/ephemeral" diff --git a/e2e/rekey/exchange.go b/e2e/rekey/exchange.go index 2bfd86e89bea4ea607fd2394b8b8e6d8dd91ee36..30345ca1a28cf7b30ea8db9fd6587289e4092aec 100644 --- a/e2e/rekey/exchange.go +++ b/e2e/rekey/exchange.go @@ -9,9 +9,9 @@ package rekey import ( "gitlab.com/elixxir/client/catalog" + "gitlab.com/elixxir/client/cmix" "gitlab.com/elixxir/client/e2e/ratchet" "gitlab.com/elixxir/client/e2e/receive" - "gitlab.com/elixxir/client/network" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/crypto/cyclic" "gitlab.com/elixxir/crypto/e2e" @@ -20,11 +20,11 @@ import ( ) type E2eSender func(mt catalog.MessageType, recipient *id.ID, payload []byte, - cmixParams network.CMIXParams) ( + cmixParams cmix.CMIXParams) ( []id.Round, e2e.MessageID, time.Time, error) func Start(switchboard *receive.Switchboard, ratchet *ratchet.Ratchet, - sender E2eSender, net network.Manager, grp *cyclic.Group, params Params) (stoppable.Stoppable, error) { + sender E2eSender, net cmix.Client, grp *cyclic.Group, params Params) (stoppable.Stoppable, error) { // register the rekey trigger thread triggerCh := make(chan receive.Message, 100) diff --git a/e2e/rekey/rekey.go b/e2e/rekey/rekey.go index 3b314153b366a29000e597135a21b99281c37d3d..ec09947b0627e40e28c7c4bc6e30c253fb002c03 100644 --- a/e2e/rekey/rekey.go +++ b/e2e/rekey/rekey.go @@ -12,10 +12,10 @@ import ( "github.com/golang/protobuf/proto" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" + "gitlab.com/elixxir/client/cmix" "gitlab.com/elixxir/client/e2e/ratchet/partner" session "gitlab.com/elixxir/client/e2e/ratchet/partner/session" "gitlab.com/elixxir/client/event" - "gitlab.com/elixxir/client/network" util "gitlab.com/elixxir/client/storage/utility" commsNetwork "gitlab.com/elixxir/comms/network" ds "gitlab.com/elixxir/comms/network/dataStructures" @@ -119,7 +119,7 @@ func negotiate(instance *commsNetwork.Instance, grp *cyclic.Group, sendE2E E2eSe } //send the message under the key exchange - params := network.GetDefaultCMIXParams() + params := cmix.GetDefaultCMIXParams() params.DebugTag = "kx.Request" rounds, msgID, _, err := sendE2E(param.Trigger, sess.GetPartner(), @@ -144,7 +144,7 @@ func negotiate(instance *commsNetwork.Instance, grp *cyclic.Group, sendE2E E2eSe } //Wait until the result tracking responds - success, numRoundFail, numTimeOut := network.TrackResults(sendResults, + success, numRoundFail, numTimeOut := cmix.TrackResults(sendResults, len(rounds)) // If a single partition of the Key Negotiation request does not diff --git a/e2e/rekey/trigger.go b/e2e/rekey/trigger.go index 4eb03ca19dbd15ee79fb2ac2c1c78c63f12a254b..c993c514dc21f85709c591755e7b195a8f7c1102 100644 --- a/e2e/rekey/trigger.go +++ b/e2e/rekey/trigger.go @@ -13,10 +13,10 @@ import ( "github.com/golang/protobuf/proto" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" + "gitlab.com/elixxir/client/cmix" "gitlab.com/elixxir/client/e2e/ratchet" "gitlab.com/elixxir/client/e2e/ratchet/partner/session" "gitlab.com/elixxir/client/e2e/receive" - "gitlab.com/elixxir/client/network" "gitlab.com/elixxir/client/stoppable" util "gitlab.com/elixxir/client/storage/utility" "gitlab.com/elixxir/crypto/cyclic" @@ -28,7 +28,7 @@ const ( errFailed = "Failed to handle rekey trigger: %s" ) -func startTrigger(ratchet *ratchet.Ratchet, sender E2eSender, net network.Manager, +func startTrigger(ratchet *ratchet.Ratchet, sender E2eSender, net cmix.Client, grp *cyclic.Group, c chan receive.Message, stop *stoppable.Single, params Params, cleanup func()) { for { @@ -50,7 +50,7 @@ func startTrigger(ratchet *ratchet.Ratchet, sender E2eSender, net network.Manage } func handleTrigger(ratchet *ratchet.Ratchet, sender E2eSender, - net network.Manager, grp *cyclic.Group, request receive.Message, + net cmix.Client, grp *cyclic.Group, request receive.Message, param Params, stop *stoppable.Single) error { //ensure the message was encrypted properly if !request.Encrypted { @@ -116,7 +116,7 @@ func handleTrigger(ratchet *ratchet.Ratchet, sender E2eSender, } //send the trigger - params := network.GetDefaultCMIXParams() + params := cmix.GetDefaultCMIXParams() params.Critical = true //ignore results, the passed sender interface makes it a critical message _, _, _, _ = sender(param.Confirm, request.Sender, payload, diff --git a/e2e/rekey/utils_test.go b/e2e/rekey/utils_test.go index 4b27cef48f7084e67af55ccbd5d8d735bade8c51..2f817871e7bdb11b7b98a38f91dc3ae95130aab7 100644 --- a/e2e/rekey/utils_test.go +++ b/e2e/rekey/utils_test.go @@ -11,13 +11,13 @@ import ( "github.com/cloudflare/circl/dh/sidh" "github.com/golang/protobuf/proto" "gitlab.com/elixxir/client/catalog" + "gitlab.com/elixxir/client/cmix" + "gitlab.com/elixxir/client/cmix/gateway" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity" + "gitlab.com/elixxir/client/cmix/message" session2 "gitlab.com/elixxir/client/e2e/ratchet/partner/session" "gitlab.com/elixxir/client/e2e/receive" - "gitlab.com/elixxir/client/network" - "gitlab.com/elixxir/client/network/gateway" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity" - "gitlab.com/elixxir/client/network/message" "gitlab.com/elixxir/client/stoppable" util "gitlab.com/elixxir/client/storage/utility" network2 "gitlab.com/elixxir/comms/network" @@ -72,7 +72,7 @@ func genSidhKeys() (*sidh.PrivateKey, *sidh.PublicKey, *sidh.PrivateKey, *sidh.P } func testSendE2E(mt catalog.MessageType, recipient *id.ID, - payload []byte, cmixParams network.CMIXParams) ([]id.Round, e2e.MessageID, time.Time, error) { + payload []byte, cmixParams cmix.CMIXParams) ([]id.Round, e2e.MessageID, time.Time, error) { rounds := []id.Round{id.Round(0), id.Round(1), id.Round(2)} alicePartner, err := r.GetPartner(aliceID, bobID) if err != nil { @@ -228,7 +228,7 @@ func (m *mockNetManager) GetIdentity(get *id.ID) (identity.TrackedID, error) { panic("implement me") } -func (m *mockNetManager) Follow(report network.ClientErrorReport) (stoppable.Stoppable, error) { +func (m *mockNetManager) Follow(report cmix.ClientErrorReport) (stoppable.Stoppable, error) { return nil, nil } @@ -236,13 +236,13 @@ func (m *mockNetManager) GetMaxMessageLength() int { return 0 } -func (m *mockNetManager) SendCMIX(recipient *id.ID, fingerprint format.Fingerprint, - service message.Service, payload, mac []byte, cmixParams network.CMIXParams) ( +func (m *mockNetManager) Send(recipient *id.ID, fingerprint format.Fingerprint, + service message.Service, payload, mac []byte, cmixParams cmix.CMIXParams) ( id.Round, ephemeral.Id, error) { return id.Round(0), ephemeral.Id{}, nil } -func (m *mockNetManager) SendManyCMIX(messages []network.TargetedCmixMessage, p network.CMIXParams) ( +func (m *mockNetManager) SendMany(messages []cmix.TargetedCmixMessage, p cmix.CMIXParams) ( id.Round, []ephemeral.Id, error) { return id.Round(0), nil, nil } @@ -298,7 +298,7 @@ func (m *mockNetManager) NumRegisteredNodes() int { func (m *mockNetManager) TriggerNodeRegistration(nid *id.ID) {} -func (m *mockNetManager) GetRoundResults(timeout time.Duration, roundCallback network.RoundEventCallback, +func (m *mockNetManager) GetRoundResults(timeout time.Duration, roundCallback cmix.RoundEventCallback, roundList ...id.Round) error { return nil } diff --git a/e2e/sendE2E.go b/e2e/sendE2E.go index 287c69f5766a6aa5e751dd09d65e61ba8583262d..4aa825cc033a20b131bcc10a1f59af595bd3fd16 100644 --- a/e2e/sendE2E.go +++ b/e2e/sendE2E.go @@ -4,10 +4,10 @@ import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" "gitlab.com/elixxir/client/catalog" + "gitlab.com/elixxir/client/cmix" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet/partner/session" "gitlab.com/elixxir/client/e2e/rekey" - "gitlab.com/elixxir/client/network" - "gitlab.com/elixxir/client/network/message" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/crypto/e2e" "gitlab.com/elixxir/primitives/format" @@ -82,7 +82,7 @@ func (m *manager) sendE2E(mt catalog.MessageType, recipient *id.ID, if mt != catalog.KeyExchangeTrigger { // check if any rekeys need to happen and trigger them rekeySendFunc := func(mt catalog.MessageType, recipient *id.ID, payload []byte, - cmixParams network.CMIXParams) ( + cmixParams cmix.CMIXParams) ( []id.Round, e2e.MessageID, time.Time, error) { par := GetDefaultParams() par.CMIX = cmixParams diff --git a/e2e/sendUnsafe.go b/e2e/sendUnsafe.go index ac7582992500daa2bf1e9798d6ab7b9d010097ed..d9b13d697c6713e7fcc9e33c14b89d4fd1be5283 100644 --- a/e2e/sendUnsafe.go +++ b/e2e/sendUnsafe.go @@ -4,8 +4,8 @@ import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" "gitlab.com/elixxir/client/catalog" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e/ratchet" - "gitlab.com/elixxir/client/network/message" "gitlab.com/elixxir/crypto/e2e" "gitlab.com/xx_network/primitives/id" "gitlab.com/xx_network/primitives/netTime" @@ -67,7 +67,7 @@ func (m *manager) sendUnsafe(mt catalog.MessageType, recipient *id.ID, unencryptedMAC, fp := e2e.SetUnencrypted(payload, m.myDefaultID) var err error - roundIds[i], _, err = m.net.SendCMIX(recipient, fp, + roundIds[i], _, err = m.net.Send(recipient, fp, srvc, payload, unencryptedMAC, params.CMIX) if err != nil { errCh <- err diff --git a/e2e/unsafeProcessor.go b/e2e/unsafeProcessor.go index 942e0a1a91258a3ccf60272e865f3badd64ce2f7..64218bb2824e3f2af557670575ed8a8f8d337317 100644 --- a/e2e/unsafeProcessor.go +++ b/e2e/unsafeProcessor.go @@ -2,8 +2,8 @@ package e2e import ( jww "github.com/spf13/jwalterweatherman" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity/receptionID" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/crypto/e2e" "gitlab.com/elixxir/primitives/format" ) diff --git a/fileTransfer/manager.go b/fileTransfer/manager.go index 7fc8e3416e8808c5c482260aa0dbe3d584f71caa..2235b98795bb4a63f3f5d908cf5f4bfcbd1e1017 100644 --- a/fileTransfer/manager.go +++ b/fileTransfer/manager.go @@ -11,9 +11,9 @@ import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" "gitlab.com/elixxir/client/api" + "gitlab.com/elixxir/client/cmix" "gitlab.com/elixxir/client/interfaces" "gitlab.com/elixxir/client/interfaces/message" - "gitlab.com/elixxir/client/network" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" ftStorage "gitlab.com/elixxir/client/storage/fileTransfer" @@ -120,7 +120,7 @@ type Manager struct { // getRoundResultsFunc is a function that matches client.GetRoundResults. It is // used to pass in an alternative function for testing. type getRoundResultsFunc func(roundList []id.Round, timeout time.Duration, - roundCallback network.RoundEventCallback) error + roundCallback cmix.RoundEventCallback) error // queuedPart contains the unique information identifying a file part. type queuedPart struct { diff --git a/fileTransfer/oldTransferRecovery_test.go b/fileTransfer/oldTransferRecovery_test.go index 561785100d4611e7923b6eb6bd6e4e80d48ea4d1..dcc51eb6c0b6b6edf5964005337582e3bfe9ca92 100644 --- a/fileTransfer/oldTransferRecovery_test.go +++ b/fileTransfer/oldTransferRecovery_test.go @@ -10,8 +10,8 @@ package fileTransfer import ( "fmt" "github.com/pkg/errors" + "gitlab.com/elixxir/client/cmix" "gitlab.com/elixxir/client/interfaces" - "gitlab.com/elixxir/client/network" "gitlab.com/elixxir/client/storage/versioned" ftCrypto "gitlab.com/elixxir/crypto/fileTransfer" "gitlab.com/elixxir/ekv" @@ -77,13 +77,13 @@ func TestManager_oldTransferRecovery(t *testing.T) { // Returns an error on function and round failure on callback if sendErr is // set; otherwise, it reports round successes and returns nil - rr := func(rIDs []id.Round, _ time.Duration, cb network.RoundEventCallback) error { - rounds := make(map[id.Round]network.RoundLookupStatus, len(rIDs)) + rr := func(rIDs []id.Round, _ time.Duration, cb cmix.RoundEventCallback) error { + rounds := make(map[id.Round]cmix.RoundLookupStatus, len(rIDs)) for _, rid := range rIDs { if finishedRounds[rid] != nil { - rounds[rid] = network.Succeeded + rounds[rid] = cmix.Succeeded } else { - rounds[rid] = network.Failed + rounds[rid] = cmix.Failed } } cb(true, false, rounds) @@ -240,13 +240,13 @@ func TestManager_updateSentRounds(t *testing.T) { // Returns an error on function and round failure on callback if sendErr is // set; otherwise, it reports round successes and returns nil - rr := func(rIDs []id.Round, _ time.Duration, cb network.RoundEventCallback) error { - rounds := make(map[id.Round]network.RoundLookupStatus, len(rIDs)) + rr := func(rIDs []id.Round, _ time.Duration, cb cmix.RoundEventCallback) error { + rounds := make(map[id.Round]cmix.RoundLookupStatus, len(rIDs)) for _, rid := range rIDs { if finishedRounds[rid] != nil { - rounds[rid] = network.Succeeded + rounds[rid] = cmix.Succeeded } else { - rounds[rid] = network.Failed + rounds[rid] = cmix.Failed } } cb(true, false, rounds) @@ -322,7 +322,7 @@ func TestManager_updateSentRounds_Error(t *testing.T) { // Returns an error on function and round failure on callback if sendErr is // set; otherwise, it reports round successes and returns nil m.getRoundResults = func( - []id.Round, time.Duration, network.RoundEventCallback) error { + []id.Round, time.Duration, cmix.RoundEventCallback) error { return errors.Errorf("GetRoundResults error") } diff --git a/fileTransfer/send.go b/fileTransfer/send.go index 299db3b0e17101073dc7df71f9746c06d95a4442..4a795336f93d5723ee99bc0acbd9c74ccbda7d0b 100644 --- a/fileTransfer/send.go +++ b/fileTransfer/send.go @@ -12,9 +12,9 @@ import ( "encoding/binary" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" + "gitlab.com/elixxir/client/cmix" "gitlab.com/elixxir/client/interfaces/message" "gitlab.com/elixxir/client/interfaces/params" - "gitlab.com/elixxir/client/network" "gitlab.com/elixxir/client/stoppable" ftStorage "gitlab.com/elixxir/client/storage/fileTransfer" ds "gitlab.com/elixxir/comms/network/dataStructures" @@ -418,11 +418,11 @@ func (m *Manager) newCmixMessage(transfer *ftStorage.SentTransfer, // fails, then each part for each transfer is removed from the in-progress list, // added to the end of the sending queue, and the callback called with an error. func (m *Manager) makeRoundEventCallback( - sentRounds map[id.Round][]ftCrypto.TransferID) network.RoundEventCallback { + sentRounds map[id.Round][]ftCrypto.TransferID) cmix.RoundEventCallback { - return func(allSucceeded, timedOut bool, rounds map[id.Round]network.RoundLookupStatus) { + return func(allSucceeded, timedOut bool, rounds map[id.Round]cmix.RoundLookupStatus) { for rid, roundResult := range rounds { - if roundResult == network.Succeeded { + if roundResult == cmix.Succeeded { // If the round succeeded, then set all parts for each transfer // for this round to finished and call the progress callback for _, tid := range sentRounds[rid] { @@ -546,7 +546,7 @@ func (m *Manager) sendEndE2eMessage(recipient *id.ID) error { } // Wait until the result tracking responds - success, numTimeOut, numRoundFail := network.TrackResults( + success, numTimeOut, numRoundFail := cmix.TrackResults( sendResults, len(rounds)) // If a single partition of the end file transfer message does not transmit, diff --git a/fileTransfer/send_test.go b/fileTransfer/send_test.go index 35e1f239a8c4a3249cbd91a3ac05d3e96e47cce9..3572ac7c9f9df16752df11dab9050d2b4b10e4c8 100644 --- a/fileTransfer/send_test.go +++ b/fileTransfer/send_test.go @@ -12,10 +12,10 @@ import ( "errors" "fmt" "github.com/cloudflare/circl/dh/sidh" + "gitlab.com/elixxir/client/cmix" "gitlab.com/elixxir/client/interfaces" "gitlab.com/elixxir/client/interfaces/message" "gitlab.com/elixxir/client/interfaces/params" - "gitlab.com/elixxir/client/network" "gitlab.com/elixxir/client/stoppable" ftStorage "gitlab.com/elixxir/client/storage/fileTransfer" util "gitlab.com/elixxir/client/storage/utility" @@ -382,7 +382,7 @@ func TestManager_sendParts_RoundResultsError(t *testing.T) { grrErr := errors.New("GetRoundResultsError") m.getRoundResults = - func([]id.Round, time.Duration, network.RoundEventCallback) error { + func([]id.Round, time.Duration, cmix.RoundEventCallback) error { return grrErr } @@ -765,7 +765,7 @@ func TestManager_makeRoundEventCallback(t *testing.T) { roundEventCB := m.makeRoundEventCallback( map[id.Round][]ftCrypto.TransferID{rid: {tid}}) - roundEventCB(true, false, map[id.Round]network.RoundLookupStatus{rid: network.Succeeded}) + roundEventCB(true, false, map[id.Round]cmix.RoundLookupStatus{rid: cmix.Succeeded}) <-done1 @@ -853,7 +853,7 @@ func TestManager_makeRoundEventCallback_RoundFailure(t *testing.T) { roundEventCB := m.makeRoundEventCallback( map[id.Round][]ftCrypto.TransferID{rid: {tid}}) - roundEventCB(false, false, map[id.Round]network.RoundLookupStatus{rid: network.Failed}) + roundEventCB(false, false, map[id.Round]cmix.RoundLookupStatus{rid: cmix.Failed}) <-done1 diff --git a/fileTransfer/utils_test.go b/fileTransfer/utils_test.go index 0ea0e5386b39c9a926fad4a774a11cd103b86410..3ef8c13da9f22cc3b71369c377ff5ab21b447522 100644 --- a/fileTransfer/utils_test.go +++ b/fileTransfer/utils_test.go @@ -12,12 +12,12 @@ import ( "encoding/binary" "github.com/cloudflare/circl/dh/sidh" "github.com/pkg/errors" + network2 "gitlab.com/elixxir/client/cmix" + "gitlab.com/elixxir/client/cmix/gateway" "gitlab.com/elixxir/client/event" "gitlab.com/elixxir/client/interfaces" "gitlab.com/elixxir/client/interfaces/message" "gitlab.com/elixxir/client/interfaces/params" - network2 "gitlab.com/elixxir/client/network" - "gitlab.com/elixxir/client/network/gateway" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" ftStorage "gitlab.com/elixxir/client/storage/fileTransfer" diff --git a/groupChat/manager.go b/groupChat/manager.go index b903547ddd76a79ba9baa19e39d597d04624d2ac..85f4926babb9f1f7bd25d0dcfa3079d024afaf96 100644 --- a/groupChat/manager.go +++ b/groupChat/manager.go @@ -11,10 +11,10 @@ import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" "gitlab.com/elixxir/client/catalog" + "gitlab.com/elixxir/client/cmix" + "gitlab.com/elixxir/client/cmix/message" "gitlab.com/elixxir/client/e2e" gs "gitlab.com/elixxir/client/groupChat/groupStore" - "gitlab.com/elixxir/client/network" - "gitlab.com/elixxir/client/network/message" "gitlab.com/elixxir/client/storage/versioned" "gitlab.com/elixxir/crypto/cyclic" "gitlab.com/elixxir/crypto/fastRNG" @@ -37,14 +37,14 @@ type Manager struct { rng *fastRNG.StreamGenerator grp *cyclic.Group gs *gs.Store - services network.Manager + services cmix.Client requestFunc RequestCallback receiveFunc ReceiveCallback } // NewManager creates a new group chat manager -func NewManager(services network.Manager, e2e e2e.Handler, receptionId *id.ID, +func NewManager(services cmix.Client, e2e e2e.Handler, receptionId *id.ID, rng *fastRNG.StreamGenerator, grp *cyclic.Group, kv *versioned.KV, requestFunc RequestCallback, receiveFunc ReceiveCallback) (*Manager, error) { diff --git a/groupChat/receive.go b/groupChat/receive.go index faf1ddd9548b0ecb56436822a855d281377792cb..87f8b1d35db9ffeebebe699503ee8692db5702e1 100644 --- a/groupChat/receive.go +++ b/groupChat/receive.go @@ -10,9 +10,9 @@ package groupChat import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" + "gitlab.com/elixxir/client/cmix/historical" + "gitlab.com/elixxir/client/cmix/identity/receptionID" gs "gitlab.com/elixxir/client/groupChat/groupStore" - "gitlab.com/elixxir/client/network/historical" - "gitlab.com/elixxir/client/network/identity/receptionID" "gitlab.com/elixxir/crypto/group" "gitlab.com/elixxir/primitives/format" "gitlab.com/elixxir/primitives/states" @@ -30,7 +30,7 @@ const ( "cMix message because MAC verification failed (epoch %d could be off)" ) -// Adheres to network.Manager interface for reception processing +// Adheres to cmix.Manager interface for reception processing type receptionProcessor struct { m *Manager g gs.Group diff --git a/groupChat/send.go b/groupChat/send.go index 29761e7adf53abe3b1bb039cf6e7f1bfdc101465..f11237aae00b5b8f818378bfbc77eaaf93ae7047 100644 --- a/groupChat/send.go +++ b/groupChat/send.go @@ -11,9 +11,9 @@ import ( "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" "gitlab.com/elixxir/client/catalog" + "gitlab.com/elixxir/client/cmix" + "gitlab.com/elixxir/client/cmix/message" gs "gitlab.com/elixxir/client/groupChat/groupStore" - "gitlab.com/elixxir/client/network" - "gitlab.com/elixxir/client/network/message" "gitlab.com/elixxir/crypto/cyclic" "gitlab.com/elixxir/crypto/group" "gitlab.com/elixxir/primitives/format" @@ -64,7 +64,7 @@ func (m *Manager) Send(groupID *id.ID, message []byte) (id.Round, time.Time, gro } // Send all the groupMessages - param := network.GetDefaultCMIXParams() + param := cmix.GetDefaultCMIXParams() param.DebugTag = "group.Message" rid, _, err := m.services.SendManyCMIX(groupMessages, param) if err != nil { @@ -79,10 +79,10 @@ func (m *Manager) Send(groupID *id.ID, message []byte) (id.Round, time.Time, gro // newMessages quickly builds messages for all group chat members in multiple threads func (m *Manager) newMessages(g gs.Group, msg []byte, timestamp time.Time) ( - []network.TargetedCmixMessage, error) { + []cmix.TargetedCmixMessage, error) { // Create list of cMix messages - messages := make([]network.TargetedCmixMessage, 0, len(g.Members)) + messages := make([]cmix.TargetedCmixMessage, 0, len(g.Members)) rng := m.rng.GetStream() defer rng.Close() @@ -106,10 +106,10 @@ func (m *Manager) newMessages(g gs.Group, msg []byte, timestamp time.Time) ( // newCmixMsg generates a new cMix message to be sent to a group member. func newCmixMsg(g gs.Group, msg []byte, timestamp time.Time, - mem group.Member, rng io.Reader, senderId *id.ID, grp *cyclic.Group) (network.TargetedCmixMessage, error) { + mem group.Member, rng io.Reader, senderId *id.ID, grp *cyclic.Group) (cmix.TargetedCmixMessage, error) { // Initialize targeted message - cmixMsg := network.TargetedCmixMessage{ + cmixMsg := cmix.TargetedCmixMessage{ Recipient: mem.ID, Service: message.Service{ Identifier: g.ID[:], diff --git a/groupChat/utils_test.go b/groupChat/utils_test.go index b19c697d80fb77ff06917593471e87a85d338521..6e76d66e1522f04c882d356d8fe38f4802732e3e 100644 --- a/groupChat/utils_test.go +++ b/groupChat/utils_test.go @@ -10,12 +10,12 @@ package groupChat import ( "encoding/base64" "github.com/pkg/errors" + "gitlab.com/elixxir/client/cmix/gateway" "gitlab.com/elixxir/client/event" gs "gitlab.com/elixxir/client/groupChat/groupStore" "gitlab.com/elixxir/client/interfaces" "gitlab.com/elixxir/client/interfaces/message" "gitlab.com/elixxir/client/interfaces/params" - "gitlab.com/elixxir/client/network/gateway" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" "gitlab.com/elixxir/client/storage/versioned" diff --git a/single/manager.go b/single/manager.go index 65577dca54d1fc5f450597b2683fe663fe9f5ea9..c86bb3ed82b94e7a60973f0209bb2c3efbbd25c2 100644 --- a/single/manager.go +++ b/single/manager.go @@ -10,9 +10,9 @@ package single import ( jww "github.com/spf13/jwalterweatherman" "gitlab.com/elixxir/client/api" + "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/client/interfaces" "gitlab.com/elixxir/client/interfaces/message" - "gitlab.com/elixxir/client/network/identity/receptionID" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" "gitlab.com/elixxir/crypto/fastRNG" diff --git a/single/manager_test.go b/single/manager_test.go index 1af9467c086613d77adfc0aad4c6e71e6cd3b46c..a7de399c871667d1b765e965e044f50e7b1043cb 100644 --- a/single/manager_test.go +++ b/single/manager_test.go @@ -11,12 +11,12 @@ import ( "bytes" "errors" "gitlab.com/elixxir/client/api" + "gitlab.com/elixxir/client/cmix/gateway" + ephemeral2 "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/client/event" "gitlab.com/elixxir/client/interfaces" "gitlab.com/elixxir/client/interfaces/message" "gitlab.com/elixxir/client/interfaces/params" - "gitlab.com/elixxir/client/network/gateway" - ephemeral2 "gitlab.com/elixxir/client/network/identity/receptionID" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/client/storage" "gitlab.com/elixxir/client/storage/versioned" diff --git a/single/response.go b/single/response.go index 5c3e80abf7a54ec9e174ebc5b9494c8d90f4770e..9856a919032592dc2a6074794059140fe779387c 100644 --- a/single/response.go +++ b/single/response.go @@ -11,8 +11,8 @@ import ( "bytes" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" + "gitlab.com/elixxir/client/cmix" "gitlab.com/elixxir/client/interfaces/params" - "gitlab.com/elixxir/client/network" ds "gitlab.com/elixxir/comms/network/dataStructures" cAuth "gitlab.com/elixxir/crypto/e2e/auth" "gitlab.com/elixxir/crypto/e2e/singleUse" @@ -101,7 +101,7 @@ func (m *Manager) respondSingleUse(partner Contact, payload []byte, } // Wait until the result tracking responds - success, numRoundFail, numTimeOut := network.TrackResults(sendResults, len(roundMap)) + success, numRoundFail, numTimeOut := cmix.TrackResults(sendResults, len(roundMap)) if !success { return errors.Errorf("tracking results of %d rounds: %d round "+ "failures, %d round event time outs; the send cannot be retried.", diff --git a/single/transmission.go b/single/transmission.go index 267f04780b00aa87048aee5fb335d20ab67cf12f..715078cf4050ce0b5fd4dbd8874e1acac6be8b89 100644 --- a/single/transmission.go +++ b/single/transmission.go @@ -11,9 +11,9 @@ import ( "fmt" "github.com/pkg/errors" jww "github.com/spf13/jwalterweatherman" + ephemeral2 "gitlab.com/elixxir/client/cmix/identity/receptionID" "gitlab.com/elixxir/client/interfaces" "gitlab.com/elixxir/client/interfaces/params" - ephemeral2 "gitlab.com/elixxir/client/network/identity/receptionID" ds "gitlab.com/elixxir/comms/network/dataStructures" contact2 "gitlab.com/elixxir/crypto/contact" "gitlab.com/elixxir/crypto/cyclic" diff --git a/single/transmission_test.go b/single/transmission_test.go index fbd2cf9851ae9372261b3cdb1ced326b819b9a56..5fd81ec1bea27ace947d46468a2e913dd9c713ff 100644 --- a/single/transmission_test.go +++ b/single/transmission_test.go @@ -146,7 +146,7 @@ func TestManager_transmitSingleUse_AddIdentityError(t *testing.T) { } } -// Error path: SendCMIX fails to send message. +// Error path: Send fails to send message. func TestManager_transmitSingleUse_SendCMIXError(t *testing.T) { m := newTestManager(0, true, t) partner := contact2.Contact{ diff --git a/ud/utils_test.go b/ud/utils_test.go index 73a55fc597774f00f659fc5c6278306e08ae04ad..425d22d9ae31775bc13b2efe6391037ba3a63f93 100644 --- a/ud/utils_test.go +++ b/ud/utils_test.go @@ -15,11 +15,11 @@ package ud import ( + "gitlab.com/elixxir/client/cmix/gateway" "gitlab.com/elixxir/client/event" "gitlab.com/elixxir/client/interfaces" "gitlab.com/elixxir/client/interfaces/message" "gitlab.com/elixxir/client/interfaces/params" - "gitlab.com/elixxir/client/network/gateway" "gitlab.com/elixxir/client/stoppable" "gitlab.com/elixxir/comms/network" "gitlab.com/elixxir/crypto/e2e"