aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-09-27oops, fix typo - thanks to @dest4Matthew Hodgson
2018-09-26Support passing olm options into init()David Baker
2018-09-25Breking changeDavid Baker
2018-09-25Return same promise if init() called many timesDavid Baker
So we only init the library once.
2018-09-25Another day, another interfaceDavid Baker
Change the interface again, hopefully this time a bit more normal. Now we wrap the emscripten module completely and just expose the high level objects. The olm library export is now imported as normal (ie. returns a module rather than a function returning a module) but has an `init` method which *must* be called. This returns a promise which resolves when the module is ready. It also rejects if the module failed to set up, unlike before (and unlike the promise-not-a-promise that emscripten returns). Generally catch failures to init the module.
2018-09-21Also ship the wasm fileDavid Baker
2018-09-21Make OLM_OPTIONS work againDavid Baker
The closure compiler was just renaming the variable so it never would have picked them up. Make it an extern so it knows what to do.
2018-09-21WebAssembly support!David Baker
Quite a lot going on in this PR: * Updates to support recent emscripten, switching to WASM which is now the default * Use emscripten's MODULARIZE option rather than wrapping it ourself, since doing so in pre-post js doesn't work anymore. * Most changes are moving the emscripten runtime functions to top-level calls rather than in the Module object. * Get rid of duplicated NULL_BYTE_PADDING_LENGTH * Fix ciphertext_length used without being declared * Fix things that caused the closure compiler to error, eg. using OLM_OPTIONS without a declaration. * Wait until module is inited to do OLM_ERROR = olm_error() The main BREAKING CHANGE here is that the module now needs to initialise asyncronously (because it has to load the wasm file). require()ing olm now gives a function which needs to be called to create an instance. The resulting object has a promise-like then() method that can be used to detect when the module is ready. (We could use MODULARIZE_INSTANCE to return the module directly as before, rather than the function, but then we don't get the .then() method).
2018-09-20Merge pull request #55 from matrix-org/dbkr/pk_key_lengthDavid Baker
Fix output buffer length check
2018-09-19Fix output buffer length checkDavid Baker
...when generating a key in PkDecryption. The pubkey is base64ed on the output, so will be longer.
2018-08-15update address for sending feedback for olmHubert Chathi
2018-07-18python: Enable build with the local build of the Olm C library.Damir Jelić
This patch adds the ability to build the bindings without having a globally installed Olm C library. Provided that the C library is already built, the tests can be run now with make test. Signed-off-by: Damir Jelić <poljar@termina.org.uk>
2018-07-18python: Import improved python bindings.Damir Jelić
This commit imports the python bindings from: https://github.com/poljar/python-olm The bindings are imported at commit c44b145818520d69eaaa350fb95afcb846125e0f Minor modifications were made while importing: - Removed travis config - Removed Arch Linux PKGBUILD - Removed the html docs, they can be rebuild by running make html in the docs folder - Slightly modified the README The new bindings feature some improvements over the old ones: - Python 2 and 3 support - Automatic memory management - Automatic memory clearing before it is freed - Type signatures via the python typing module - Full test coverage - Properties are utilized where it makes sense (e.g. account.id) Signed-off-by: Damir Jelić <poljar@termina.org.uk>
2018-07-18python: Remove the python bindings.Damir Jelić
Signed-off-by: Damir Jelić <poljar@termina.org.uk>
2018-07-09Request patches to olm@matrix.orgRichard van der Hoff
2018-07-04prepare 2.3.02.3.0Hubert Chathi
2018-06-28use void in type signatures for functions with no argumentsHubert Chathi
2018-06-28add functions for pickling/unpickling a decryption objectHubert Chathi
2018-06-28add terminationHubert Chathi
2018-06-28improve public key encryption unit testHubert Chathi
2018-06-27add initial version of Android wrapper for public key APIHubert Chathi
2018-06-27use the correct method to get the random lengthHubert Chathi
2018-06-27add initial implementation of basic private key encryption functionalityHubert Chathi
2018-06-27fix some commentsHubert Chathi
2018-06-27Improve .gitignore: exclude generated files for testBenoit Marty
2018-06-27Comment out proxy settingsBenoit Marty
2018-06-27Upgrade toolsBenoit Marty
gradle 2.14.1 to 4.7 build tools 21.1.2 to 27.0.3 build gradle 2.1.3 to 3.1.3
2018-06-27Compiling with last NDK + some hardeningBenoit Marty
Patch received in https://github.com/matrix-org/olm/issues/13
2018-06-27ignore generated filesBenoit Marty
2018-06-27Fix null pointer dereferenceBenoit Marty
Patch has been received by e-mail, Signed-off-by: Arnaud Fontaine <arnaud.fontaine@ssi.gouv.fr>
2018-06-27Add a .gitignore file specific for Android projectBenoit Marty
2018-06-27OLMAccount: Fix use of object after its memory was releasedmanuroe
2018-06-27Update Xcode test projectmanuroe
2018-06-27Fix obj-c warningsmanuroe
2018-06-27Fix warnings reported by LLVMmanuroe
2018-06-27fix a length check and add some missing length checksHubert Chathi
2018-06-22Update releasing instructionsRichard van der Hoff
2018-05-29Python: add binding for olm_remove_one_time_keysWilfried Klaebe
Signed-off-by: Wilfried Klaebe <w+gitstuff@chaos.in-kiel.de>
2018-04-12Update Makefile to support building on WindowsMTRNord
The code for this change is taken from https://stackoverflow.com/a/30225575/4929236 This patch is Signed-Off-By: Marcel Radzio <marcel@radzio-sh.de>
2018-01-09patch for libolm: fix some typos in JavaScript libraryHubert Chathi
From 4a82d31e8cb808a04956fc847ed0ec0ff322b956 Mon Sep 17 00:00:00 2001 From: Hubert Chathi <hubert@uhoreg.ca> Date: Wed, 3 Jan 2018 21:37:43 -0500 Subject: [PATCH] fix some typos in JavaScript library Signed-off-by: Hubert Chathi <hubert@uhoreg.ca>
2017-11-22jenkins.sh: Run python bits in a virtualenvRichard van der Hoff
because we may not have pep8 installed at the system level
2017-09-29Drop unused #includeAlexey Rusakov
Signed-off-by: Alexey Rusakov <ktirf@users.sf.net>
2017-09-29Avoid C99 inside C++ codeAlexey Rusakov
This disrupts building at least with Visual Studio. Signed-off-by: Alexey Rusakov <ktirf@users.sf.net>
2017-06-08update link in README to match changes in 780d83aHubert Chathi
Signed-off-by: Hubert Chathi <hubert@uhoreg.ca>
2017-06-07update linkEli Flanagan
2017-05-08add audit notesMatthew Hodgson
2017-04-24Enforce PEP8 in jenins buildRichard van der Hoff
2017-04-24Python: Make ed25519_verify take some argumentsRichard van der Hoff
It's not much use if everything is hardcoded.
2017-04-24Merge branch 'master'Richard van der Hoff
Merge master into patched branch to fix conflicts prior to merge back to master
2017-04-24PEP8Richard van der Hoff
Fix line lengths in newly-added code