diff options
Diffstat (limited to 'snac.h')
| -rw-r--r-- | snac.h | 45 |
1 files changed, 23 insertions, 22 deletions
| @@ -69,7 +69,7 @@ void snac_log(snac *user, xs_str *str); | |||
| 69 | #define snac_debug(user, level, str) do { if (dbglevel >= (level)) \ | 69 | #define snac_debug(user, level, str) do { if (dbglevel >= (level)) \ |
| 70 | { snac_log((user), (str)); } } while (0) | 70 | { snac_log((user), (str)); } } while (0) |
| 71 | 71 | ||
| 72 | int srv_open(char *basedir, int auto_upgrade); | 72 | int srv_open(const char *basedir, int auto_upgrade); |
| 73 | void srv_free(void); | 73 | void srv_free(void); |
| 74 | 74 | ||
| 75 | int user_open(snac *snac, const char *uid); | 75 | int user_open(snac *snac, const char *uid); |
| @@ -88,7 +88,7 @@ void srv_archive(const char *direction, const char *url, xs_dict *req, | |||
| 88 | const char *body, int b_size); | 88 | const char *body, int b_size); |
| 89 | void srv_archive_error(const char *prefix, const xs_str *err, | 89 | void srv_archive_error(const char *prefix, const xs_str *err, |
| 90 | const xs_dict *req, const xs_val *data); | 90 | const xs_dict *req, const xs_val *data); |
| 91 | void srv_archive_qitem(char *prefix, xs_dict *q_item); | 91 | void srv_archive_qitem(const char *prefix, xs_dict *q_item); |
| 92 | 92 | ||
| 93 | double mtime_nl(const char *fn, int *n_link); | 93 | double mtime_nl(const char *fn, int *n_link); |
| 94 | #define mtime(fn) mtime_nl(fn, NULL) | 94 | #define mtime(fn) mtime_nl(fn, NULL) |
| @@ -139,13 +139,13 @@ double timeline_mtime(snac *snac); | |||
| 139 | int timeline_touch(snac *snac); | 139 | int timeline_touch(snac *snac); |
| 140 | int timeline_here(snac *snac, const char *md5); | 140 | int timeline_here(snac *snac, const char *md5); |
| 141 | int timeline_get_by_md5(snac *snac, const char *md5, xs_dict **msg); | 141 | int timeline_get_by_md5(snac *snac, const char *md5, xs_dict **msg); |
| 142 | int timeline_del(snac *snac, char *id); | 142 | int timeline_del(snac *snac, const char *id); |
| 143 | xs_list *timeline_simple_list(snac *snac, const char *idx_name, int skip, int show); | 143 | xs_list *timeline_simple_list(snac *snac, const char *idx_name, int skip, int show); |
| 144 | xs_list *timeline_list(snac *snac, const char *idx_name, int skip, int show); | 144 | xs_list *timeline_list(snac *snac, const char *idx_name, int skip, int show); |
| 145 | int timeline_add(snac *snac, const char *id, const xs_dict *o_msg); | 145 | int timeline_add(snac *snac, const char *id, const xs_dict *o_msg); |
| 146 | int timeline_admire(snac *snac, const char *id, const char *admirer, int like); | 146 | int timeline_admire(snac *snac, const char *id, const char *admirer, int like); |
| 147 | 147 | ||
| 148 | xs_list *timeline_top_level(snac *snac, xs_list *list); | 148 | xs_list *timeline_top_level(snac *snac, const xs_list *list); |
| 149 | xs_list *local_list(snac *snac, int max); | 149 | xs_list *local_list(snac *snac, int max); |
| 150 | xs_list *timeline_instance_list(int skip, int show); | 150 | xs_list *timeline_instance_list(int skip, int show); |
| 151 | 151 | ||
| @@ -174,14 +174,14 @@ void hide(snac *snac, const char *id); | |||
| 174 | int is_hidden(snac *snac, const char *id); | 174 | int is_hidden(snac *snac, const char *id); |
| 175 | 175 | ||
| 176 | void tag_index(const char *id, const xs_dict *obj); | 176 | void tag_index(const char *id, const xs_dict *obj); |
| 177 | xs_list *tag_search(char *tag, int skip, int show); | 177 | xs_list *tag_search(const char *tag, int skip, int show); |
| 178 | 178 | ||
| 179 | xs_val *list_maint(snac *user, const char *list, int op); | 179 | xs_val *list_maint(snac *user, const char *list, int op); |
| 180 | xs_list *list_timeline(snac *user, const char *list, int skip, int show); | 180 | xs_list *list_timeline(snac *user, const char *list, int skip, int show); |
| 181 | xs_val *list_content(snac *user, const char *list_id, const char *actor_md5, int op); | 181 | xs_val *list_content(snac *user, const char *list_id, const char *actor_md5, int op); |
| 182 | void list_distribute(snac *user, const char *who, const xs_dict *post); | 182 | void list_distribute(snac *user, const char *who, const xs_dict *post); |
| 183 | 183 | ||
| 184 | int actor_add(const char *actor, xs_dict *msg); | 184 | int actor_add(const char *actor, const xs_dict *msg); |
| 185 | int actor_get(const char *actor, xs_dict **data); | 185 | int actor_get(const char *actor, xs_dict **data); |
| 186 | int actor_get_refresh(snac *user, const char *actor, xs_dict **data); | 186 | int actor_get_refresh(snac *user, const char *actor, xs_dict **data); |
| 187 | 187 | ||
| @@ -223,10 +223,13 @@ xs_list *content_search(snac *user, const char *regex, | |||
| 223 | void enqueue_input(snac *snac, const xs_dict *msg, const xs_dict *req, int retries); | 223 | void enqueue_input(snac *snac, const xs_dict *msg, const xs_dict *req, int retries); |
| 224 | void enqueue_shared_input(const xs_dict *msg, const xs_dict *req, int retries); | 224 | void enqueue_shared_input(const xs_dict *msg, const xs_dict *req, int retries); |
| 225 | void enqueue_output_raw(const char *keyid, const char *seckey, | 225 | void enqueue_output_raw(const char *keyid, const char *seckey, |
| 226 | xs_dict *msg, xs_str *inbox, int retries, int p_status); | 226 | const xs_dict *msg, const xs_str *inbox, |
| 227 | void enqueue_output(snac *snac, xs_dict *msg, xs_str *inbox, int retries, int p_status); | 227 | int retries, int p_status); |
| 228 | void enqueue_output_by_actor(snac *snac, xs_dict *msg, const xs_str *actor, int retries); | 228 | void enqueue_output(snac *snac, const xs_dict *msg, |
| 229 | void enqueue_email(xs_str *msg, int retries); | 229 | const xs_str *inbox, int retries, int p_status); |
| 230 | void enqueue_output_by_actor(snac *snac, const xs_dict *msg, | ||
| 231 | const xs_str *actor, int retries); | ||
| 232 | void enqueue_email(const xs_str *msg, int retries); | ||
| 230 | void enqueue_telegram(const xs_str *msg, const char *bot, const char *chat_id); | 233 | void enqueue_telegram(const xs_str *msg, const char *bot, const char *chat_id); |
| 231 | void enqueue_ntfy(const xs_str *msg, const char *ntfy_server, const char *ntfy_token); | 234 | void enqueue_ntfy(const xs_str *msg, const char *ntfy_server, const char *ntfy_token); |
| 232 | void enqueue_message(snac *snac, const xs_dict *msg); | 235 | void enqueue_message(snac *snac, const xs_dict *msg); |
| @@ -234,7 +237,6 @@ void enqueue_close_question(snac *user, const char *id, int end_secs); | |||
| 234 | void enqueue_object_request(snac *user, const char *id, int forward_secs); | 237 | void enqueue_object_request(snac *user, const char *id, int forward_secs); |
| 235 | void enqueue_verify_links(snac *user); | 238 | void enqueue_verify_links(snac *user); |
| 236 | void enqueue_actor_refresh(snac *user, const char *actor, int forward_secs); | 239 | void enqueue_actor_refresh(snac *user, const char *actor, int forward_secs); |
| 237 | void enqueue_request_replies(snac *user, const char *id); | ||
| 238 | int was_question_voted(snac *user, const char *id); | 240 | int was_question_voted(snac *user, const char *id); |
| 239 | 241 | ||
| 240 | xs_list *user_queue(snac *snac); | 242 | xs_list *user_queue(snac *snac); |
| @@ -247,16 +249,16 @@ void purge_all(void); | |||
| 247 | 249 | ||
| 248 | xs_dict *http_signed_request_raw(const char *keyid, const char *seckey, | 250 | xs_dict *http_signed_request_raw(const char *keyid, const char *seckey, |
| 249 | const char *method, const char *url, | 251 | const char *method, const char *url, |
| 250 | xs_dict *headers, | 252 | const xs_dict *headers, |
| 251 | const char *body, int b_size, | 253 | const char *body, int b_size, |
| 252 | int *status, xs_str **payload, int *p_size, | 254 | int *status, xs_str **payload, int *p_size, |
| 253 | int timeout); | 255 | int timeout); |
| 254 | xs_dict *http_signed_request(snac *snac, const char *method, const char *url, | 256 | xs_dict *http_signed_request(snac *snac, const char *method, const char *url, |
| 255 | xs_dict *headers, | 257 | const xs_dict *headers, |
| 256 | const char *body, int b_size, | 258 | const char *body, int b_size, |
| 257 | int *status, xs_str **payload, int *p_size, | 259 | int *status, xs_str **payload, int *p_size, |
| 258 | int timeout); | 260 | int timeout); |
| 259 | int check_signature(xs_dict *req, xs_str **err); | 261 | int check_signature(const xs_dict *req, xs_str **err); |
| 260 | 262 | ||
| 261 | srv_state *srv_state_op(xs_str **fname, int op); | 263 | srv_state *srv_state_op(xs_str **fname, int op); |
| 262 | void httpd(void); | 264 | void httpd(void); |
| @@ -270,21 +272,21 @@ const char *default_avatar_base64(void); | |||
| 270 | 272 | ||
| 271 | xs_str *process_tags(snac *snac, const char *content, xs_list **tag); | 273 | xs_str *process_tags(snac *snac, const char *content, xs_list **tag); |
| 272 | 274 | ||
| 273 | char *get_atto(const xs_dict *msg); | 275 | const char *get_atto(const xs_dict *msg); |
| 274 | xs_list *get_attachments(const xs_dict *msg); | 276 | xs_list *get_attachments(const xs_dict *msg); |
| 275 | 277 | ||
| 276 | xs_dict *msg_admiration(snac *snac, char *object, char *type); | 278 | xs_dict *msg_admiration(snac *snac, const char *object, const char *type); |
| 277 | xs_dict *msg_repulsion(snac *user, char *id, char *type); | 279 | xs_dict *msg_repulsion(snac *user, const char *id, const char *type); |
| 278 | xs_dict *msg_create(snac *snac, const xs_dict *object); | 280 | xs_dict *msg_create(snac *snac, const xs_dict *object); |
| 279 | xs_dict *msg_follow(snac *snac, const char *actor); | 281 | xs_dict *msg_follow(snac *snac, const char *actor); |
| 280 | 282 | ||
| 281 | xs_dict *msg_note(snac *snac, const xs_str *content, const xs_val *rcpts, | 283 | xs_dict *msg_note(snac *snac, const xs_str *content, const xs_val *rcpts, |
| 282 | xs_str *in_reply_to, xs_list *attach, int priv); | 284 | const xs_str *in_reply_to, const xs_list *attach, int priv); |
| 283 | 285 | ||
| 284 | xs_dict *msg_undo(snac *snac, char *object); | 286 | xs_dict *msg_undo(snac *snac, const xs_val *object); |
| 285 | xs_dict *msg_delete(snac *snac, char *id); | 287 | xs_dict *msg_delete(snac *snac, const char *id); |
| 286 | xs_dict *msg_actor(snac *snac); | 288 | xs_dict *msg_actor(snac *snac); |
| 287 | xs_dict *msg_update(snac *snac, xs_dict *object); | 289 | xs_dict *msg_update(snac *snac, const xs_dict *object); |
| 288 | xs_dict *msg_ping(snac *user, const char *rcpt); | 290 | xs_dict *msg_ping(snac *user, const char *rcpt); |
| 289 | xs_dict *msg_pong(snac *user, const char *rcpt, const char *object); | 291 | xs_dict *msg_pong(snac *user, const char *rcpt, const char *object); |
| 290 | xs_dict *msg_question(snac *user, const char *content, xs_list *attach, | 292 | xs_dict *msg_question(snac *user, const char *content, xs_list *attach, |
| @@ -292,7 +294,6 @@ xs_dict *msg_question(snac *user, const char *content, xs_list *attach, | |||
| 292 | 294 | ||
| 293 | int activitypub_request(snac *snac, const char *url, xs_dict **data); | 295 | int activitypub_request(snac *snac, const char *url, xs_dict **data); |
| 294 | int actor_request(snac *user, const char *actor, xs_dict **data); | 296 | int actor_request(snac *user, const char *actor, xs_dict **data); |
| 295 | void timeline_request_replies(snac *user, const char *id); | ||
| 296 | int send_to_inbox_raw(const char *keyid, const char *seckey, | 297 | int send_to_inbox_raw(const char *keyid, const char *seckey, |
| 297 | const xs_str *inbox, const xs_dict *msg, | 298 | const xs_str *inbox, const xs_dict *msg, |
| 298 | xs_val **payload, int *p_size, int timeout); | 299 | xs_val **payload, int *p_size, int timeout); |