From 842df1ac3905705bfde3cf55eba56f4816bd5a06 Mon Sep 17 00:00:00 2001 From: Moxie Marlinspike Date: Wed, 4 Dec 2013 19:55:30 -0800 Subject: [PATCH] Remove receiver chains that are 5 old. --- .../whispersystems/textsecure/storage/SessionRecordV2.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/library/src/org/whispersystems/textsecure/storage/SessionRecordV2.java b/library/src/org/whispersystems/textsecure/storage/SessionRecordV2.java index 6d9bc96595..18809b22c1 100644 --- a/library/src/org/whispersystems/textsecure/storage/SessionRecordV2.java +++ b/library/src/org/whispersystems/textsecure/storage/SessionRecordV2.java @@ -230,8 +230,13 @@ public class SessionRecordV2 extends Record { .setSenderEphemeral(ByteString.copyFrom(senderEphemeral.serialize())) .build(); - // XXX knock old chain out. this.sessionStructure = this.sessionStructure.toBuilder().addReceiverChains(chain).build(); + + if (this.sessionStructure.getReceiverChainsList().size() > 5) { + this.sessionStructure = this.sessionStructure.toBuilder() + .removeReceiverChains(0) + .build(); + } } public void setSenderChain(ECKeyPair senderEphemeralPair, ChainKey chainKey) {