diff options
author | Matthias Schiffer <mschiffer@universe-factory.net> | 2013-11-14 21:13:58 +0100 |
---|---|---|
committer | Matthias Schiffer <mschiffer@universe-factory.net> | 2013-11-14 21:13:58 +0100 |
commit | b05b3f32354f7fe9cefee74ea18020fd8069bc10 (patch) | |
tree | fc03767e344354a6f8377eb45ce3a597eb69260b | |
parent | 2fb08c6455bf6f08209b5993c755c1135611813b (diff) | |
download | fastd-b05b3f32354f7fe9cefee74ea18020fd8069bc10.tar fastd-b05b3f32354f7fe9cefee74ea18020fd8069bc10.zip |
Move test for initiator in the session refresh check from protocol to method
-rw-r--r-- | src/methods/common.h | 2 | ||||
-rw-r--r-- | src/protocols/ec25519_fhmqvc/ec25519_fhmqvc.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/methods/common.h b/src/methods/common.h index 0a26a32..0769a6c 100644 --- a/src/methods/common.h +++ b/src/methods/common.h @@ -59,7 +59,7 @@ static inline bool fastd_method_session_common_is_initiator(const fastd_method_c } static inline bool fastd_method_session_common_want_refresh(fastd_context_t *ctx, const fastd_method_common_t *session) { - return timespec_after(&ctx->now, &session->refresh_after); + return fastd_method_session_common_is_initiator(session) && timespec_after(&ctx->now, &session->refresh_after); } static inline void fastd_method_session_common_superseded(fastd_context_t *ctx, fastd_method_common_t *session) { diff --git a/src/protocols/ec25519_fhmqvc/ec25519_fhmqvc.c b/src/protocols/ec25519_fhmqvc/ec25519_fhmqvc.c index 18e0b3a..8b79d64 100644 --- a/src/protocols/ec25519_fhmqvc/ec25519_fhmqvc.c +++ b/src/protocols/ec25519_fhmqvc/ec25519_fhmqvc.c @@ -41,7 +41,7 @@ static inline bool read_key(uint8_t key[32], const char *hexkey) { static inline void check_session_refresh(fastd_context_t *ctx, fastd_peer_t *peer) { protocol_session_t *session = &peer->protocol_state->session; - if (!session->refreshing && session->method->session_is_initiator(ctx, session->method_state) && session->method->session_want_refresh(ctx, session->method_state)) { + if (!session->refreshing && session->method->session_want_refresh(ctx, session->method_state)) { pr_verbose(ctx, "refreshing session with %P", peer); session->handshakes_cleaned = true; session->refreshing = true; |