diff options
author | Ingela Anderton Andin <[email protected]> | 2015-12-07 10:36:15 +0100 |
---|---|---|
committer | Ingela Anderton Andin <[email protected]> | 2015-12-07 10:36:15 +0100 |
commit | 9ffec8e28809e74d44ed715ad3191c45da019c24 (patch) | |
tree | ed3424f31eba912aa4f30e8ed5b748713e70964d /lib/ssl/src/ssl_session.erl | |
parent | c84f85cc31ae8f13e8a44b866b90ad51f1c676c3 (diff) | |
parent | f258633921e7dd0bd5760281d2a26a0f937e53c4 (diff) | |
download | otp-9ffec8e28809e74d44ed715ad3191c45da019c24.tar.gz otp-9ffec8e28809e74d44ed715ad3191c45da019c24.tar.bz2 otp-9ffec8e28809e74d44ed715ad3191c45da019c24.zip |
Merge branch 'maint'
Diffstat (limited to 'lib/ssl/src/ssl_session.erl')
-rw-r--r-- | lib/ssl/src/ssl_session.erl | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/ssl/src/ssl_session.erl b/lib/ssl/src/ssl_session.erl index 1849a05314..2b24bff5ff 100644 --- a/lib/ssl/src/ssl_session.erl +++ b/lib/ssl/src/ssl_session.erl @@ -61,13 +61,16 @@ client_id(ClientInfo, Cache, CacheCb, OwnCert) -> SessionId end. --spec valid_session(#session{}, seconds()) -> boolean(). +-spec valid_session(#session{}, seconds() | {invalidate_before, integer()}) -> boolean(). %% %% Description: Check that the session has not expired %%-------------------------------------------------------------------- +valid_session(#session{time_stamp = TimeStamp}, {invalidate_before, Before}) -> + TimeStamp > Before; valid_session(#session{time_stamp = TimeStamp}, LifeTime) -> - Now = calendar:datetime_to_gregorian_seconds({date(), time()}), - Now - TimeStamp < LifeTime. + Now = erlang:monotonic_time(), + Lived = erlang:convert_time_unit(Now-TimeStamp, native, seconds), + Lived < LifeTime. server_id(Port, <<>>, _SslOpts, _Cert, _, _) -> {ssl_manager:new_session_id(Port), undefined}; |