Module: kamailio
Branch: master
Commit: 063e32a8fe81b2cfbaac0386e6b51446586e619a
URL:
https://github.com/kamailio/kamailio/commit/063e32a8fe81b2cfbaac0386e6b5144…
Author: vance-od <vance(a)ukr.net>
Committer: vance-od <vance(a)ukr.net>
Date: 2015-09-03T11:43:37+03:00
Update nonce.c
auth: fixed issue when during registration nonce expired, after backwards time shift
---
Modified: modules/auth/nonce.c
---
Diff:
https://github.com/kamailio/kamailio/commit/063e32a8fe81b2cfbaac0386e6b5144…
Patch:
https://github.com/kamailio/kamailio/commit/063e32a8fe81b2cfbaac0386e6b5144…
---
diff --git a/modules/auth/nonce.c b/modules/auth/nonce.c
index 95b967e..025d0d7 100644
--- a/modules/auth/nonce.c
+++ b/modules/auth/nonce.c
@@ -357,7 +357,13 @@ int check_nonce(auth_body_t* auth, str* secret1, str* secret2,
different length (for example because of different auth.
checks).. Therefore we force credentials to be rebuilt by UAC
without prompting for password */
- return 4;
+ /* if current time is less than start time, reset the start time
+ (e.g., after start, the system clock was set in the past) */
+ t=time(0);
+ if (t < up_since)
+ up_since = t;
+ if (since < t)
+ return 4;
}
t=time(0);
if (unlikely((since > t) && ((since-t) > nonce_auth_max_drift) )){