lib:crypto: Correct GKDI interval start time calculation
authorJo Sutton <josutton@catalyst.net.nz>
Sun, 18 Feb 2024 21:33:41 +0000 (10:33 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Fri, 1 Mar 2024 00:19:45 +0000 (00:19 +0000)
Signed-off-by: Jo Sutton <josutton@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
lib/crypto/gkdi.c

index dcecf1206b99c4c55350d7867b57cbb621b45d2b..66e1da18f344be8abbc66179c4eda4c40a8e483f 100644 (file)
@@ -222,7 +222,7 @@ bool gkdi_get_key_start_time(const struct Gkid gkid, NTTIME *start_time_out)
  */
 NTTIME gkdi_get_interval_start_time(const NTTIME time)
 {
-       return time % gkdi_key_cycle_duration;
+       return time / gkdi_key_cycle_duration * gkdi_key_cycle_duration;
 }
 
 bool gkid_less_than_or_equal_to(const struct Gkid g1, const struct Gkid g2)