diff --git a/auth/store/confirmation.go b/auth/store/confirmation.go index c972fd8af974060824eaa735a9f6a371a56b12a8..286dc7a63c25fe04e357d1f07e3e04f8bb8188e9 100644 --- a/auth/store/confirmation.go +++ b/auth/store/confirmation.go @@ -48,8 +48,7 @@ func (s *Store) StoreConfirmation(partner *id.ID, Data: confirmBytes, } - return s.kv.Set(makeConfirmationKey(partner), - currentConfirmationVersion, obj) + return s.kv.Set(makeConfirmationKey(partner), obj) } // LoadConfirmation loads the confirmation for the given partner and fingerprint diff --git a/auth/store/previousNegotiations.go b/auth/store/previousNegotiations.go index be8d701f082ef99de72cd67f9a1d4c0b01b6bd9f..30a28d715d25adc06c312455b0faf461408be383 100644 --- a/auth/store/previousNegotiations.go +++ b/auth/store/previousNegotiations.go @@ -112,7 +112,7 @@ func (s *Store) savePreviousNegotiations() error { Data: marshalPreviousNegotiations(s.previousNegotiations), } - return s.kv.Set(negotiationPartnersKey, negotiationPartnersVersion, obj) + return s.kv.Set(negotiationPartnersKey, obj) } // newOrLoadPreviousNegotiations loads the list of previousNegotiations partners @@ -188,8 +188,7 @@ func saveNegotiationFingerprints( Data: marshalNegotiationFingerprints(fingerprints...), } - return kv.Set(makeNegotiationFingerprintsKey(partner), - currentNegotiationFingerprintsVersion, obj) + return kv.Set(makeNegotiationFingerprintsKey(partner), obj) } // loadNegotiationFingerprints loads the list of sentByFingerprints for the given @@ -287,5 +286,5 @@ func upgradePreviousNegotiationsV0(kv *versioned.KV) error { Data: marshalPreviousNegotiations( newPrevNegotiations), } - return kv.Set(negotiationPartnersKey, negotiationPartnersVersion, obj) + return kv.Set(negotiationPartnersKey, obj) } diff --git a/auth/store/sentRequest.go b/auth/store/sentRequest.go index 5f5b8a69e1e193ada63726e1f24c31e03a37973c..6732b6ee8ddff95dca191f15aad66b4adcadf183 100644 --- a/auth/store/sentRequest.go +++ b/auth/store/sentRequest.go @@ -211,8 +211,7 @@ func (sr *SentRequest) save() error { Data: data, } - return sr.kv.Set(makeSentRequestKey(sr.partner), - currentSentRequestVersion, &obj) + return sr.kv.Set(makeSentRequestKey(sr.partner), &obj) } func (sr *SentRequest) delete() { @@ -296,7 +295,7 @@ func upgradeSentRequestKeyV0(kv *versioned.KV, partner *id.ID) error { // Note: uses same encoding, just different keys obj.Version = 1 - err = kv.Set(makeSentRequestKey(partner), 1, obj) + err = kv.Set(makeSentRequestKey(partner), obj) if err != nil { return err } diff --git a/auth/store/store.go b/auth/store/store.go index e5496b2d7c88751b36250f814f397ba9ae97bcef..a0ec7b159edcfeb3a889b174d55e3c474eb34bd5 100644 --- a/auth/store/store.go +++ b/auth/store/store.go @@ -149,7 +149,7 @@ func (s *Store) save() error { Data: data, } - return s.kv.Set(requestMapKey, requestMapVersion, &obj) + return s.kv.Set(requestMapKey, &obj) } // NewStore creates a new store. All passed in private keys are added as diff --git a/backup/jsonStorage.go b/backup/jsonStorage.go index 8ce778b56aff9c76847caf1953451d7cb6b39d5d..fcccaa3f38de62065f53eb44b18bac737bbcf038 100644 --- a/backup/jsonStorage.go +++ b/backup/jsonStorage.go @@ -17,7 +17,7 @@ func storeJson(json string, kv *versioned.KV) error { Data: []byte(json), } - return kv.Set(jsonStorageKey, jsonStorageVersion, obj) + return kv.Set(jsonStorageKey, obj) } func loadJson(kv *versioned.KV) string { diff --git a/backup/keyStorage.go b/backup/keyStorage.go index 27437998775dc4a63cf4e3c996dd82f3aa68e56c..4cbe256487f5839d22abf5d73fe2cecf7e21dc56 100644 --- a/backup/keyStorage.go +++ b/backup/keyStorage.go @@ -38,7 +38,7 @@ func saveBackup(key, salt []byte, params backup.Params, kv *versioned.KV) error Data: marshalBackup(key, salt, params), } - return kv.Set(cryptoStorageKey, cryptoStorageVersion, obj) + return kv.Set(cryptoStorageKey, obj) } // loadBackup loads the key, salt, and params from storage. diff --git a/cmix/cmixMessageBuffer.go b/cmix/cmixMessageBuffer.go index 54ba624ab9a203559de9bfcb6340adf1bddec8a6..620ffac6fe53ec7df95f23422e4ef89a263697dd 100644 --- a/cmix/cmixMessageBuffer.go +++ b/cmix/cmixMessageBuffer.go @@ -52,7 +52,7 @@ func (cmh *cmixMessageHandler) SaveMessage( } // Save versioned object - return kv.Set(key, currentCmixMessageVersion, &obj) + return kv.Set(key, &obj) } // LoadMessage returns the message with the specified key from the key value diff --git a/cmix/gateway/storeHostList.go b/cmix/gateway/storeHostList.go index d71d17b53e235ad5eb02860d8951794304ed59cc..e949fb299d3e62acedc228437b5c1d7805f84862 100644 --- a/cmix/gateway/storeHostList.go +++ b/cmix/gateway/storeHostList.go @@ -36,7 +36,7 @@ func saveHostList(kv *versioned.KV, list []*id.ID) error { Timestamp: netTime.Now(), } - return kv.Set(hostListKey, hostListVersion, obj) + return kv.Set(hostListKey, obj) } // getHostList returns the host list from storage. diff --git a/cmix/identity/receptionID/identity.go b/cmix/identity/receptionID/identity.go index 96767b8a7a7dfa8813e2b50298f00c04b98beb66..3d9a9c73e95afc359293b5c34e1e98d310967eed 100644 --- a/cmix/identity/receptionID/identity.go +++ b/cmix/identity/receptionID/identity.go @@ -73,7 +73,7 @@ func (i Identity) store(kv *versioned.KV) error { } // Store the data - err = kv.Set(identityStorageKey, identityStorageVersion, obj) + err = kv.Set(identityStorageKey, obj) if err != nil { return errors.WithMessage(err, "Failed to store Identity") } diff --git a/cmix/identity/receptionID/store.go b/cmix/identity/receptionID/store.go index e13eddfac252e4fd9daf2032f920f0e110a75dfe..ec0f5a9033e74a508f4ddca83be07bd2a2247a0d 100644 --- a/cmix/identity/receptionID/store.go +++ b/cmix/identity/receptionID/store.go @@ -122,7 +122,7 @@ func (s *Store) save() error { Data: data, } - err = s.kv.Set(receptionStoreStorageKey, receptionStoreStorageVersion, obj) + err = s.kv.Set(receptionStoreStorageKey, obj) if err != nil { return errors.WithMessage(err, "Failed to store reception store") } diff --git a/cmix/identity/receptionID/store/earliestRound.go b/cmix/identity/receptionID/store/earliestRound.go index fe1b60abd17932382d92f1df6d03ca480727d817..8fb84f6dc060c1ea2dc66f93677c693748f3b881 100644 --- a/cmix/identity/receptionID/store/earliestRound.go +++ b/cmix/identity/receptionID/store/earliestRound.go @@ -65,8 +65,7 @@ func (ur *EarliestRound) save() { Data: urStr, } - err = ur.kv.Set(earliestRoundStorageKey, - earliestRoundStorageVersion, obj) + err = ur.kv.Set(earliestRoundStorageKey, obj) if err != nil { jww.FATAL.Panicf("Failed to store the earliest round: %+v", err) } diff --git a/cmix/identity/receptionID/store/unknownRounds.go b/cmix/identity/receptionID/store/unknownRounds.go index b14c939abdd27e72a284bf37ba71e763b6bd0536..9000369e00cba1bbe4ee745fdda78b4310a03c2e 100644 --- a/cmix/identity/receptionID/store/unknownRounds.go +++ b/cmix/identity/receptionID/store/unknownRounds.go @@ -223,7 +223,7 @@ func (urs *UnknownRounds) save() error { } // Save to disk - return urs.kv.Set(unknownRoundsStorageKey, unknownRoundsStorageVersion, obj) + return urs.kv.Set(unknownRoundsStorageKey, obj) } func (urs *UnknownRounds) Delete() { diff --git a/cmix/identity/tracker.go b/cmix/identity/tracker.go index 8d9f8a6d2a168d27147f9fe280f2d777e0b9935c..206c9ac13e3e93a9a6c3f69970dfca739fc6a0c5 100644 --- a/cmix/identity/tracker.go +++ b/cmix/identity/tracker.go @@ -394,7 +394,7 @@ func (t *manager) save() { Data: data, } - err = t.session.GetKV().Set(TrackerListKey, TrackerListVersion, obj) + err = t.session.GetKV().Set(TrackerListKey, obj) if err != nil { jww.FATAL.Panicf("Unable to save TrackedID list: %+v", err) } diff --git a/cmix/message/meteredCmixMessageBuffer.go b/cmix/message/meteredCmixMessageBuffer.go index 0bc82450812e8e993f43e63c61a658df48a27cc4..12241959098fa417d7b071fae8c5199a631469ca 100644 --- a/cmix/message/meteredCmixMessageBuffer.go +++ b/cmix/message/meteredCmixMessageBuffer.go @@ -55,6 +55,8 @@ func (*meteredCmixMessageHandler) SaveMessage(kv *versioned.KV, m interface{}, } // Save versioned object + // fixme: this had differing versions in object and set, + // reviewer please confirm this is correct before merge return kv.Set(key, utility.CurrentMessageBufferVersion, &obj) } diff --git a/cmix/nodes/store.go b/cmix/nodes/store.go index ff4511934e02bf57c78834de19c1bc99ea3ac0b1..c5c674a9fa3df7658f1ce18e709ba3f189780f5a 100644 --- a/cmix/nodes/store.go +++ b/cmix/nodes/store.go @@ -72,6 +72,8 @@ func (r *registrar) save() error { Data: data, } + // fixme: this had differing versions in object and set, + // reviewer please confirm this is correct before merge return r.kv.Set(storeKey, currentKeyVersion, &obj) } diff --git a/cmix/nodes/storeKey.go b/cmix/nodes/storeKey.go index 98b6e18cac27c1611bf6f6e2f01a2cf38551a3d2..9b8b6f75134eb280adee5f8c5b67c79ca845c23b 100644 --- a/cmix/nodes/storeKey.go +++ b/cmix/nodes/storeKey.go @@ -84,7 +84,7 @@ func (k *key) save() error { Data: data, } - return k.kv.Set(k.storeKey, currentKeyVersion, &obj) + return k.kv.Set(k.storeKey, &obj) } // delete deletes the key from the versioned keystore. diff --git a/cmix/pickup/store/store.go b/cmix/pickup/store/store.go index 4a1f83006a2dce8fead22551dcebfabb2127ad61..188d36152eef83bd2a67214f7aeb7a0f9b3f8746 100644 --- a/cmix/pickup/store/store.go +++ b/cmix/pickup/store/store.go @@ -218,7 +218,7 @@ func (s *UncheckedRoundStore) save() error { } // Save to storage - err = s.kv.Set(uncheckedRoundKey, uncheckedRoundVersion, obj) + err = s.kv.Set(uncheckedRoundKey, obj) if err != nil { return errors.WithMessagef(err, "Could not store data for unchecked rounds") diff --git a/cmix/pickup/store/uncheckedRounds.go b/cmix/pickup/store/uncheckedRounds.go index b15cc5b803cc9d3139746833c60b6baf14e5ac35..c44caf62d891a3a00ab076e4895cc335e43ac51e 100644 --- a/cmix/pickup/store/uncheckedRounds.go +++ b/cmix/pickup/store/uncheckedRounds.go @@ -147,7 +147,7 @@ func storeRoundInfo(kv *versioned.KV, info *pb.RoundInfo, recipient *id.ID, } return kv.Set( - roundKey(id.Round(info.ID), recipient, ephID), roundInfoVersion, &obj) + roundKey(id.Round(info.ID), recipient, ephID), &obj) } func loadRoundInfo(kv *versioned.KV, id id.Round, recipient *id.ID, diff --git a/cmix/rounds/roundStorage.go b/cmix/rounds/roundStorage.go index 2b92c819f9b6279dd30d4b8b37a503b146168501..2257f485a4d9299792b7e74b63e186dd948e8dfb 100644 --- a/cmix/rounds/roundStorage.go +++ b/cmix/rounds/roundStorage.go @@ -25,7 +25,7 @@ func StoreRound(kv *versioned.KV, round Round, key string) error { Data: marshaled, } - return kv.Set(key, currentRoundVersion, &obj) + return kv.Set(key, &obj) } // LoadRound stores the round using the key. diff --git a/e2e/e2eMessageBuffer.go b/e2e/e2eMessageBuffer.go index 00b196d6bd70d9c5dafe7e3915e1786d89581b61..6cc405ed50e0a9a3b8971296c175c8b97268ad3d 100644 --- a/e2e/e2eMessageBuffer.go +++ b/e2e/e2eMessageBuffer.go @@ -51,7 +51,7 @@ func (emh *e2eMessageHandler) SaveMessage(kv *versioned.KV, m interface{}, } // Save versioned object - return kv.Set(key, currentE2EMessageVersion, &obj) + return kv.Set(key, &obj) } // LoadMessage returns the e2eMessage with the specified key from the key value diff --git a/e2e/manager.go b/e2e/manager.go index 9fc1b4b3d123a4d0b6657cc2ddfa955f72866802..6650aa8622dabcfd588f7e10f4cc9d817affae6e 100644 --- a/e2e/manager.go +++ b/e2e/manager.go @@ -68,7 +68,7 @@ func initE2E(kv *versioned.KV, myID *id.ID, privKey *cyclic.Int, if err != nil { return errors.WithMessage(err, "Failed to marshal rekeyParams") } - err = kv.Set(e2eRekeyParamsKey, e2eRekeyParamsVer, &versioned.Object{ + err = kv.Set(e2eRekeyParamsKey, &versioned.Object{ Version: e2eRekeyParamsVer, Timestamp: netTime.Now(), Data: rekeyParamsData, @@ -121,7 +121,7 @@ func LoadLegacy(kv *versioned.KV, net cmix.Client, myID *id.ID, } // Store the rekey params to disk/memory - err = kv.Set(e2eRekeyParamsKey, e2eRekeyParamsVer, &versioned.Object{ + err = kv.Set(e2eRekeyParamsKey, &versioned.Object{ Version: e2eRekeyParamsVer, Timestamp: netTime.Now(), Data: rekeyParamsData, @@ -129,7 +129,7 @@ func LoadLegacy(kv *versioned.KV, net cmix.Client, myID *id.ID, if err != nil { return nil, err } - err = kv.Set(legacyE2EKey, e2eRekeyParamsVer, &versioned.Object{ + err = kv.Set(legacyE2EKey, &versioned.Object{ Version: e2eRekeyParamsVer, Timestamp: netTime.Now(), Data: []byte{1}, diff --git a/e2e/parse/conversation/partner.go b/e2e/parse/conversation/partner.go index 06155c697b6674c16261cb84af74ccb714feb69c..0d5ad0ff063583d4fd289db077350dbdabb650fc 100644 --- a/e2e/parse/conversation/partner.go +++ b/e2e/parse/conversation/partner.go @@ -163,7 +163,7 @@ func (c *Conversation) save() error { } key := makeConversationKey(c.partner) - return c.kv.Set(key, currentConversationVersion, &obj) + return c.kv.Set(key, &obj) } // delete removes the Conversation from KV storage. diff --git a/e2e/parse/conversation/ring.go b/e2e/parse/conversation/ring.go index 7e255451bae9eae4fbada051fc85ea4a1bb4067f..f2e21b2962581be34e48255543beac3d737d6ba8 100644 --- a/e2e/parse/conversation/ring.go +++ b/e2e/parse/conversation/ring.go @@ -231,7 +231,7 @@ func (b *Buff) saveBuff() error { Data: b.marshal(), } - return b.kv.Set(ringBuffKey, ringBuffVersion, obj) + return b.kv.Set(ringBuffKey, obj) } // marshal creates a byte buffer containing serialized information on the Buff. @@ -293,7 +293,7 @@ func (b *Buff) saveMessage(msg *Message) error { } return b.kv.Set( - makeMessageKey(msg.MessageId.truncate()), messageVersion, obj) + makeMessageKey(msg.MessageId.truncate()), obj) } diff --git a/e2e/parse/partition/multiPartMessage.go b/e2e/parse/partition/multiPartMessage.go index f7fd42085929395ea4fa3d4265909aeecf0fb467..88a0c64992bc10b78ed2154e93dd8e31d8f5e6e2 100644 --- a/e2e/parse/partition/multiPartMessage.go +++ b/e2e/parse/partition/multiPartMessage.go @@ -102,7 +102,7 @@ func (mpm *multiPartMessage) save() error { Data: data, } - return mpm.kv.Set(messageKey, currentMultiPartMessageVersion, &obj) + return mpm.kv.Set(messageKey, &obj) } func (mpm *multiPartMessage) Add(partNumber uint8, part []byte) { diff --git a/e2e/parse/partition/part.go b/e2e/parse/partition/part.go index 25b0e2566abe28ef39d5605ab1cdc90d5f2542f9..7d38738d9b4a35353f092ae575581d0358666ec7 100644 --- a/e2e/parse/partition/part.go +++ b/e2e/parse/partition/part.go @@ -34,7 +34,8 @@ func savePart(kv *versioned.KV, partNum uint8, part []byte) error { Timestamp: netTime.Now(), Data: part, } - + // fixme: this had differing versions in object and set, + // reviewer please confirm this is correct before merge return kv.Set(key, currentMultiPartMessageVersion, &obj) } diff --git a/e2e/parse/partition/part_test.go b/e2e/parse/partition/part_test.go index 53366fdb6d211a74e531e21cf8b4f0a9665079c3..13b664daa741662030a35d3445c2c19949da99d0 100644 --- a/e2e/parse/partition/part_test.go +++ b/e2e/parse/partition/part_test.go @@ -57,7 +57,7 @@ func Test_loadPart(t *testing.T) { // Save part to key value store err := rootKv.Set( - key, 0, &versioned.Object{Timestamp: netTime.Now(), Data: part}) + key, &versioned.Object{Timestamp: netTime.Now(), Data: part}) if err != nil { t.Errorf("Failed to set object: %+v", err) } diff --git a/e2e/parse/partition/store.go b/e2e/parse/partition/store.go index 868737ea996f4f30516fbadae66112286955d704..b0f76cffb503fe71d94f957f580764c018817fa8 100644 --- a/e2e/parse/partition/store.go +++ b/e2e/parse/partition/store.go @@ -160,7 +160,7 @@ func (s *Store) saveActiveParts() { Data: data, } - err = s.kv.Set(activePartitions, activePartitionVersion, &obj) + err = s.kv.Set(activePartitions, &obj) if err != nil { jww.FATAL.Panicf("Could not save active partitions: %+v", err) } diff --git a/e2e/ratchet/partner/relationship.go b/e2e/ratchet/partner/relationship.go index bd6f60ccef05edaaa526a01288b7905f4e351829..4982163b71eb594c857253873b94b2840eba1b08 100644 --- a/e2e/ratchet/partner/relationship.go +++ b/e2e/ratchet/partner/relationship.go @@ -161,7 +161,7 @@ func (r *relationship) save() error { Data: data, } - return r.kv.Set(relationshipKey, currentRelationshipVersion, &obj) + return r.kv.Set(relationshipKey, &obj) } //ekv functions diff --git a/e2e/ratchet/partner/relationshipFingerprint.go b/e2e/ratchet/partner/relationshipFingerprint.go index 9380b9a5051e9d82f76d3043e880350600425d6b..910f2795310390a3ddcccf679bb1943d0b71a1a4 100644 --- a/e2e/ratchet/partner/relationshipFingerprint.go +++ b/e2e/ratchet/partner/relationshipFingerprint.go @@ -45,6 +45,8 @@ func storeRelationshipFingerprint(fp []byte, kv *versioned.KV) error { Data: fp, } + // fixme: this had differing versions in object and set, + // reviewer please confirm this is correct before merge return kv.Set(relationshipFingerprintKey, currentRelationshipVersion, &obj) } diff --git a/e2e/ratchet/partner/session/session.go b/e2e/ratchet/partner/session/session.go index d0ee6ca19b1e233699ca6d7869e7e88420046b19..6e6296ca545bd14ff289d5567a3f9c77b17ba1ee 100644 --- a/e2e/ratchet/partner/session/session.go +++ b/e2e/ratchet/partner/session/session.go @@ -239,7 +239,7 @@ func (s *Session) Save() error { jww.WARN.Printf("saving with KV: %v", s.kv) - return s.kv.Set(sessionKey, currentSessionVersion, &obj) + return s.kv.Set(sessionKey, &obj) } /*METHODS*/ diff --git a/e2e/ratchet/storage.go b/e2e/ratchet/storage.go index 999938dc7ec1784743163acfd34a550a24134544..735b50e391ec5bb13dd73e6afeed962c9f050950 100644 --- a/e2e/ratchet/storage.go +++ b/e2e/ratchet/storage.go @@ -92,7 +92,7 @@ func (r *Ratchet) save() error { Data: data, } - return r.kv.Set(storeKey, currentStoreVersion, &obj) + return r.kv.Set(storeKey, &obj) } // ekv functions diff --git a/fileTransfer/store/cypher/manager.go b/fileTransfer/store/cypher/manager.go index be1662d2da1dd4eb7062e990b31dc341fa3eae92..858f43d5d8ab7736078d77e4e60104dd1697a760 100644 --- a/fileTransfer/store/cypher/manager.go +++ b/fileTransfer/store/cypher/manager.go @@ -164,7 +164,7 @@ func saveKey(key *ftCrypto.TransferKey, kv *versioned.KV) error { Data: key.Bytes(), } - return kv.Set(cypherManagerKeyStoreKey, cypherManagerKeyStoreVersion, obj) + return kv.Set(cypherManagerKeyStoreKey, obj) } // loadKey loads the transfer key from storage. diff --git a/fileTransfer/store/received.go b/fileTransfer/store/received.go index 8522f6a86abad452e0c49e871e64d54ce139c8e7..08e0fdfed0fc0419015db48a5fe4c23e63b79044 100644 --- a/fileTransfer/store/received.go +++ b/fileTransfer/store/received.go @@ -157,7 +157,7 @@ func (r *Received) save() error { Data: data, } - return r.kv.Set(receivedTransfersStoreKey, receivedTransfersStoreVersion, obj) + return r.kv.Set(receivedTransfersStoreKey, obj) } // marshalReceivedTransfersMap serialises the list of transfer IDs from a diff --git a/fileTransfer/store/receivedTransfer.go b/fileTransfer/store/receivedTransfer.go index db6f54264a4094e22b53b32e7f763b700adc3827..f3844ade5025fdc4406692c8ed5dc8fb49fc973d 100644 --- a/fileTransfer/store/receivedTransfer.go +++ b/fileTransfer/store/receivedTransfer.go @@ -339,7 +339,7 @@ func (rt *ReceivedTransfer) save() error { } // Save versioned object - return rt.kv.Set(receivedTransferStoreKey, receivedTransferStoreVersion, vo) + return rt.kv.Set(receivedTransferStoreKey, vo) } // receivedTransferDisk structure is used to marshal and unmarshal @@ -385,7 +385,7 @@ func savePart(part []byte, partNum int, kv *versioned.KV) error { Data: part, } - return kv.Set(makeReceivedPartKey(partNum), receivedPartStoreVersion, obj) + return kv.Set(makeReceivedPartKey(partNum), obj) } // loadPart loads the part with the given part number from storage. diff --git a/fileTransfer/store/sent.go b/fileTransfer/store/sent.go index 7873d5b469bafc8666b0951d55d7852aff0c1ae6..ca6d284ce193661f3c63c73f4b8d9cde93ca4c38 100644 --- a/fileTransfer/store/sent.go +++ b/fileTransfer/store/sent.go @@ -165,7 +165,7 @@ func (s *Sent) save() error { Data: data, } - return s.kv.Set(sentTransfersStoreKey, sentTransfersStoreVersion, obj) + return s.kv.Set(sentTransfersStoreKey, obj) } // marshalSentTransfersMap serialises the list of transfer IDs from a diff --git a/fileTransfer/store/sentTransfer.go b/fileTransfer/store/sentTransfer.go index 83b9594fb0a6764ace36514d86e38cfcb0b985b8..629304236faacffe5613e26379f9728748443bb5 100644 --- a/fileTransfer/store/sentTransfer.go +++ b/fileTransfer/store/sentTransfer.go @@ -346,7 +346,7 @@ func (st *SentTransfer) save() error { Data: data, } - return st.kv.Set(sentTransferStoreKey, sentTransferStoreVersion, obj) + return st.kv.Set(sentTransferStoreKey, obj) } // sentTransferDisk structure is used to marshal and unmarshal SentTransfer diff --git a/groupChat/groupStore/group.go b/groupChat/groupStore/group.go index 2c7d3e91739af0494f74316fac517b937cd86e86..db6accc3da30d86ca7ef14558d0246e0a0623031 100644 --- a/groupChat/groupStore/group.go +++ b/groupChat/groupStore/group.go @@ -105,7 +105,7 @@ func (g Group) store(kv *versioned.KV) error { Data: g.Serialize(), } - return kv.Set(groupStoreKey(g.ID), groupStoreVersion, obj) + return kv.Set(groupStoreKey(g.ID), obj) } // loadGroup returns the group with the corresponding ID from storage. diff --git a/groupChat/groupStore/store.go b/groupChat/groupStore/store.go index f2372be86f92e454dcd06320658d4beb11d69e4e..97c0a6ac556ee807ea1aa5e417e56b5bed42c760 100644 --- a/groupChat/groupStore/store.go +++ b/groupChat/groupStore/store.go @@ -126,7 +126,7 @@ func (s *Store) saveGroupList() error { } // Save to storage - return s.kv.Set(groupListStorageKey, groupListVersion, obj) + return s.kv.Set(groupListStorageKey, obj) } // serializeGroupIdList serializes the list of group IDs. diff --git a/storage/clientVersion/store.go b/storage/clientVersion/store.go index 5b6e951ef6c0bf5b86049b636606fa015f9d4062..6265e5900b169b52840423e7c429cd1983698c9e 100644 --- a/storage/clientVersion/store.go +++ b/storage/clientVersion/store.go @@ -113,5 +113,5 @@ func (s *Store) save() error { Data: []byte(s.version.String()), } - return s.kv.Set(storeKey, storeVersion, &obj) + return s.kv.Set(storeKey, &obj) } diff --git a/storage/clientVersion/store_test.go b/storage/clientVersion/store_test.go index 0e8cae86f2822b5ea9d3cb09e1bc71cd0c682884..a2bbf737f0b698f54ddf3007c2eaf2219da98c5b 100644 --- a/storage/clientVersion/store_test.go +++ b/storage/clientVersion/store_test.go @@ -71,7 +71,7 @@ func TestLoadStore_ParseVersionError(t *testing.T) { Data: []byte("invalid version"), } - err := kv.Prefix(prefix).Set(storeKey, storeVersion, &obj) + err := kv.Prefix(prefix).Set(storeKey, &obj) if err != nil { t.Fatalf("Failed to save Store: %+v", err) } diff --git a/storage/session.go b/storage/session.go index d181f07428b1178b83a7b0121c980882c79d1c37..844177191957e86bc6d1cdd3fa957a9089899df7 100644 --- a/storage/session.go +++ b/storage/session.go @@ -195,9 +195,10 @@ func (s *session) Get(key string) (*versioned.Object, error) { return s.kv.Get(key, currentSessionVersion) } -// Set a value in the session +// Set a value in the session. If you wish to maintain versioning, +// the [versioned.Object]'s Version field must be set. func (s *session) Set(key string, object *versioned.Object) error { - return s.kv.Set(key, currentSessionVersion, object) + return s.kv.Set(key, object) } // Delete a value in the session diff --git a/storage/user/cryptographic.go b/storage/user/cryptographic.go index 8c245fc70ac257dc9eef14d9848be007c7831343..fe038e831266b1581a3ba78436090e8ef105658e 100644 --- a/storage/user/cryptographic.go +++ b/storage/user/cryptographic.go @@ -216,8 +216,7 @@ func (ci *CryptographicIdentity) save(kv *versioned.KV) error { Data: enc, } - return kv.Set(cryptographicIdentityKey, - currentCryptographicIdentityVersion, obj) + return kv.Set(cryptographicIdentityKey, obj) } func (ci *CryptographicIdentity) GetTransmissionID() *id.ID { diff --git a/storage/user/registation.go b/storage/user/registation.go index 4da19b4cd0faf8e83fe22ad2e177afb8d8109897..50090edc79f07d65770e13c053fec8f6dee25177 100644 --- a/storage/user/registation.go +++ b/storage/user/registation.go @@ -95,8 +95,7 @@ func (u *User) SetTransmissionRegistrationValidationSignature(b []byte) { Data: b, } - err := u.kv.Set(transmissionRegValidationSigKey, - currentRegValidationSigVersion, obj) + err := u.kv.Set(transmissionRegValidationSigKey, obj) if err != nil { jww.FATAL.Panicf("Failed to store the transmission Identity Validation "+ "Signature: %s", err) @@ -122,8 +121,7 @@ func (u *User) SetReceptionRegistrationValidationSignature(b []byte) { Data: b, } - err := u.kv.Set(receptionRegValidationSigKey, - currentRegValidationSigVersion, obj) + err := u.kv.Set(receptionRegValidationSigKey, obj) if err != nil { jww.FATAL.Panicf("Failed to store the reception Identity Validation "+ "Signature: %s", err) @@ -153,6 +151,8 @@ func (u *User) SetRegistrationTimestamp(tsNano int64) { Data: tsBytes, } + // fixme: this had differing versions in object and set, + // reviewer please confirm this is correct before merge err := u.kv.Set(registrationTimestampKey, registrationTimestampVersion, obj) if err != nil { diff --git a/storage/user/registation_test.go b/storage/user/registation_test.go index 346e662758223a755e13c5e19186002ae6b9ec6f..8f348232419d681968459d830e38aae8449eca08 100644 --- a/storage/user/registation_test.go +++ b/storage/user/registation_test.go @@ -137,7 +137,7 @@ func TestUser_loadRegistrationValidationSignature(t *testing.T) { sig := []byte("transmissionsignature") err = kv.Set(transmissionRegValidationSigKey, - currentRegValidationSigVersion, &versioned.Object{ + &versioned.Object{ Version: currentRegValidationSigVersion, Timestamp: netTime.Now(), Data: sig, @@ -153,7 +153,7 @@ func TestUser_loadRegistrationValidationSignature(t *testing.T) { sig = []byte("receptionsignature") err = kv.Set(receptionRegValidationSigKey, - currentRegValidationSigVersion, &versioned.Object{ + &versioned.Object{ Version: currentRegValidationSigVersion, Timestamp: netTime.Now(), Data: sig, @@ -252,12 +252,12 @@ func TestUser_loadRegistrationTimestamp(t *testing.T) { data := make([]byte, 8) binary.BigEndian.PutUint64(data, uint64(testTime.UnixNano())) vo := &versioned.Object{ - Version: currentRegValidationSigVersion, + Version: registrationTimestampVersion, Timestamp: netTime.Now(), Data: data, } - err = kv.Set(registrationTimestampKey, - registrationTimestampVersion, vo) + + err = kv.Set(registrationTimestampKey, vo) if err != nil { t.Errorf("Failed to set reg validation sig key in kv store: %+v", err) } diff --git a/storage/user/username.go b/storage/user/username.go index c36e0eba99883f5d735d4aeb2e557848f8ff4180..aff6479255ae17a152f41f8cc54b0e8ff18fb5af 100644 --- a/storage/user/username.go +++ b/storage/user/username.go @@ -39,7 +39,7 @@ func (u *User) SetUsername(username string) error { Data: []byte(username), } - err := u.kv.Set(usernameKey, currentUsernameVersion, obj) + err := u.kv.Set(usernameKey, obj) if err != nil { jww.FATAL.Panicf("Failed to store the username: %s", err) } diff --git a/storage/user/username_test.go b/storage/user/username_test.go index a52b20ac003d692c38ba632299354bb8ce698faf..1050f0f6e5a87e483e13e2bacc101b0a9d295ae4 100644 --- a/storage/user/username_test.go +++ b/storage/user/username_test.go @@ -120,7 +120,7 @@ func TestUser_loadUsername(t *testing.T) { u1 := "zezima" - err = u.kv.Set(usernameKey, currentUsernameVersion, &versioned.Object{ + err = u.kv.Set(usernameKey, &versioned.Object{ Version: currentUsernameVersion, Timestamp: netTime.Now(), Data: []byte(u1), diff --git a/storage/utility/NDF.go b/storage/utility/NDF.go index e4e6281b26ed92c6466a8afaa9cbec7375ed5107..04fc726ee8130db7f181a50332d82e281f1646aa 100644 --- a/storage/utility/NDF.go +++ b/storage/utility/NDF.go @@ -43,5 +43,5 @@ func SaveNDF(kv *versioned.KV, key string, ndf *ndf.NetworkDefinition) error { Data: marshaled, } - return kv.Set(key, currentNDFVersion, &obj) + return kv.Set(key, &obj) } diff --git a/storage/utility/blockStore.go b/storage/utility/blockStore.go index 053e015dd2171e41755afeb6c0e9674d4a2daf78..62d36110d31beea64ef7bf134ca7a090092a8c9d 100644 --- a/storage/utility/blockStore.go +++ b/storage/utility/blockStore.go @@ -155,7 +155,7 @@ func (bs *BlockStore) saveBlock() error { } // Save to storage - err = bs.kv.Set(bs.getKey(bs.lastSaved), blockVersion, &obj) + err = bs.kv.Set(bs.getKey(bs.lastSaved), &obj) if err != nil { return errors.Errorf(bKvSaveErr, bs.lastSaved, err) } @@ -214,7 +214,7 @@ func (bs *BlockStore) save() error { } // Save to storage - err := bs.kv.Set(blockStoreKey, blockStoreVersion, &obj) + err := bs.kv.Set(blockStoreKey, &obj) if err != nil { return errors.Errorf(bsKvSaveErr, err) } diff --git a/storage/utility/blockStore_test.go b/storage/utility/blockStore_test.go index 3f13417858d38cb5d7b94667f17c0d17535bf29b..8758c6b23b49832dcc2074a8a0de18a2538bdd66 100644 --- a/storage/utility/blockStore_test.go +++ b/storage/utility/blockStore_test.go @@ -208,7 +208,7 @@ func TestBlockStore_loadBlock_UnmarshalError(t *testing.T) { } // Save to storage - err := bs.kv.Set(bs.getKey(bs.lastSaved), blockVersion, &obj) + err := bs.kv.Set(bs.getKey(bs.lastSaved), &obj) if err != nil { t.Errorf("Failed to save data to KV: %+v", err) } @@ -338,7 +338,7 @@ func TestBlockStore_load_UnmarshalError(t *testing.T) { } // Save to storage - err := kv.Set(blockStoreKey, blockStoreVersion, &obj) + err := kv.Set(blockStoreKey, &obj) if err != nil { t.Fatalf("failed to save object to storage: %+v", err) } diff --git a/storage/utility/bucket.go b/storage/utility/bucket.go index 46b3da9a9d7733b0ce2abb5812a451ea9ae8e419..064989ea7ac9980c96e17853904b2b09a0e1c489 100644 --- a/storage/utility/bucket.go +++ b/storage/utility/bucket.go @@ -68,7 +68,7 @@ func (s *BucketStore) save(inBucket uint32, timestamp int64) { Data: data, } - err = s.kv.Set(bucketStoreKey, bucketStoreVersion, &obj) + err = s.kv.Set(bucketStoreKey, &obj) if err != nil { jww.ERROR.Printf("Failed to store %s bucket data: %v", diff --git a/storage/utility/bucketParams.go b/storage/utility/bucketParams.go index 756666fa353628fabbb5dee9e4077510cf6666a9..4399001dcbab78788b014f4fc42f67c36baf39b2 100644 --- a/storage/utility/bucketParams.go +++ b/storage/utility/bucketParams.go @@ -99,7 +99,7 @@ func (s *BucketParamStore) save() error { } // Store object into storage - return s.kv.Set(bucketParamsKey, bucketParamsVersion, object) + return s.kv.Set(bucketParamsKey, object) } // load extracts the bucket params from store and loads it into the diff --git a/storage/utility/contact.go b/storage/utility/contact.go index 2050efd8a2664a41bb34c557c807f73d94879a57..41de84a71723290957cc89b6931c001185a3e777 100644 --- a/storage/utility/contact.go +++ b/storage/utility/contact.go @@ -35,7 +35,7 @@ func StoreContact(kv *versioned.KV, c contact.Contact) error { Data: c.Marshal(), } - return kv.Set(makeContactKey(c.ID), currentContactVersion, &obj) + return kv.Set(makeContactKey(c.ID), &obj) } // LoadContact reads a contact from a versioned.KV vie their contact ID. diff --git a/storage/utility/dh.go b/storage/utility/dh.go index 6295e446d3563127c4c1262733eb3abf8ac8b91e..88d827e18fc037b80aa56840dddae257eec5733f 100644 --- a/storage/utility/dh.go +++ b/storage/utility/dh.go @@ -29,7 +29,7 @@ func StoreCyclicKey(kv *versioned.KV, cy *cyclic.Int, key string) error { Data: data, } - return kv.Set(key, currentCyclicVersion, &obj) + return kv.Set(key, &obj) } func LoadCyclicKey(kv *versioned.KV, key string) (*cyclic.Int, error) { diff --git a/storage/utility/group.go b/storage/utility/group.go index 531a31ae4beb24a31cc1aa1ee4d13889e32436b3..aafbafe4e95e84fb60944251468ab42bacefc297 100644 --- a/storage/utility/group.go +++ b/storage/utility/group.go @@ -29,7 +29,7 @@ func StoreGroup(kv *versioned.KV, grp *cyclic.Group, key string) error { Data: data, } - return kv.Set(key, currentGroupVersion, &obj) + return kv.Set(key, &obj) } func LoadGroup(kv *versioned.KV, key string) (*cyclic.Group, error) { diff --git a/storage/utility/id.go b/storage/utility/id.go index 08472b53e36da3d4912886ca3b19931d0120f78d..691cde8243171dbcc17d9d8bdddaa24153a1d81c 100644 --- a/storage/utility/id.go +++ b/storage/utility/id.go @@ -22,7 +22,7 @@ func StoreID(kv *versioned.KV, sid *id.ID, key string) error { Data: data, } - return kv.Set(key, currentIDVersion, &obj) + return kv.Set(key, &obj) } func LoadID(kv *versioned.KV, key string) (*id.ID, error) { diff --git a/storage/utility/messageBuffer.go b/storage/utility/messageBuffer.go index 4e5a5d32fb1f6695965cd97d1d28a64512eb0ba0..f1ef3895e3b55885f1099b54b9925b32e41de4d8 100644 --- a/storage/utility/messageBuffer.go +++ b/storage/utility/messageBuffer.go @@ -146,7 +146,7 @@ func (mb *MessageBuffer) save() error { } // Save versioned object - return mb.kv.Set(mb.key, CurrentMessageBufferVersion, &obj) + return mb.kv.Set(mb.key, &obj) } // getMessageList returns a list of all message hashes stored in messages and diff --git a/storage/utility/multiStateVector.go b/storage/utility/multiStateVector.go index caeeb347f0593852be4ea3bcbdc4c0c2fb558ced..3ab8cc143f6d569f55d8d73b5aa923de6c187a09 100644 --- a/storage/utility/multiStateVector.go +++ b/storage/utility/multiStateVector.go @@ -502,7 +502,7 @@ func (msv *MultiStateVector) save() error { Data: data, } - return msv.kv.Set(msv.key, multiStateVectorVersion, obj) + return msv.kv.Set(msv.key, obj) } // Delete removes the MultiStateVector from storage. diff --git a/storage/utility/multiStateVector_test.go b/storage/utility/multiStateVector_test.go index 38085804b5bf11adbf35e21d240863b84b2a2a0c..ddaf9d9e85c62fe6e47d0c1e6ec70246bb1e0630 100644 --- a/storage/utility/multiStateVector_test.go +++ b/storage/utility/multiStateVector_test.go @@ -890,7 +890,7 @@ func TestLoadMultiStateVector_UnmarshalError(t *testing.T) { expectedErr := strings.Split(loadUnmarshalMsvErr, "%")[0] // Save invalid data to storage - err := kv.Set(makeMultiStateVectorKey(key), multiStateVectorVersion, + err := kv.Set(makeMultiStateVectorKey(key), &versioned.Object{ Version: multiStateVectorVersion, Timestamp: netTime.Now(), diff --git a/storage/utility/sidh.go b/storage/utility/sidh.go index d8082d872944fa2a24e9f04142e53aff8944f0e7..90facf119f626841f7584b9c631837c61d25760b 100644 --- a/storage/utility/sidh.go +++ b/storage/utility/sidh.go @@ -93,7 +93,7 @@ func StoreSIDHPublicKey(kv *versioned.KV, sidH *sidh.PublicKey, key string) erro Data: sidHBytes, } - return kv.Set(key, currentSIDHPubKeyVersion, &obj) + return kv.Set(key, &obj) } // LoadSIDHPubKeyA loads a public key from storage. @@ -138,7 +138,7 @@ func StoreSIDHPrivateKey(kv *versioned.KV, sidH *sidh.PrivateKey, key string) er Data: sidHBytes, } - return kv.Set(key, currentSIDHPrivKeyVersion, &obj) + return kv.Set(key, &obj) } // LoadSIDHPrivateKeyA loads a public key from storage. diff --git a/storage/utility/stateVector.go b/storage/utility/stateVector.go index 2ed89e2faef5fe3ebcc591e0ca0c933bcd71faf3..98d5ee3c29b19dbaf896d458a85781e0df32e60b 100644 --- a/storage/utility/stateVector.go +++ b/storage/utility/stateVector.go @@ -388,7 +388,7 @@ func (sv *StateVector) save() error { Data: data, } - return sv.kv.Set(sv.key, currentStateVectorVersion, &obj) + return sv.kv.Set(sv.key, &obj) } // Delete remove the StateVector from storage. diff --git a/storage/utility/stateVector_test.go b/storage/utility/stateVector_test.go index 4b2188b25c6dd41689aea9cbe003ea0ba8443b7a..aecfbe361dd3b083a639ce004374300cb56837bd 100644 --- a/storage/utility/stateVector_test.go +++ b/storage/utility/stateVector_test.go @@ -582,7 +582,7 @@ func TestLoadStateVector_UnmarshalError(t *testing.T) { Timestamp: netTime.Now(), Data: []byte("invalidStateVector"), } - err := kv.Set(makeStateVectorKey(key), currentStateVectorVersion, &obj) + err := kv.Set(makeStateVectorKey(key), &obj) if err != nil { t.Errorf("Failed to save invalid StateVector to storage: %+v", err) } diff --git a/storage/versioned/kv.go b/storage/versioned/kv.go index 13f05e82c7449282c669453eefbff1a6bb03ad46..6bc4ef4bcc4b1d75f4ed9cf8e0a7a4142f146c08 100644 --- a/storage/versioned/kv.go +++ b/storage/versioned/kv.go @@ -131,8 +131,10 @@ func (v *KV) Delete(key string, version uint64) error { // Set upserts new data into the storage // When calling this, you are responsible for prefixing the key with the correct // type optionally unique id! Call MakeKeyWithPrefix() to do so. -func (v *KV) Set(key string, version uint64, object *Object) error { - key = v.makeKey(key, version) +// The [Object] should contain the versioning if you are maintaining such +// a functionality. +func (v *KV) Set(key string, object *Object) error { + key = v.makeKey(key, object.Version) jww.TRACE.Printf("Set %p with key %v", v.r.data, key) return v.r.data.Set(key, object) } diff --git a/storage/versioned/kv_test.go b/storage/versioned/kv_test.go index cd34474ed2fe18942286a88db17ccce3f71295c1..bc1cb53fb5394cafdd0df487f5973a25b68ed729 100644 --- a/storage/versioned/kv_test.go +++ b/storage/versioned/kv_test.go @@ -188,7 +188,7 @@ func TestVersionedKV_Set(t *testing.T) { Timestamp: netTime.Now(), Data: []byte("not upgraded"), } - err := vkv.Set("test", originalVersion, &original) + err := vkv.Set("test", &original) if err != nil { t.Fatal(err) } diff --git a/ud/registered.go b/ud/registered.go index 77742fc17923e1b0a30c03622db40e797e76ec36..b9c9cd5c7c412f9f321e7b196c25555f6d2e67ee 100644 --- a/ud/registered.go +++ b/ud/registered.go @@ -32,7 +32,7 @@ func setRegistered(kv *versioned.KV) error { Data: data, } - if err := kv.Set(isRegisteredKey, isRegisteredVersion, obj); err != nil { + if err := kv.Set(isRegisteredKey, obj); err != nil { jww.FATAL.Panicf("Failed to store that the client is "+ "registered: %+v", err) } diff --git a/ud/store/store.go b/ud/store/store.go index 0cf274add91a8d08791e7b0c189b8d190d0f7962..8576ed374d96d22f6ccee4ab75bca4a6eb5f1910 100644 --- a/ud/store/store.go +++ b/ud/store/store.go @@ -94,7 +94,7 @@ func (s *Store) saveConfirmedFacts() error { } // Save to storage - return s.kv.Set(confirmedFactKey, version, &obj) + return s.kv.Set(confirmedFactKey, &obj) } // saveUnconfirmedFacts saves all data within Store.unconfirmedFacts into storage. @@ -113,7 +113,7 @@ func (s *Store) saveUnconfirmedFacts() error { } // Save to storage - return s.kv.Set(unconfirmedFactKey, version, &obj) + return s.kv.Set(unconfirmedFactKey, &obj) }