Commit graph

927 commits

Author SHA1 Message Date
David Baker
c31ab73704 Drop support for old emscripten
because emscripted has dropped support for the old flag and us
setting it is now breaking the build.
2019-01-30 18:16:48 +00:00
David Baker
8df2ab7c07 Add signing class to the pk module 2019-01-29 20:47:41 +00:00
Damir Jelić
45091c158d python: Turn the signature buffer into a bytearray.
This is a workaround for a bug where signature verification would
overwrite the variable holding the signature.

This only happens on python2.

Signed-off-by: Damir Jelić <poljar@termina.org.uk>
2019-01-23 17:10:44 -05:00
Hubert Chathi
94f664e725
initial implementation of short authentication string generation 2019-01-21 23:21:41 -05:00
Hubert Chathi
ec2695b9c9 bump OLMKit version too 2018-10-24 09:32:21 -04:00
Hubert Chathi
ff24af601a prepare release 3.0.0 2018-10-23 12:58:10 -04:00
Hubert Chathi
9acfd1791e expose the private key length in the Android sdk 2018-10-23 12:24:49 -04:00
Hubert Chathi
b79590e490 document how to build with cmake, and how to build the Python bindings 2018-10-23 12:24:49 -04:00
Hubert Chathi
3ebb3b69de fix capitalization and update Python binding version on release 2018-10-23 12:24:49 -04:00
Hubert Chathi
340a4965c9 include the non-wasm version in the package 2018-10-23 12:24:49 -04:00
Hubert Chathi
efbe061153 default to building as a shared library 2018-10-23 12:24:49 -04:00
Hubert Chathi
238c512d20
Merge pull request #75 from matrix-org/manuroe/objc_pk_private_key_length
OLMKit: Expose PK private key length
2018-10-23 10:56:52 -04:00
manuroe
c0d118f407 OLMKit: Fix typo in license header 2018-10-23 16:07:34 +02:00
manuroe
4e120a0eeb OLMKit: Fix file name case 2018-10-23 15:55:52 +02:00
manuroe
739f3c0391 OLMKit: Maintenance: Update Podfile.lock 2018-10-23 15:48:53 +02:00
manuroe
59076a6bda OLMKit: Expose PK private key length 2018-10-23 15:47:46 +02:00
Hubert Chathi
1aafac2874
Merge pull request #67 from matrix-org/cmake
CMake support
2018-10-22 11:32:33 -04:00
manuroe
2784e49595
Merge pull request #70 from matrix-org/manuroe/objc_pk
OLMKit: Add objc wrappers for pk encryption/decryption
2018-10-22 08:25:41 +02:00
Hubert Chathi
2cace25fba add functions for dealing with private keys directly 2018-10-19 12:10:36 -04:00
Hubert Chathi
1c7ff7f48d more and improved buffer sanitising for Android bindings 2018-10-19 12:10:11 -04:00
Hubert Chathi
c4c3055f83
Merge pull request #71 from matrix-org/js_sanitising
zero buffers in the JavaScript bindings
2018-10-19 11:34:55 -04:00
Hubert Chathi
1d880f9711
Merge pull request #68 from matrix-org/poljar-python
Poljar's improved python bindings
2018-10-19 11:34:11 -04:00
Hubert Chathi
6e6facba3b fix c+p error: don't clobber the decryption object on error 2018-10-17 22:25:10 -04:00
manuroe
cc9a97f0cb OLMKit: Zero buffers out in all pickle & unpickle methods 2018-10-17 11:29:34 +02:00
manuroe
90bbdec8ad OLMKit: Zero only critical buffers out 2018-10-17 11:25:20 +02:00
Hubert Chathi
93f764200e zero buffers in the JavaScript bindings 2018-10-16 17:50:34 -04:00
Hubert Chathi
09dc3b6025 document a couple more places where olm clobbers things 2018-10-16 16:13:09 -04:00
Hubert Chathi
22f8649c10 also ignore the non-wasm JS file 2018-10-16 16:11:22 -04:00
Hubert Chathi
0ec6a65858 add more buffer clearing 2018-10-16 15:59:32 -04:00
manuroe
2ea2bc8ebc Fix compilation warning for olm_pk_private_key_length(void); 2018-10-16 15:52:41 +02:00
manuroe
03e0d1909b Remove .DS_Store for git 2018-10-16 15:52:14 +02:00
manuroe
9fd50c8eb5 OLMKit: Add objc wrappers for pk encryption/decryption 2018-10-16 15:51:31 +02:00
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