aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2023-05-24 14:02:39 +0000
committerWerner Koch <[email protected]>2023-08-25 12:35:56 +0000
commit159fb5cdbb64c7caccefa31238071e776bf7cc05 (patch)
tree9bb52355d4522c877b47b0103a39123cc0be7265
parentdirmngr: Return modifyTimestamp and add server option --newer. (diff)
downloadgnupg-159fb5cdbb64c7caccefa31238071e776bf7cc05.tar.gz
gnupg-159fb5cdbb64c7caccefa31238071e776bf7cc05.zip
dirmngr: Fix LDAP time parser.
* dirmngr/ldap-misc.c (rfc4517toisotime): Correct index. -- Obviously the parser assumes the standard ISO format with the 'T' before the hour. That is not correct here. We need this parser for the modifyTimestamp thingy.
-rw-r--r--dirmngr/ldap-misc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/dirmngr/ldap-misc.c b/dirmngr/ldap-misc.c
index d304018fc..6e9e76317 100644
--- a/dirmngr/ldap-misc.c
+++ b/dirmngr/ldap-misc.c
@@ -378,13 +378,14 @@ rfc4517toisotime (gnupg_isotime_t timebuf, const char *string)
int year, month, day, hour, minu, sec;
const char *s;
+ /* Sample value: "20230823141623Z"; */
for (i=0, s=string; i < 10; i++, s++) /* Need yyyymmddhh */
if (!digitp (s))
return gpg_error (GPG_ERR_INV_TIME);
year = atoi_4 (string);
month = atoi_2 (string + 4);
day = atoi_2 (string + 6);
- hour = atoi_2 (string + 9);
+ hour = atoi_2 (string + 8);
minu = 0;
sec = 0;
if (digitp (s) && digitp (s+1))