summaryrefslogtreecommitdiff
path: root/data.c
diff options
context:
space:
mode:
authorGravatar byte2025-11-01 00:48:33 +0100
committerGravatar byte2025-11-01 00:48:33 +0100
commit8ed4d5bdcbe552eaa0f143c71b90ff7cd2a3d709 (patch)
tree8f86ca0f28ef5c6b242a411bb6e9d38de25cf191 /data.c
parentrendering visibility conditionally, with lesser reach if needed (diff)
parentMerge pull request 'po/de_DE.po aktualisiert' (#494) from zen/snac2:master in... (diff)
downloadsnac2-8ed4d5bdcbe552eaa0f143c71b90ff7cd2a3d709.tar.gz
snac2-8ed4d5bdcbe552eaa0f143c71b90ff7cd2a3d709.tar.xz
snac2-8ed4d5bdcbe552eaa0f143c71b90ff7cd2a3d709.zip
Merge remote-tracking branch 'orig/master' into feature/lesser-visibility
Diffstat (limited to 'data.c')
-rw-r--r--data.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/data.c b/data.c
index 36f5101..d291ba7 100644
--- a/data.c
+++ b/data.c
@@ -3137,6 +3137,35 @@ int instance_failure(const char *url, int op)
3137} 3137}
3138 3138
3139 3139
3140int grave(const char *objid, int op)
3141/* the graveyeard of deleted objects */
3142{
3143 int ret = 0;
3144 xs *dir = xs_fmt("%s/grave", srv_basedir);
3145 xs *md5 = xs_md5_hex(objid, strlen(objid));
3146 xs *fn = xs_fmt("%s/%s", dir, md5);
3147 FILE *f;
3148
3149 switch (op) {
3150 case 0: /** check **/
3151 ret = mtime(fn) > 0.0 ? 1 : 0;
3152 break;
3153
3154 case 1: /** add **/
3155 mkdirx(dir);
3156
3157 if ((f = fopen(fn, "w")) != NULL) {
3158 fprintf(f, "%s\n", objid);
3159 fclose(f);
3160 }
3161
3162 break;
3163 }
3164
3165 return ret;
3166}
3167
3168
3140/** notifications **/ 3169/** notifications **/
3141 3170
3142xs_str *notify_check_time(snac *snac, int reset) 3171xs_str *notify_check_time(snac *snac, int reset)