summaryrefslogtreecommitdiff
path: root/mastoapi.c
diff options
context:
space:
mode:
authordefault <nobody@localhost>2024-02-20 06:10:42 +0100
committerdefault <nobody@localhost>2024-02-20 06:10:42 +0100
commita3b9ef5b98530a81f648b397fed91d78349dc4cd (patch)
tree1c5cee9bdbe8127e3079eba761f4d084fa9322b5 /mastoapi.c
parentd583a35d9e3761f31a7189006aaae97815b283fe (diff)
The link verification time is stored as a time_t.
This way, it will be easier in an eventual future to test if a link verification is too old to be trusted.
Diffstat (limited to 'mastoapi.c')
-rw-r--r--mastoapi.c24
1 files changed, 18 insertions, 6 deletions
diff --git a/mastoapi.c b/mastoapi.c
index 8dcd6b4..0a0c3d6 100644
--- a/mastoapi.c
+++ b/mastoapi.c
@@ -642,10 +642,17 @@ xs_dict *mastoapi_account(const xs_dict *actor)
if (!xs_is_null(type) && !xs_is_null(name) &&
!xs_is_null(value) && strcmp(type, "PropertyValue") == 0) {
- char *val_date = NULL;
+ xs *val_date = NULL;
- if (xs_startswith(value, "https:/" "/"))
- val_date = xs_dict_get(val_links, value);
+ if (xs_startswith(value, "https:/" "/")) {
+ xs_number *verified_time = xs_dict_get(val_links, value);
+ if (xs_type(verified_time) == XSTYPE_NUMBER) {
+ time_t t = xs_number_get(verified_time);
+
+ if (t > 0)
+ val_date = xs_str_utctime(t, ISO_DATE_SPEC);
+ }
+ }
xs *d = xs_dict_new();
@@ -1161,10 +1168,15 @@ int mastoapi_get_handler(const xs_dict *req, const char *q_path,
val_links = xs_stock_dict;
while (xs_dict_iter(&metadata, &k, &v)) {
- char *val_date = NULL;
+ xs *val_date = NULL;
- if (xs_startswith(v, "https:/" "/"))
- val_date = xs_dict_get(val_links, v);
+ xs_number *verified_time = xs_dict_get(val_links, v);
+ if (xs_type(verified_time) == XSTYPE_NUMBER) {
+ time_t t = xs_number_get(verified_time);
+
+ if (t > 0)
+ val_date = xs_str_utctime(t, ISO_DATE_SPEC);
+ }
xs *d = xs_dict_new();