default
d3a36218a6
Implemented 'Ping' and 'Pong' activities.
...
According to https://humungus.tedunangst.com/r/honk/v/tip/f/docs/ping.txt
2023-05-05 09:54:41 +02:00
default
980a8d524f
Fixed more warnings.
2023-05-04 09:34:33 +02:00
default
185aac2387
Added -Wextra to C flags.
2023-05-04 09:28:36 +02:00
default
753eadfd17
Added some const here and there.
2023-05-04 09:25:09 +02:00
default
511f5062b7
Deleted real unused parameters.
2023-05-04 09:19:26 +02:00
default
21fa6c7904
Strip the query string in msg_follow().
2023-04-23 14:33:53 +02:00
default
291f251ced
Added mastoapi follow.
2023-04-23 08:44:26 +02:00
default
5b93e9069e
Added mastoapi code for account search.
2023-04-23 05:33:54 +02:00
default
81100cb825
Posts can now be sent (still no images).
2023-04-15 19:05:26 +02:00
default
bd21d144de
New function timeline_touch().
2023-04-14 19:17:16 +02:00
default
a050be9107
Don't show the full tree in notifications.
2023-04-14 13:05:36 +02:00
default
bcde97c2d5
New function notify_add().
2023-04-13 16:59:17 +02:00
default
2d5d63554c
Started working on a notification list.
2023-04-13 15:32:13 +02:00
default
79224ca2b5
New function mastodon_status().
2023-04-11 09:50:12 +02:00
default
5d26f31a8a
Fixed overzealous rejection of Announces.
2023-04-05 23:23:19 +02:00
default
976083bf87
Some log tweaks.
2023-04-02 11:17:51 +02:00
default
c83b601f90
In is_msg_public(), also look at 'Announce' messages.
2023-03-31 19:09:59 +02:00
default
21e562cfbd
Inbox collection can be disabled from the config file.
2023-03-08 10:14:40 +01:00
default
985bb474ba
Enable back inbox recollection.
2023-03-07 10:29:50 +01:00
default
71394774f4
Disabled inbox recollection temporarily (for global re push).
2023-03-07 10:27:50 +01:00
default
35995d03be
Reject messages not for me.
2023-03-07 10:04:13 +01:00
default
23177e9395
is_msg_for_me() also accepts msgs where a followed is cc'ed.
2023-03-07 09:40:55 +01:00
default
946c29773a
Some improvements to is_msg_for_me().
2023-03-06 20:07:44 +01:00
default
b032e3d522
Fixed is_msg_for_me().
2023-03-06 14:35:11 +01:00
default
e3e45b7c98
New function is_msg_for_me().
2023-03-06 14:28:53 +01:00
default
60f77b6cad
msg_update() sends copies the 'to' and 'cc' fields in notes.
2023-03-06 11:26:43 +01:00
default
751211684f
Don't send public admirations of non-public messages.
2023-03-06 11:16:15 +01:00
default
79ea0bf4ab
Reject MUTEd actor messages ASAP with a 403 status.
2023-03-04 00:26:50 +01:00
default
45f490286a
Send to collected inboxes AFTER sending to explicit recipients.
2023-03-03 06:04:40 +01:00
default
8451d66601
Log the user-agent when serving the actor.
2023-03-02 15:34:04 +01:00
default
1ca94dab67
Added user-agent in non-signed http connections.
2023-03-02 13:30:29 +01:00
default
5036cb5e11
Connection jobs are treated as urgent.
2023-03-02 12:38:02 +01:00
default
e705e5c3ed
Show a bigger piece of a connection error.
2023-03-02 12:30:00 +01:00
default
4773d6c64c
Output to the shared inboxes only the public messages.
2023-03-02 10:26:52 +01:00
default
d53d9af2be
Enqueue messages to the collected inboxes first.
2023-03-02 09:28:19 +01:00
default
29b12498dd
Simplified is_msg_public().
2023-03-02 09:15:40 +01:00
default
e74ae0f589
Renamed inboxes/ to inbox/.
2023-03-02 09:01:08 +01:00
default
5e3c50d6e1
New inbox collection functions.
2023-03-02 08:43:50 +01:00
default
eb0c7eabbb
Minor refactoring to actor_request().
...
Including commented out experimental code for collecting sharedInboxes.
2023-03-01 09:22:32 +01:00
default
d75a22adab
New function srv_archive_error().
2023-03-01 08:25:36 +01:00
default
1d82d13d62
In activitypub_request(), retry failed signed requests as non-signed.
2023-02-24 09:00:03 +01:00
default
2bfebba7be
Don't wait for 3 seconds if there were some q_items processed.
2023-02-22 08:39:54 +01:00
default
3a97721c30
Unrolled the recipient-to-inbox process in process_user_queue_item().
...
Instead of calling inbox_list(), waiting for it to end and then
sending to all the "uniqueized" inboxes, the sending is done everytime
a unique inbox is found.
2023-02-20 13:19:29 +01:00
default
58c01be996
Use actor_request() again in get_actor_inbox().
...
This was faster, but some actors not already here (i.e. some
mentions) were not posted.
2023-02-20 10:02:21 +01:00
default
5230435b31
New boolean argument 'priv' to msg_note().
2023-02-20 09:32:44 +01:00
default
9083bef5cb
Don't try to send to empty email addresses.
2023-02-20 06:12:23 +01:00
default
f1f3e3b116
Email notifications can be disabled.
2023-02-20 06:00:54 +01:00
default
d3da67eaba
Don't request the actor in get_actor_inbox().
2023-02-15 06:01:47 +01:00
default
1af96788f0
Even more tweaks to connection reply logging.
2023-02-14 08:49:17 +01:00
default
e71c72f037
More tweaks to connection reply logging.
2023-02-14 08:32:07 +01:00
default
f832e6a508
Some tweaks to connection reply logging.
2023-02-14 08:26:39 +01:00
default
7e27ccfde8
Try to show a piece of the error after connecting.
2023-02-14 08:15:43 +01:00
default
f5d3859e07
Added the user to the notification.
2023-02-08 14:47:23 +01:00
default
944bd60e06
Deleted old output message processing in user queue.
2023-02-07 13:34:26 +01:00
default
4cca157641
Output messages are now processed by the pool of threads.
2023-02-07 13:31:48 +01:00
default
8f63c6259a
Log unexpected q_item types.
2023-02-07 13:19:27 +01:00
default
7be01b7f34
Output messages are sent with send_to_inbox_raw().
2023-02-07 10:33:58 +01:00
default
3ddf76c2aa
New function send_to_inbox_raw().
2023-02-07 10:29:06 +01:00
default
2db57c9df9
Added internals for Telegram notifications.
2023-02-07 07:37:23 +01:00
default
f6d51357af
process_queue() now posts the q_item to the thread pool.
...
Instead of calling process_queue_item() itself.
2023-02-06 20:29:18 +01:00
default
b2d186cd0f
The pool of threads now process q_items.
...
Also, the purge is commanded as a q_item.
2023-02-06 20:07:29 +01:00
default
71a7569467
Deleted the type argument from object_get_my_md5() and object_get().
...
It was never used.
2023-02-05 17:45:00 +01:00
default
d49089898f
Elevated debug level to bad user / invalid user messages.
2023-02-03 16:51:59 +01:00
default
928f22fbba
Email notifications have been moved to the global queue.
2023-02-02 05:21:16 +01:00
default
c639553836
New function queue() (the global queue).
2023-02-02 05:07:20 +01:00
default
108ed072e2
Renamed process_queue_item() to process_user_queue_item().
2023-02-02 04:55:58 +01:00
default
8d22c448d4
process_queue() has been renamed to process_user_queue().
2023-02-02 04:50:51 +01:00
default
106c94ef86
queue() renamed to user_queue().
2023-02-02 04:47:59 +01:00
default
ee77e45abb
dequeue() does not need a snac argument.
2023-02-02 04:44:30 +01:00
default
c2524323a9
New function process_queue_item().
2023-01-31 22:30:34 +01:00
default
cabbdbe209
Deleted dead code.
2023-01-31 20:26:33 +01:00
default
94c4790bd7
Unified queue message field names.
2023-01-31 20:22:36 +01:00
default
4e86847f72
Image attachments in posts can now have descriptions ('alt text').
2023-01-28 18:22:42 +01:00
default
756e8cb2a7
More tweaks to the default avatar.
2023-01-27 18:28:55 +01:00
default
aecfcacc32
Some tweaks to the default avatar.
2023-01-27 18:21:54 +01:00
default
a3ed2408fc
New function default_avatar_base64().
2023-01-27 18:17:11 +01:00
default
fd1e281cba
Use a shorter timeout for first output connections.
2023-01-24 15:06:58 +01:00
default
2921dbe058
Always make ids unique.
2023-01-22 20:31:16 +01:00
default
7199c00403
In msg_note(), store the original content in the sourceContent field.
2023-01-20 10:09:32 +01:00
default
a38c7aeadc
Updated year in copyright notices.
2023-01-17 09:50:16 +01:00
default
b262961c93
Process HTML Unicode entities specially in process_tags().
2023-01-17 09:37:41 +01:00
Andrew Alderwick
3cb1725225
Added OpenBSD's unveil() and pledge() support.
2023-01-13 13:25:14 +01:00
default
11ba44ff9f
Some mention formatting tweaks.
2023-01-13 07:12:19 +01:00
default
1d0ab9c156
Added (partial) support for #HashTags in posts.
2023-01-12 13:49:37 +01:00
default
6b344b8c2e
Deleted unused argument in timeline_request().
2023-01-11 20:51:15 +01:00
default
40b3f739d2
Deleted unused argument in timeline_admire().
2023-01-11 20:47:36 +01:00
default
75f8554e38
Deleted unused arguments in timeline_add().
2023-01-11 20:40:13 +01:00
default
1aac24ca75
More keyId/signature tweaks.
2023-01-11 09:38:19 +01:00
default
1438d046a5
Log tweaks.
2023-01-10 20:37:53 +01:00
default
23eb05ee99
Use the already loaded actor in check_signature().
2023-01-10 18:21:00 +01:00
default
292d7c3e95
Fixed log level for 'serving actor'.
2022-12-24 07:05:01 +01:00
default
850259b269
Added a working space to timeline_request().
2022-12-23 21:41:52 +01:00
default
e762d942de
Don't rewrite the id unless it's different.
2022-12-23 21:30:18 +01:00
default
f9f6d96579
Corrected a debug level.
2022-12-23 12:32:59 +01:00
default
f83ff46b6b
Fixed crash on some webfinger errors.
2022-12-23 12:20:54 +01:00
default
0bba515cf0
timeline_request() fixes the canonical id for the object.
2022-12-23 10:01:10 +01:00
default
a24b27bf29
Don't generate inReplyTo as an empty string.
2022-12-23 08:05:00 +01:00
default
8461fbfbcc
Log the actor request.
2022-12-16 08:35:52 +01:00
default
e6c48cc96a
In msg_note(), delete all cc recipients also in the to.
2022-12-16 07:51:10 +01:00
default
25acaf178c
Replaced all calls to post() with enqueue_message().
2022-12-16 07:16:00 +01:00
default
427f7341fa
New function enqueue_message().
2022-12-16 07:09:25 +01:00
default
286eb291c7
Lower debug level to repeated follows.
2022-12-15 16:43:01 +01:00
default
df612873d6
Log repeated Follow messages.
2022-12-15 16:37:34 +01:00
default
6a7007e381
Added support for Update + Note on input.
2022-12-15 11:06:31 +01:00
default
645e7ec43e
Some code reordering to placate scan-build's wrath.
2022-12-14 04:55:47 +01:00
default
79270abd09
Log the response date in send_to_inbox() errors.
2022-12-11 09:08:12 +01:00
default
6fd5d14428
In process_queue(), do not retry for 404 or 410 status.
2022-12-10 10:36:31 +01:00
default
cef10f5678
Added level of debug for 'Delete' messages.
2022-12-08 08:19:24 +01:00
Alex Schroeder
a221237637
Pagination of the public and private page
...
Use the query parameters skip and show to control what you can see,
e.g. /alex/admin?skip=0&show=4
Don't use or save the timeline cache if either is set.
The following functions were changed from accepting a single max
parameter to accepting both skip and show:
timeline_simple_list, timeline_list, index_list_desc.
2022-12-06 18:27:33 +01:00
Alex Schroeder
20f862a651
Use "new" instead of "New" for log messages
...
The messages for new "Like" and new "Delete" started with an uppercase
n instead of a lowercase n like all the other log messages.
2022-12-04 10:35:01 +01:00
default
af6d31ff83
New function timeline_simple_list().
2022-12-03 07:27:26 +01:00
default
a133427e8d
More old code cleaning.
2022-12-02 20:56:51 +01:00
default
3e2891b100
Renamed timeline_here() to object_here().
2022-12-02 20:44:51 +01:00
default
c06136a8ac
Fixed one post queries.
2022-12-02 19:39:17 +01:00
default
33c8a73c17
Fixed RSS and outbox to use the new data storage.
2022-12-02 19:30:59 +01:00
default
c00e3afcdc
Big data storage change.
2022-12-02 19:14:59 +01:00
default
e98dbe4eb5
Added the profile="" argument to Person content-type.
2022-12-01 19:38:11 +01:00
default
8b4dbfd708
Deleted dump of debugging code.
2022-11-28 17:54:32 +01:00
default
f209c3205d
Use xs_set in recipient_list() and inbox_list().
2022-11-28 15:49:56 +01:00
default
07fec71273
Upgraded followers to the new db.
2022-11-28 10:46:42 +01:00
default
832bbfd5eb
Dump bad signature headers to /tmp/ (temporary).
2022-11-27 09:18:35 +01:00
default
a9d3e0ca79
I was using fclose() instead of pclose(). What a moron.
2022-11-27 09:09:55 +01:00
default
1243e26a0d
New function object_add_ow().
2022-11-26 05:18:48 +01:00
default
afeec970a3
Also call object_del() on a renewed actor in actor_request().
2022-11-25 12:50:19 +01:00
default
e2c332c68a
On Update + Person, call object_del() before actor_add().
2022-11-25 12:09:30 +01:00
default
9145cca97a
In msg_note(), also add the in_reply_to author as a tag.Mention.
2022-11-22 20:31:22 +01:00
default
f4bebf0323
Logging tweaks.
2022-11-18 18:08:09 +01:00
default
e6bf647b98
Always log process_queue sending.
2022-11-18 08:04:20 +01:00
default
f0e17d6753
Queue messages to inboxes instead of actors.
2022-11-17 18:33:54 +01:00
default
a12da31bdf
Move send to actor logging to process_queue().
2022-11-17 10:16:54 +01:00
default
35ad83e9ec
Also log the inbox in send_to_actor().
2022-11-17 09:16:25 +01:00
default
afce422785
Use endpoints/sharedInbox instead of inbox, if there is one.
2022-11-17 09:04:24 +01:00
default
21c676487a
Set "u-url mention" class for mentions.
2022-11-13 15:15:16 +01:00
default
73323a7fc0
Some formatting refactoring.
2022-11-13 08:41:50 +01:00
default
2364d960b7
Fixed memory leak.
2022-11-07 19:37:05 +01:00
default
c0d5016e1e
Use the newly resolved actor in msg_follow() instead of rewriting the old one.
2022-11-02 21:36:55 +01:00
default
dbe60be4f3
Fixed bug when following by @user@host.
2022-11-02 20:28:40 +01:00
default
1fd14a850d
People page started.
2022-11-02 10:13:14 +01:00
default
34a2b47e85
Don't store objects other than 'Note' in timeline_request().
2022-11-01 20:13:23 +01:00
default
78b3a30447
Some code moving to avoid false positive leaks.
2022-10-25 13:59:15 +02:00
default
2ab428ab0a
Fixed leak.
2022-10-25 10:19:42 +02:00
default
084731fec2
Send notification emails through the queue.
2022-10-21 19:07:20 +02:00
default
6ffbb3a4fc
Fixed typo.
2022-10-21 10:37:08 +02:00
default
d210674569
Don't notify about admirations of things by others.
2022-10-21 10:36:09 +02:00
default
6e470440f9
Rewritten notify() to write the message in bulk.
...
This was meant to avoid some 32 EPIPE from sendmail,
but it's still happening.
2022-10-21 10:26:45 +02:00
default
a52ed9be78
New function notify().
2022-10-21 09:41:29 +02:00
default
a16600e330
Better 'Delete' message logging.
2022-10-20 10:34:32 +02:00
default
395f80bdc4
Added support for HEAD methods.
...
Mastodon uses them when it founds an attachment.
2022-10-16 19:00:17 +02:00
default
78ec3b077b
Media can be attached to notes.
...
The web interface limits this (by now) to only one
attachment, given the URL.
2022-10-10 09:03:15 +02:00
default
849913dc59
Use the time functions of xs_time.h.
2022-10-02 09:27:17 +02:00
default
be3191ee5d
Fixed crash.
2022-10-01 21:01:54 +02:00
default
366c23ab85
Also accept 'Delete' on input.
2022-10-01 19:48:13 +02:00
default
82e9a03925
Implemented 'Delete'.
2022-10-01 19:37:47 +02:00
default
37925a020e
timeline_request() also triggers an actor_request().
2022-10-01 18:48:05 +02:00
default
2c00c7b0b5
New web action 'Unfollow'.
2022-10-01 09:12:33 +02:00
default
fa9c90c00e
Add a date to a Follow message if it doesn't include one.
2022-09-30 18:12:32 +02:00
default
392c014c26
New function check_signature() (incomplete).
2022-09-29 14:44:24 +02:00
default
49bca7e273
html_entry() is built in its own string and then added.
...
This will be faster.
2022-09-29 09:11:43 +02:00
default
c5a7a9c475
Treat 410 Gone from actors specially.
2022-09-28 21:09:50 +02:00
default
2be2c07e9c
The input queue also has retries.
2022-09-28 20:41:07 +02:00
default
51ed24be47
If an actor cannot be retrieved, move the message back to the queue.
2022-09-28 20:24:47 +02:00
default
e4967cfcb3
Process 'Update' + 'Person'.
2022-09-28 20:08:02 +02:00
default
c38cc09e4c
Process 'Undo' + 'Follow'.
2022-09-28 19:59:19 +02:00
default
045498652f
'Announce' messages also try to bring the announced actor.
2022-09-28 07:12:16 +02:00
default
3b8a43013d
Check for muted actors in Announce messages.
2022-09-28 05:16:17 +02:00
default
03b0e105b5
Delete the _snac field in outbox.
2022-09-28 04:52:17 +02:00
default
32661d2be7
The outbox returns now some entries.
2022-09-28 04:48:23 +02:00
default
94ef803701
Timeline pages are also served.
2022-09-27 19:00:24 +02:00
default
66a7f633b3
Call process_tags() from msg_note().
2022-09-27 18:33:25 +02:00
default
b6c4906c6a
New function process_tags() (untested).
2022-09-27 18:20:25 +02:00
default
8ac32f0d81
'Accept' messages are processed.
2022-09-27 15:38:09 +02:00
default
05bf4b2c3c
New function msg_follow().
2022-09-27 15:28:08 +02:00
default
6144e0eeeb
More work in msg_note().
2022-09-27 14:50:13 +02:00
default
0b6540f503
Notes can be posted WOW!.
2022-09-27 14:07:36 +02:00
default
26a3b260d5
Started function not_really_markdown().
2022-09-27 09:38:46 +02:00
default
ec9115717b
'Follow' messages are now processed.
2022-09-27 07:54:05 +02:00
default
e550e86afb
Check the digest before enqueueing.
2022-09-27 07:16:46 +02:00
default
8f738e1417
Serve the actor as the correct content-type.
2022-09-26 12:29:26 +02:00
default
fd6f71bfe3
More work but signatures seem to still fail.
2022-09-26 11:19:45 +02:00
default
acc467c034
New function msg_admiration().
2022-09-26 10:08:14 +02:00
default
f410e3a40a
New function post.
2022-09-26 09:28:39 +02:00
default
c37a99b97c
New function is_msg_public().
2022-09-26 09:25:35 +02:00
default
e0e86d269a
Renamed to recipient_list().
2022-09-26 09:22:32 +02:00
default
46ee4a4a18
New function recipients().
2022-09-26 09:22:05 +02:00
default
74aef6994a
Link to local if the child id is from this actor.
2022-09-26 09:08:03 +02:00
default
5321295005
Resolve object id instead of discarding like or boost.
2022-09-26 07:19:45 +02:00
default
d1a2a7438d
New metadata 'referrer', that contains an actor.
...
This field contains the actor that boosted an entry.
2022-09-26 07:13:39 +02:00
default
b5be6a0172
Return the correct content-type.
2022-09-26 00:01:19 +02:00
default
d86f6ee27f
Backported from xs.
2022-09-25 22:57:18 +02:00
default
a63c9c24c1
Avoid crashing on empty q_items.
2022-09-25 21:55:29 +02:00
default
bf1ee12da2
More sign work (I'm tired).
2022-09-25 21:45:58 +02:00
default
e132ce5076
New function msg_actor().
2022-09-25 21:02:47 +02:00
default
6f7f98ded3
Fixed a bug in the digest header.
2022-09-25 18:50:53 +02:00
default
6169932733
New function timeline_request().
2022-09-25 18:28:15 +02:00
default
bb70101fec
New function timeline_admire().
2022-09-25 17:42:39 +02:00
default
4f328eec1f
Some fixes to timeline_add().
2022-09-25 09:07:43 +02:00
default
5792ef5d24
Process 'Create' messages (untested).
2022-09-25 07:58:25 +02:00
default
b070d2d8f8
The HTTP request headers are stored in a plain dict.
2022-09-25 07:42:57 +02:00
default
e9afd7cd13
More work.
2022-09-24 11:54:35 +02:00
default
a7202dcd1c
More message work.
2022-09-24 11:04:35 +02:00
default
ea57b47264
Started creating messages.
2022-09-24 10:43:57 +02:00
default
a6712ba79a
Also store the req object in enqueue_input().
2022-09-24 10:03:27 +02:00
default
3df33c845d
More ActivityPub work.
2022-09-23 23:49:09 +02:00
default
c181c57f56
New function enqueue_input().
2022-09-23 23:09:09 +02:00
default
b4a4fa0b0d
Fixed memleak.
2022-09-23 21:01:35 +02:00
default
6e6c315494
New function activitypub_get_handler().
2022-09-23 20:59:19 +02:00
default
1d694a245a
xs_httpd_request() also returns the payload.
2022-09-23 20:28:23 +02:00
default
bbf5471039
New function process_queue().
2022-09-23 19:37:01 +02:00
default
cf59d68491
New functions send_to_inbox() and send_to_actor().
2022-09-23 19:07:45 +02:00
default
6586be50a0
Fixed bug in actor_request().
2022-09-23 18:46:30 +02:00
default
a0bcc4e6c0
Improved activitypub_request().
2022-09-23 18:15:59 +02:00
default
bdc166111d
[activitypub.c] New file.
2022-09-23 17:33:33 +02:00