From 6c9cbebe9c2d92395e34d55f39ac0cf791bbcebb Mon Sep 17 00:00:00 2001 From: Aiden McClelland Date: Mon, 16 Mar 2026 20:10:02 -0600 Subject: [PATCH] fix: correct argument order in asn1_time_to_system_time The diff() method computes `compare - self`, not `self - compare`. The reversed arguments caused all cert expiration times to resolve to before the unix epoch, making getSslCertificate callbacks fire immediately and infinitely on every registration. --- core/src/net/ssl.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/net/ssl.rs b/core/src/net/ssl.rs index 3b8e69c8e..e2dfc6eea 100644 --- a/core/src/net/ssl.rs +++ b/core/src/net/ssl.rs @@ -188,7 +188,7 @@ lazy_static::lazy_static! { } fn asn1_time_to_system_time(time: &Asn1TimeRef) -> Result { - let diff = time.diff(&**ASN1_UNIX_EPOCH)?; + let diff = ASN1_UNIX_EPOCH.diff(time)?; let mut res = UNIX_EPOCH; if diff.days >= 0 { res += Duration::from_secs(diff.days as u64 * 86400);