Age | Commit message (Collapse) | Author | |
---|---|---|---|
2016-05-25 | Add a comment explaining Mark's latest fix | Richard van der Hoff | |
2016-05-25 | Fix an integer wrap around bug and add a couple more tests | Mark Haines | |
2016-05-24 | Fix handling of integer wraparound in megolm.c | Richard van der Hoff | |
2016-05-24 | megolm_advance_to: Remove excessive optimisation | Richard van der Hoff | |
There was some slightly overcomplex logic designed to save a couple of hash operations when R(0) and R(1) were advanced, but the extra code was hard to understand and didn't save much. | |||
2016-05-24 | megolm.c: rewrite counter update | Richard van der Hoff | |
We no longer need to keep track of intermediate values of the counter, which means we can update it much more easily. | |||
2016-05-24 | megolm.c: Remove spurious arguments to rehash_part | Richard van der Hoff | |
These were left over from when rehash_part did a bunch of logging. | |||
2016-05-24 | Separate base64ing from the rest of msg encoding | Richard van der Hoff | |
Factor the actual message encoding/decoding and encrypting/decrypting out to separate functions from the top-level functions which do the base64-wrangling. This is particularly helpful in the 'outbound' code-path where the offsets required to allow room to base64-encode make the flow hard to see when it's all inline. | |||
2016-05-24 | Update megolm_cipher as a global struct | Richard van der Hoff | |
Initialise megolm_cipher via the preprocessor macro, instead of with a function. | |||
2016-05-24 | Use _olm_unset instead of memset | Richard van der Hoff | |
memset is at risk of being optimised away, so use _olm_unset instead. | |||
2016-05-24 | Avoid relying on uint -> int casting behaviour | Richard van der Hoff | |
The behaviour when casting from a uint32_t which has overflowed (so has the top bit set) to int32_t is implementation-defined, so let's avoid relying on it. | |||
2016-05-24 | Python wrapper: support for inbound group sessions | Richard van der Hoff | |
2016-05-24 | Fix up some names, and protobuf tags | Richard van der Hoff | |
Make names (of session_key and message_index) more consistent. Use our own protobuf tags rather than trying to piggyback on the one-to-one structure. | |||
2016-05-24 | Support for pickling inbound group sessions | Richard van der Hoff | |
2016-05-24 | Implement decrypting inbound group messages | Richard van der Hoff | |
Includes creation of inbound sessions, etc | |||
2016-05-24 | Implement functions to get the state of outbound session | Richard van der Hoff | |
We need to be able to inspect an outbound session so that we can tell our peer how to set up an inbound session. | |||
2016-05-24 | Outbound group session support in the python wrappers | Richard van der Hoff | |
2016-05-24 | Implement pickling/unpickling for outbound group sessions | Richard van der Hoff | |
2016-05-24 | Implementation of an outbound group session | Richard van der Hoff | |
2016-05-24 | Implementation of the megolm ratchet | Richard van der Hoff | |
2016-05-24 | Factor out pickle_encoding from olm.cpp | Richard van der Hoff | |
We don't need to have all of the top-level pickling functions in olm.cpp; factor out the utilities to support it to pickle_encoding.cpp (and make sure that they have plain-C bindings). | |||
2016-05-24 | Factor out olm_error_to_string to a separate file | Richard van der Hoff | |
I want to be able to use this functionality from elsewhere, so factor it out to its own file. | |||
2016-05-24 | Merge branch 'rav/c_bindings' | Richard van der Hoff | |
2016-05-24 | Rewrite _olm_cipher_aes_sha_256 initialisation | Richard van der Hoff | |
Replace the init-static-var dance with some preprocessor macros | |||
2016-05-24 | Remove 'destruct' from cipher_ops | Richard van der Hoff | |
We never delete a cipher, and the destruct op is empty, so it's a bit pointless | |||
2016-05-23 | Fix bug in bounds check when parsing | Mark Haines | |
2016-05-23 | Prefix for internal symbols | Richard van der Hoff | |
Give a load of internal symbols "_olm_" prefixes. This better delineates the public and private interfaces in the module, and helps avoid internal symbols leaking out and possibly being abused. | |||
2016-05-23 | C bindings for base64 functions | Richard van der Hoff | |
2016-05-23 | C binding for olm::unset | Richard van der Hoff | |
2016-05-23 | C bindings for pickle functions | Richard van der Hoff | |
2016-05-23 | Convert cipher.hh to plain C | Richard van der Hoff | |
2016-05-23 | Convert error.hh to plain C | Richard van der Hoff | |
2016-05-23 | Give SHA256 functions C bindings | Richard van der Hoff | |
2016-05-23 | Rename olm.hh to olm.h | Richard van der Hoff | |
2016-05-23 | Complete fixes for olm_*_last_error | Richard van der Hoff | |
Should have been in the previous commit :/ | |||
2016-05-23 | fix range check in olm_*_last_errror | Richard van der Hoff | |
2016-05-23 | Fix warnings and set -Werror | Richard van der Hoff | |
2016-05-23 | Merge branch 'rav/refactor_python_wrappers' | Richard van der Hoff | |
2016-05-23 | Fix make clean to remove the library and all the .d files | Mark Haines | |
2016-05-23 | Move comment to correct location | Mark Haines | |
2016-05-23 | Don't use $^ cause that includes the header files | Mark Haines | |
2016-05-23 | Use a rule to make the build directories | Mark Haines | |
2016-05-23 | Put the .o files in separate directories so we can have both release and ↵ | Mark Haines | |
debug versions | |||
2016-05-20 | Fix the Makefile so that it works with a clean git checkout | Mark Haines | |
2016-05-20 | Merge branch 'rav/makefile' | Richard van der Hoff | |
2016-05-20 | Remove dep files for js objects on clean | Richard van der Hoff | |
2016-05-20 | crypto.cpp: Fix comments | Richard van der Hoff | |
These seem to be the wrong way around. | |||
2016-05-20 | Add an 'all' target to the Makefile | Richard van der Hoff | |
So that we can build everything together. | |||
2016-05-20 | Refactor python wrappers | Richard van der Hoff | |
Split the python wrappers into separate modules | |||
2016-05-20 | Use a version script to restrict symbols in the .so | Richard van der Hoff | |
We want to stop aes_* and sha_* functions leaking out of our .so, as well as internal _olm_* symbols. This also means we need to link the unit tests against the objects. Possibly we should distinguish between unit tests and integration tests. | |||
2016-05-20 | Add support for building the JS wrappers to the Makefile | Richard van der Hoff | |
Now that we have C and C++, we need to split the compile and link steps (because we need different flags for the C and C++ files), so this is easier with a Makefile. |