diff options
author | Richard van der Hoff <richard@matrix.org> | 2016-09-04 23:34:24 +0100 |
---|---|---|
committer | Richard van der Hoff <richard@matrix.org> | 2016-09-04 23:41:10 +0100 |
commit | 2e9021c2e73786e9045c0634c43efa86f18ac8de (patch) | |
tree | c6296948704c35edad11eb0474aaf51c7d15698a | |
parent | 0c3f527dfd46d3056d5b3690836c102f0e0adfb4 (diff) |
OlmSession.has_received_message
I find myself wanting to know if an OlmSession is in the pre-key state or not,
to help debugging at the application level.
-rw-r--r-- | include/olm/olm.h | 4 | ||||
-rw-r--r-- | javascript/olm_post.js | 7 | ||||
-rw-r--r-- | src/olm.cpp | 6 |
3 files changed, 17 insertions, 0 deletions
diff --git a/include/olm/olm.h b/include/olm/olm.h index 0886fa9..81b6602 100644 --- a/include/olm/olm.h +++ b/include/olm/olm.h @@ -300,6 +300,10 @@ size_t olm_session_id( void * id, size_t id_length ); +int olm_session_has_received_message( + OlmSession *session +); + /** Checks if the PRE_KEY message is for this in-bound session. This can happen * if multiple messages are sent to this account before this account sends a * message in reply. Returns olm_error() on failure. If the base64 diff --git a/javascript/olm_post.js b/javascript/olm_post.js index 955d68d..6c99030 100644 --- a/javascript/olm_post.js +++ b/javascript/olm_post.js @@ -263,6 +263,13 @@ Session.prototype['session_id'] = restore_stack(function() { return Pointer_stringify(id_buffer); }); +Session.prototype['has_received_message'] = function() { + return session_method(Module['_olm_session_has_received_message'])( + this.ptr + ) ? true : false; +}; + + Session.prototype['matches_inbound'] = restore_stack(function( one_time_key_message ) { diff --git a/src/olm.cpp b/src/olm.cpp index 682a84c..7f68ad0 100644 --- a/src/olm.cpp +++ b/src/olm.cpp @@ -529,6 +529,12 @@ size_t olm_session_id( } +int olm_session_has_received_message( + OlmSession * session +) { + return from_c(session)->received_message; +} + size_t olm_matches_inbound_session( OlmSession * session, void * one_time_key_message, size_t message_length |