Commit Graph

375 Commits (90b36130532d2d8040b39e310d8d0d5ee22aea0a)

Author SHA1 Message Date
Richard van der Hoff 90b3613053 Merge pull request #36 from matrix-org/manuroe/olmkit
OLMKit
2016-12-22 14:43:01 +00:00
Richard van der Hoff fb91b1f182 Merge pull request #41 from matrix-org/rav/js_tests
Add some tests for the Javascript wrappers
2016-12-20 12:03:07 +00:00
manuroe 46ad79517e OLMKit: More zeroing 2016-12-20 11:46:57 +01:00
manuroe 3540926b98 OLMKit: Reset intermediate buffers to zeroes 2016-12-19 18:10:37 +01:00
Richard van der Hoff e2e398bd94 Add some tests for the Javascript wrappers
These would have helped avoid the recent FRV.
2016-12-19 09:43:58 +00:00
Richard van der Hoff 819f0d24db Merge pull request #40 from matrix-org/rav/fix_encryption
Avoid buffer overrun on encryption
2016-12-16 15:01:45 +00:00
Richard van der Hoff 8e554ab5ef Avoid buffer overrun on encryption
Make sure we null-terminate encrypted strings before passing them to
UTF8ToString.

This used to work when we allocated the buffer on the stack, because it turns
out that allocate() zeroinits the returned memory. malloc(), of course, does
not.
2016-12-16 14:42:41 +00:00
Richard van der Hoff 7fd63bcac7 Merge pull request #39 from matrix-org/rav/messages_on_heap
Allocate memory for message blobs on the heap
2016-12-15 16:54:39 +00:00
Richard van der Hoff 09b3e1eecd typo 2016-12-15 16:28:30 +00:00
Richard van der Hoff 8356fa37ad zero out plaintext buffers
Avoid leaving copies of the plaintext sitting around in the emscripten heap.
2016-12-15 13:37:34 +00:00
Richard van der Hoff 2e04868c46 Merge pull request #38 from matrix-org/rav/handle_load_exceptions
Better handling of exceptions during loading, and import OLM_OPTIONS
2016-12-14 14:34:39 +00:00
Richard van der Hoff 76610c0a3a Allocate memory for message blobs on the heap
Messages can be very large, so we don't really want to allocate them on the
stack. Switch to using the heap for them, and try to clean up some of the
string handling while we're at it.
2016-12-14 12:05:56 +00:00
Richard van der Hoff 51b141ecb6 Let apps override emscripten settings
Read settings from OLM_OPTIONS to allow apps to configure some options. In
particular, this is useful for setting the heap size.
2016-12-14 11:46:12 +00:00
Richard van der Hoff 1bf807bf33 Better handling of exceptions during loading
If we get an exception during load, don't define half of window.Olm (which
confuses apps).

