Commit Graph

745 Commits (a18a4e8eb47fb371c6e94b68e62643c00b325bfc)

Author SHA1 Message Date
Hubert Chathi 5ef6a844d6 overwrite buffers that may contain sensitive data
also reduce the amount of memory copying that we do
2018-10-16 00:31:56 -04:00
Hubert Chathi 357d4ff479 remove unnecessary comments about not enough random 2018-10-16 00:04:45 -04:00
Hubert Chathi 019ff702a0 add license headers to python bindings 2018-10-15 13:54:14 -04:00
Hubert Chathi 1eac1daa47 use new function names in Android bindings 2018-10-15 10:11:47 -04:00
Hubert Chathi 8c1169f0f5 use the correct error code 2018-10-15 10:11:47 -04:00
Hubert Chathi 46f80e71be remove fuzzers from cmake, since it doesn't work properly 2018-10-12 21:03:23 -04:00
Hubert Chathi af6c3ca5ce add dummy header files for generating cffi function list 2018-10-12 20:27:40 -04:00
Hubert Chathi 6c2f136bc9 remove code coverage and TravisCI badges
since they're not for the right repository any more
2018-10-12 19:19:19 -04:00
Hubert Chathi 718763f8fc build and test improvements
- build both Python2 and Python3 libs by default, and add separate rules
  building Python2 and Python.
- use the libraries as built by setuptools, rather than building again
  separately
2018-10-12 19:11:19 -04:00
Hubert Chathi 29b021b183 remove redundant license file 2018-10-12 18:55:37 -04:00
Hubert Chathi 04bbd728ba always use files from ../include and ../build 2018-10-12 18:55:05 -04:00
Hubert Chathi d4b2cce603 generate python/include/olm/olm.h automatically 2018-10-12 18:53:18 -04:00
Hubert Chathi 5cf074d337 Merge branch 'master' into poljar 2018-10-12 17:02:51 -04:00
Hubert Chathi 3da5b60823 add pk files to cmake, avoid some duplication, and update documentation 2018-10-12 16:22:12 -04:00
Konstantinos Sideris 4e94dfc7e0 Add CMake support
The library can now be installed using CMake v3.0+.

Below is an example configuration.

1. Generate configuation

cmake -H. -Bbuild
    -GNinja
    -DCMAKE_BUILD_TYPE=Release // The default profile.
    -DCMAKE_INSTALL_PREFIX=/usr/local/
    -DBUILD_SHARED_LIBS=ON
    -DOLM_TESTS=1
    -DOLM_FUZZERS=1

2. Build & install the targets

cmake --build build --config Release --target install

3. Run the tests

cd build/test && ctest .

The library can also be used as a dependency with CMake using

find_package(Olm::Olm REQUIRED)
target_link_libraries(my_exe Olm::Olm)

