about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorPaul Fariello <paul@fariello.eu>2019-04-10 18:58:06 +0320
committerPaul Fariello <paul@fariello.eu>2019-04-10 17:24:56 +0200
commitad21021ce7905b500d6302964aecb3911c8e2157 (patch)
treeaa6e7a7e8246f4fa938d0411d2a5738779c8be56
parentdf648ba959621905769674e861d44d527e09e249 (diff)
downloadprofani-tty-ad21021ce7905b500d6302964aecb3911c8e2157.tar.gz
Fix issue with first encrypted message
When decrypting first message with prekey, libsignal wants to remove
used prekey from storage. Return value on success should be 0.

We used to return number of deleted keys. Thus libsignal was considering
we failed to remove the key and we were ignoring plaintext.
-rw-r--r--src/omemo/store.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/omemo/store.c b/src/omemo/store.c
index e380e12b..76b7449c 100644
--- a/src/omemo/store.c
+++ b/src/omemo/store.c
@@ -225,7 +225,11 @@ remove_pre_key(uint32_t pre_key_id, void *user_data)
 
     omemo_identity_keyfile_save();
 
-    return ret;
+    if (ret > 0) {
+        return SG_SUCCESS;
+    } else {
+        return SG_ERR_INVALID_KEY_ID;
+    }
 }
 
 int