Commit graph

953 commits

Author SHA1 Message Date
Hubert Chathi
c23ce70fc6 improve handling of olm_session_describe when buffer is too short 2021-12-10 16:14:46 -05:00
Hubert Chathi
2dbeea2f1d release 3.2.7 2021-12-06 11:01:21 -05:00
Valere
e854c0f907 Quick fixes 2021-12-02 21:46:32 +00:00
valere
f647747d27 fallback key java bindings 2021-12-02 21:46:32 +00:00
Benjamin Kampmann
f6309f0281 Disable forced exports (introduced in 72b8bf53) for wasm. 2021-12-02 12:27:37 -05:00
Hubert Chathi
4b2f68d11e add missing word 2021-12-01 15:36:46 -05:00
Hubert Chathi
fb162258ab add function to TypeScript declaration 2021-12-01 14:34:41 -05:00
Hubert Chathi
ee76674f03 remove duplicate definition 2021-12-01 14:34:29 -05:00
Damir Jelić
701f9c765d python: Expose the method to forget the old fallback key 2021-11-24 20:06:24 +01:00
Damir Jelić
85a2f47088 python: Use the unpublished fallback key lenght when outputing fallback keys 2021-11-24 20:06:24 +01:00
Damir Jelić
8c62046392 python: Add support to generate fallback keys 2021-11-24 20:06:24 +01:00
Damir Jelić
845e7cb43b python: Remove Python 2 from the makefile 2021-11-24 20:06:24 +01:00
Hubert Chathi
69ca6cd5ca publish to gitlab.matrix.org Maven repository 2021-11-24 16:06:51 +00:00
Benjamin Kampmann
336e1d56a8 disable DEBUG symbols for emscripten build 2021-11-24 10:43:23 -05:00
Hubert Chathi
6f59e16b58 update function documentation 2021-11-23 22:35:10 +00:00
Denis Kasak
5e5e32fe83 fix typo 2021-11-23 22:35:10 +00:00
Hubert Chathi
631f050554 add a test for fallback keys, and clear memory when we forget the old fallback 2021-11-23 22:35:10 +00:00
Hubert Chathi
29e0287ef3 add function to forget the old fallback key 2021-11-23 22:35:10 +00:00
Hubert Chathi
c5eff859cb add JavaScript function for getting unpublished fallback key 2021-11-23 22:35:10 +00:00
Hubert Chathi
4127a84b3d add function for getting length of unpublished fallback keys
and fix a typo
2021-11-23 22:35:10 +00:00
Hubert Chathi
3b6ff327c0 keep testing logs 2021-11-23 22:35:10 +00:00
Hubert Chathi
b989db0117 track if fallback keys were published 2021-11-23 22:35:10 +00:00
Hubert Chathi
5039c0cc3a fix python build 2021-11-19 15:49:12 -05:00
Hubert Chathi
98b8e35a7c fix symbol exporting again 2021-11-19 15:28:43 -05:00
Denis Kasak
2430e9bb9a Add link to the Security Disclosure Policy to the README. 2021-11-19 10:17:37 +00:00
Hubert Chathi
609e7e8d40 make sure we have enough space for the encrypted and encoded version of the junk 2021-11-17 14:18:03 -05:00
Hubert Chathi
06b723db6e add note about telling olm how to find wasm file 2021-11-11 14:05:07 -05:00
Johannes Marbach
bce4f007b1 Use classic instead of semantic import
This replaces the semantic import for the Security framework with a
classic one. Semantic imports are currently not compatible with Kotlin
Multiplatform Mobile projects which makes OLMKit (and consequently
the iOS Matrix SDK) unusable in KMM.

Fixes: https://github.com/matrix-org/olm/issues/67
Signed-off-by: Johannes Marbach <n0-0ne@mailbox.org>
2021-11-08 15:15:46 -05:00
Hubert Chathi
0e7c0a5613 recommend using cmake more strongly 2021-11-02 16:16:07 -04:00
Hubert Chathi
201f139523 also install olm_export.h when using make 2021-11-02 12:49:52 -04:00
Hubert Chathi
03c5523aac fix typo 2021-09-29 18:33:30 -04:00
Hubert Chathi
8656f1463c release 3.2.6 2021-09-16 17:16:56 -04:00
Hubert Chathi
c81dfd0718 fix Python build 2021-09-16 17:06:45 -04:00
Hubert Chathi
4fb723cad3 install the export header too 2021-09-16 15:09:42 -04:00
Hubert Chathi
72b8bf5334 use visibility annotation rather than version file with CMake 2021-09-16 13:45:10 -04:00
Hubert Chathi
904e80b75f release 3.2.5 2021-09-15 19:15:58 -04:00
Onuray Sahin
06407aa08d Generate and retrieve fallback key functions added. 2021-09-14 22:19:13 +00:00
Hubert Chathi
6a63a5bfa9 use full path to externs.js because it's failing to find it 2021-09-14 18:18:26 -04:00
Hubert Chathi
e1aa1b3277 add jOlm binding 2021-08-25 21:50:33 -04:00
Stefan Ceriu
91a619b745 Added ObjC fallbackKey support and updated tests. 2021-08-18 16:44:34 +03:00
Stefan Ceriu
8ddb72cfed Updated podfile and added Xcode schemes for both iOS and macOS. 2021-08-18 16:40:32 +03:00
Hubert Chathi
6c552dd7eb use the right size in the tests 2021-08-09 16:21:13 -04:00
Hubert Chathi
d84c1af882 East const for consistency 2021-08-06 17:36:01 -04:00
Hubert Chathi
4d6c3ba8d1 make account const in create_outbound_session 2021-08-06 17:29:56 -04:00
Denis Kasak
b70e0b06df Differentiate between malformed pickle objects and trailing junk data.
Adds the OLM_PICKLE_EXTRA_DATA error code. We fail with this code when
the pickle object looks right except for some unexpected trailing bytes
which we didn't process.
2021-07-31 01:27:43 +00:00
Denis Kasak
d704f4bd3c Fail when an unpickle succeeds but has extra junk data at the end.
Also adds tests to ensure this is working.
2021-07-31 01:27:43 +00:00
Denis Kasak
131f7cfd71 Fix off-by-one comparison error when unpickling uint32_t. 2021-07-31 01:27:43 +00:00
Denis Kasak
bdd73c5c32 Fix unpickling error handling. 2021-07-31 01:27:43 +00:00
Denis Kasak
34974551ab unpickle_account: Add error checking to the harness. 2021-07-31 01:27:43 +00:00
Denis Kasak
0a8bbde361 Support building a "disarmed" target via the OLM_FUZZING macro.
Like other crypto libs, libolm contains many obstacles which a fuzzer is
unlikely to be able to surmount but which are not important for the end
goal of fuzzing. The easiest and most robust way around this is to remove
these obstacles conditionally when building the fuzzer binaries.

This commit adds a preprocessor macro OLM_FUZZING which can be used to
conditionally disables problematic bits of code during compile-time for
easier fuzzing.

Currently the only thing it disables is the encryption/decryption and
base64 encoding/decoding when processing pickled Megolm keys. This
allows the fuzzers to fuzz the unpickling functionality directly without
inadvertently fuzzing the base64 encoder and encryption (which should be
fuzzed separately).

The macro is set in the Makefile *only* when building fuzzer binaries.
2021-07-13 13:51:16 +02:00