This is a partial fix to https://github.com/vector-im/riot-web/issues/2726.
2016-12-12 16:52:03 +00:00
manuroe aa12cbcac2 OLMKit: Make returned NSError provide the raw olm error string (ex:"UNKNOWN_MESSAGE_INDEX") in their NSLocalizedDescriptionKey.
NSLocalizedFailureReasonErrorKey can contain more contextual information.
2016-11-24 11:45:59 +01:00
manuroe 93926e9047 OLMKit: Fixed warnings in objc wrapper 2016-11-18 11:39:39 +01:00
manuroe 29de7825c9 OLMKit: Update Copyrights 2016-11-17 15:50:23 +01:00
manuroe e19b7f54dc OLMKit: Improve wording 2016-11-17 14:43:04 +01:00
manuroe 32a5424971 OLMKit: Podfile.lock++ 2016-11-17 14:33:41 +01:00
manuroe 0b1ecbff2d OLMKit: Add it to olm from version 2.0.1 2016-11-17 14:03:15 +01:00
manuroe 7ee17a2957 OLMKit: Add missing implementations for matchesInboundSession matchesInboundSessionFrom 2016-11-14 17:35:24 +01:00
manuroe aa70c8afbc OLMKit: Fix warning in OLMUtility 2016-11-14 17:06:34 +01:00
manuroe bc697bf5e2 OLMKit: Fixed type-cast of messageIndex of [OLMInboundGroupSession decryptMessage] for 32 and 64bits platforms 2016-11-14 17:02:56 +01:00
manuroe cf66af6f2e OLMKit: Replaced NSAsserts by NSErrors 2016-11-14 16:54:51 +01:00
manuroe 27a8c28da4 OLMKit: Update obj-c wrapper to 2.0.0 2016-11-07 17:27:09 +01:00
manuroe 5d1b66c350 Merge remote-tracking branch 'origin/master' into olmkit 2016-11-07 17:21:39 +01:00
manuroe 62f5280670 OLMKit: podspec: Attempt to fix duplicate symbols because ed25519.c includes .c files 2016-11-04 11:07:36 +01:00
manuroe 9ac937a200 OLMKit: podspec: Attempt to fix duplicate symbols because ed25519.c includes .c files 2016-11-04 11:01:09 +01:00
manuroe 09b14c2b3d OLMKit: podspec: Some files are missing 2016-11-04 10:10:56 +01:00
manuroe 671218dc07 OLMKit: podspec: Some files are missing 2016-11-04 09:53:55 +01:00
manuroe 34998b52c7 OLMKit: Attempt to make podspec work when the pod is downloaded from git 2016-11-03 17:33:31 +01:00
Richard van der Hoff f6c05be8c5 Add a document on signing keys 2016-10-27 11:55:48 +01:00
Richard van der Hoff 700596b46a Update python wrapper to run against libolm.so.2 2016-10-25 14:50:15 +01:00
Richard van der Hoff 2d7b10a160 Merge branch 'release-v2.0.0' 2016-10-25 14:50:03 +01:00
Mark Haines 7e9f3bebb8 Document the return values for olm_matches_inbound_session 2016-10-25 14:42:10 +01:00
Richard van der Hoff 27c7b4a767 Version bump for 2.0.0 2016-10-25 11:35:20 +01:00
Richard van der Hoff d02c457da5 Changelog: Mention install-headers 2016-10-24 17:22:43 +01:00
Richard van der Hoff 4367afc65e Prepare changelog for v2.0.0 2016-10-24 16:51:20 +01:00
Richard van der Hoff 64130c1f8b Fix broken fuzzer compilation
fuzz_group_decrypt.cpp got broken by 653790e; fix it up
2016-10-24 16:32:21 +01:00
Richard van der Hoff 05b48086a4 remove redundant svg 2016-10-24 15:52:05 +01:00
Richard van der Hoff 807fec2ebf double_ratchet.svg 2016-10-24 15:17:27 +01:00
Richard van der Hoff d8136096c0 Merge pull request #33 from matrix-org/rav/pickle_length
Return the base64-encoded length of pickles
2016-10-24 10:43:43 +01:00
Mark Haines 8de0f1fbb3 Merge pull request #32 from matrix-org/markjh/replay
Document the potential for message replays and possible mitigations
2016-10-24 10:28:54 +01:00
Richard van der Hoff a7310c5821 Return the base64-encoded length of pickles
make olm_pickle_* return the lengths of the base64-encoded pickles, rather than
the raw pickle. (From the application's POV, the format of the pickle is
opaque: it doesn't even know that it is base64-encoded. So returning the length
of the raw pickle is particularly unhelpful.)
2016-10-24 10:06:06 +01:00
Richard van der Hoff d1a535861d Merge branch 'rav/clear_random_bufs' 2016-10-21 17:36:06 +01:00
Richard van der Hoff 21ce3491dd Clear random buf in olm_init_outbound_group_session
All the other methods clear their random inputs. This one needs to do the same,
to reduce the risk of the randomness being used elsewhere and leaking key info.
2016-10-21 17:19:59 +01:00
Mark Haines 884ad02413 Spelling 2016-10-21 17:07:26 +01:00
Mark Haines 092bf880f5 s/they've/they have/ 2016-10-21 15:45:33 +01:00
Mark Haines 0a7d4e35cc Reword and s/message index/ratchet index/ 2016-10-21 15:44:53 +01:00
Mark Haines 8c4a11a92d Document the potential for message replays and possible mitigations 2016-10-21 15:13:20 +01:00