Signed-off-by: Konstantinos Sideris <sideris.konstantin@gmail.com>
2018-10-12 16:22:03 -04:00
Hubert Chathi af86a9a8b8 clear out plaintext buffers in Android SDK where possible 2018-10-12 15:55:36 -04:00
David Baker b1130fb77f
Merge pull request #61 from matrix-org/dbkr/pk_private_export_import
Work with PkDecryption keys by their private keys
2018-10-12 08:24:45 +01:00
David Baker 50ed20f61e Merge remote-tracking branch 'origin/master' into dbkr/pk_private_export_import 2018-10-12 08:22:57 +01:00
David Baker b2d91f55ec
Merge pull request #62 from matrix-org/dbkr/ci2
CircleCI Build Support
2018-10-12 08:13:45 +01:00
David Baker fac1d52dfe Add aliases for deprecated functions 2018-10-11 18:16:39 +01:00
David Baker e73ebcea67 Merge remote-tracking branch 'origin/master' into dbkr/pk_private_export_import 2018-10-10 20:15:40 +01:00
David Baker 82534708a3 Merge remote-tracking branch 'origin/master' into dbkr/ci2 2018-10-10 20:08:55 +01:00
David Baker 3cfcf1615d
Merge pull request #57 from matrix-org/dbkr/wasm
WebAssembly support
2018-10-10 20:07:19 +01:00
David Baker 1dbb060c44 Add note about passing through env var with docker 2018-10-10 19:41:12 +01:00
Hubert Chathi 44f78cf4fe
Merge branch 'master' into dbkr/wasm 2018-10-09 17:38:32 -04:00
David Baker 713e9aeb4d Build on mac 2018-10-05 15:35:21 -04:00
Hubert Chathi 2cbba061c3
Merge branch 'master' into dbkr/ci2 2018-10-05 14:54:29 -04:00
Hubert Chathi f6e3f7f44a
Merge branch 'master' into dbkr/pk_private_export_import 2018-10-05 14:52:01 -04:00
Hubert Chathi 0a25ec137f
Merge branch 'master' into dbkr/wasm 2018-10-05 10:50:01 -04:00
Hubert Chathi 173339ae9a add more comments describing the pk encrypt/decrypt functions 2018-10-05 10:35:09 -04:00
Hubert Chathi bad14db8da remove unneeded polyfill 2018-10-05 10:35:09 -04:00
Hubert Chathi 8520168e0b fix some code style issues and typos 2018-10-05 10:35:09 -04:00
David Baker 602c00a8d6 Dual-build wasm and asm.js olm 2018-10-04 20:09:54 +01:00
David Baker 031eb2dc75 ...in the right dir 2018-10-03 16:26:17 +01:00
David Baker 8161fa51a8 run npm install 2018-10-03 16:24:21 +01:00
David Baker 877166dedc Merge branch 'dbkr/wasm' into dbkr/ci2 2018-10-03 16:22:13 +01:00
David Baker 3e775938e5 Replace the impenetrable line of perl with python
Mostly because the standard emscripten docker image does not have
libjson-perl, but python always comes with json. But also because
it was impenetrable.
2018-10-03 16:06:15 +01:00
David Baker b1beadacee CircleCI config file 2018-10-03 15:59:45 +01:00
David Baker e521ee84c5 Add an export for the length of a private key 2018-10-02 19:21:05 +01:00
David Baker 9b652bb127
Merge pull request #58 from matrix-org/dbkr/method_consistency
Call appropriate wrapper function
2018-10-02 12:10:29 +01:00
David Baker 8635d68ba8 Add other breaking change 2018-10-02 12:09:33 +01:00
David Baker 0346145a81 Work with PkDecryption keys by their private keys
Change interface to allow the app to get the private part of the
key and instantiate a decryption object from just the private part
of the key.

Changes the function generating a key from random bytes to be
initialising a key with a private key (because it's exactly the
same thing). Exports & imports private key parts as ArrayBuffer at
JS level rather than base64 assuming we are moving that way in
general.
2018-10-02 12:02:56 +01:00
David Baker 00384ba87a Merge remote-tracking branch 'origin/master' into dbkr/wasm 2018-10-02 10:15:14 +01:00
David Baker 04f58bb0c9
Merge pull request #59 from matrix-org/dbkr/fix_trailing_newlines
Remove trailing letter 'K's from the test pubkeys
2018-10-02 10:04:14 +01:00
David Baker 2835110cee Remove trailing letter 'K's from the test pubkeys
base64 encoded newlines somehow?
2018-10-01 20:01:47 +01:00
David Baker b51d75392b Merge remote-tracking branch 'origin/master' into dbkr/wasm 2018-10-01 16:14:39 +01:00
David Baker 0ad32c9896 Call appropriate wrapper function
Don't think this matters since there's no PkEncryption /
PkDecryption object being passed, but for the sake of consistency
2018-10-01 13:22:04 +01:00
Matthew Hodgson 8f6e0557ee oops, fix typo - thanks to @dest4 2018-09-27 18:45:00 +01:00
David Baker c4a3918686 Support passing olm options into init() 2018-09-26 16:38:39 +01:00
David Baker 498562fa65 Breking change 2018-09-25 18:03:31 +01:00