default
88294c5198
Log actor_request() errors.
2023-12-11 07:19:42 +01:00
default
09b926c168
More functions do not require the user argument.
2023-12-10 17:50:03 +01:00
default
0e6c5f9463
actor_request() does not need a user argument.
2023-12-10 17:46:54 +01:00
default
90179f8459
activitypub_request() may have a NULL user.
...
In the NULL user case, only non-signed requests will be done,
but it's probably enough for actor requests in most cases.
2023-12-10 10:27:45 +01:00
default
1c19404258
Minor reordering code to process_input_message().
2023-12-10 10:17:50 +01:00
default
95ccff541c
process_input_message() returns -1 on errors.
2023-12-10 10:00:17 +01:00
default
d7fe3ba615
Call is_msg_for_me() from global queue input messages.
2023-12-10 09:08:30 +01:00
default
8f172f5e0e
Usage of shared inboxes is now configurable from the server.json file.
2023-12-08 08:41:32 +01:00
default
ce0e782c94
Also check inside Update messages in is_msg_for_me().
2023-12-06 19:59:59 +01:00
default
bad729c631
Started work to support shared inboxes.
2023-12-06 14:46:51 +01:00
default
b846c943b3
Fixed crash in activitypub_request() when there is no payload.
2023-11-29 08:58:31 +01:00
default
c1502219bb
Local tag links now point to the search by tag URL.
2023-11-08 09:32:02 +01:00
default
759042dc9f
Drop updates for unknown posts.
2023-10-16 19:19:41 +02:00
default
22cc5f42a5
Drop replies to hidden posts.
2023-10-16 19:14:44 +02:00
default
eb04c8e4f2
On output, consider HTTP status 405 (not allowed) as a fatal error.
2023-10-06 17:33:44 +02:00
default
60e8953a69
Give more retry time to timedout connections.
2023-09-29 10:34:22 +02:00
default
ac8790c3cd
If a metadata starts with https:, convert it to a link.
2023-09-22 12:34:47 +02:00
default
c4b2d3bc69
If an account has metadata, return them as attachment PropertyValues in msg_actor().
2023-09-18 11:24:30 +02:00
default
8ebfa10547
Use xs_match() in some places for more clarity.
2023-09-17 03:00:31 +02:00
default
2edbb75a18
Also accept Update activities for Page and Article.
2023-09-15 23:18:27 +02:00
default
073a2d962a
Discard output messages to blocked instances.
2023-09-02 08:41:29 +02:00
default
4e87a1106a
Consider error status 400 as fatal in output messages.
2023-09-01 11:50:01 +02:00
default
57c84d1c3a
Some fixes to 'Undo' messages.
...
msg_undo() now generates valid messages for objects that are only
referenced by its id.
2023-08-31 16:11:58 +02:00
default
505084bab7
Added some support for 'Article' object types.
2023-08-23 09:44:46 +02:00
default
7e63766e4a
Also propagate the 'conversation' field, if there is one.
2023-08-22 20:12:22 +02:00
default
46cfc37f2b
Be more strict when serving note objects.
2023-08-18 18:21:52 +02:00
default
8c87b6894e
Fixed some warning.
2023-08-14 18:04:27 +02:00
default
f09340c352
If a user 'header' field is defined, use it.
2023-08-14 13:12:16 +02:00
default
c8d535a154
Ignore 'Add' activities ASAP.
2023-08-13 16:09:20 +02:00
default
d3de540a05
Don't archive Accept + Create activities as errors.
...
They may be (or not, not remember from the doc), but I don't care.
2023-08-13 15:56:11 +02:00
default
a0906208ea
Use some new xs_stock values.
2023-08-13 12:09:35 +02:00
default
cac1c6febd
Rewritten actor_get() to not depend on a user.
2023-08-12 11:23:01 +02:00
default
499697258d
Rewritten is_msg_public() to not depend on a user.
2023-08-12 09:43:01 +02:00
default
36ee16db1d
Archive JSON errors in activitypub_post_handler.
2023-08-11 22:04:23 +02:00
default
fff4ff4261
More strict retries.
2023-08-09 20:04:57 +02:00
default
203dd88389
Be more strict in not retrying on permanent errors.
2023-08-09 19:36:31 +02:00
default
3e5bb109d1
Renamed json dump functions to new xs spec.
2023-08-08 19:29:34 +02:00
default
65df883b3f
Fixed votersCount.
2023-08-08 13:56:12 +02:00
default
135e690a27
Limited users can announce our own posts.
2023-08-07 19:21:57 +02:00
default
bf79c8c370
Some fixes to limiting actors.
2023-08-07 06:35:31 +02:00
default
106791ff6b
Added command-line interface for limit/unlimit users.
2023-08-06 19:04:30 +02:00
default
28adb6c850
Drop announces from limited users.
2023-08-06 18:42:47 +02:00
default
d455280705
Fixed a log message level.
2023-08-02 09:42:51 +02:00
default
368b1eb452
Fixed outbox to be an OrderedCollection of Create+Note, not Note.
2023-07-29 15:29:11 +02:00
default
751eb0586a
msg_create() is of type @wrapper.
...
This means that it also generate the same id for the same Note.
2023-07-29 15:19:52 +02:00
default
0f8c0cd694
Updated comment in headers.
2023-07-28 11:34:18 +02:00
default
4af95579dc
Deleted a comment that is no longer true.
2023-07-24 20:44:21 +02:00
default
e428b57865
Improved Accept + implicit Follow code.
2023-07-24 20:44:00 +02:00
default
dc5c1ce0ac
Added support for Accept objects that only provide an object id.
...
This allows following Guppe groups.
2023-07-24 20:37:31 +02:00
default
6e5c7d4a4b
Increased recursion level for timeline_request().
2023-07-18 09:51:59 +02:00
default
35987ebb50
Avoid incomplete messages in timeline_request().
2023-07-15 16:13:26 +02:00
default
43d2e80dc5
Use the right object id when storing Announce + Create + Note objects.
2023-07-14 09:05:27 +02:00
default
9b19a26408
Increased log level for Announce error requests.
2023-07-13 21:11:49 +02:00
default
2caeb550b9
Added support for the 'Page' ActivityPub object.
...
So that you can follow and interact with lemmy channels.
2023-07-13 21:01:15 +02:00
default
a05aa969d0
Added a maximum level of recursion to timeline_request().
2023-07-13 20:19:50 +02:00
default
0bdd1f0420
Always log send status in post_message().
2023-07-13 18:21:30 +02:00
default
545af948db
New function post_message(), to send a message bypassing the output queue.
...
This is used when accepting Follow requests; this way, follows are
confirmed as fast as possible.
If the message cannot be immediately sent, it's queued as always.
2023-07-13 18:18:23 +02:00
default
137f775605
Minor prototype tweak.
2023-07-13 17:58:18 +02:00
Yonle
47adfa169a
activitypub.c: Remove unused variable.
2023-07-12 09:18:57 +07:00
default
7e5b02be3f
Fixed weird prototype of process_tags().
2023-07-04 16:57:17 +02:00
default
6fce560f01
The actor bio now accepts tags.
2023-07-04 16:54:41 +02:00
default
78b468f013
More unfollow notification tweaks.
2023-07-04 14:23:12 +02:00
default
7db4de872d
Also show unfollows in the notification area.
2023-07-04 14:07:33 +02:00
default
a114d5094d
Call is_instance_blocked() from activitypub_post_handler().
2023-06-29 08:26:44 +02:00
default
7a0efc3680
Increased log level for 'not for us' messages.
2023-06-26 08:38:49 +02:00
default
96b8791754
Defend from kbin.social messages not having a content-type header.
2023-06-19 17:39:53 +02:00
default
a260f5fec3
Increased debug level for NOT collecting inboxes.
2023-06-16 10:07:25 +02:00
default
f1294bd3d4
Added a comment about Announces of non-Notes.
2023-06-11 21:53:18 +02:00
default
5cdfd64d61
No more archiving of borked Likes.
2023-06-11 20:12:01 +02:00
default
cf2cfca624
Also reject Like messages in is_msg_for_me().
2023-06-11 20:10:23 +02:00
default
1dd88aa6f6
Log malformed Likes from wafrn.net (who else?).
2023-06-11 20:03:42 +02:00
default
f6b836e120
Fixed comment.
2023-06-11 10:55:39 +02:00
default
723343fc42
Disable timeline_request_replies()
temporarily.
2023-06-11 10:54:48 +02:00
default
e45ffa0fa2
Use a different variable name to store the id of 'embedded' children.
2023-06-11 10:41:19 +02:00
default
ecde1c219e
New function enqueue_request_replies().
...
This way, the (potentially expensive and slow) call to
timeline_request_replies() is detached from actions like
replying a message from the web ui.
2023-06-07 12:04:59 +02:00
default
e926fa2309
Changed timeline_request_replies() to receive an id and not an object.
2023-06-07 11:39:13 +02:00
default
f90d4b2372
New function timeline_request_replies().
...
This function downloads and stores all replies to a message, recursively.
Increases traffic.
Mastodon instances request the user actor again and again without caching
(when the 'replies' Collection is downloaded). Maybe I'm not doing something
correctly?
2023-06-07 11:15:58 +02:00
default
85011994e1
Also accept Update + Service messages.
2023-06-04 10:49:02 +02:00
default
0d817340e2
If a user config field 'bot' is set to true, identies as such.
2023-06-04 10:48:03 +02:00
default
3a8005f9bf
Updated some data types.
2023-06-04 10:34:39 +02:00
default
13ab8c73e5
More notify tweaks (I'm getting sick of this).
2023-06-02 11:48:43 +02:00
default
84152d67f5
Fixed bug in notify() (the poll id was not set).
2023-06-02 10:58:49 +02:00
default
b0337f55b5
Fixed bug in vote discarding in notify().
2023-06-02 10:52:12 +02:00
default
e66b3ff8da
Disallow empty or repeated options in msg_question().
2023-06-01 17:14:50 +02:00
default
af88b78478
Fixed typo in notify().
2023-06-01 17:00:17 +02:00
default
e87d5b7e20
Another tweak in notify().
2023-06-01 10:45:06 +02:00
default
344356e488
Fixed notification bug.
2023-06-01 10:37:12 +02:00
default
d6aa3d3c55
More poll notify tweaks.
2023-06-01 08:44:27 +02:00
default
91ed98df0d
Always notify about our own closed polls.
2023-05-31 22:12:44 +02:00
default
c55a2e4d13
Don't notify about closed polls that we didn't vote for.
2023-05-31 22:10:45 +02:00
default
6c2ca0d40a
Don't store votes in the notification area.
2023-05-30 18:51:53 +02:00
default
dc9d6520ee
Add ended polls to the notification area.
2023-05-30 14:52:18 +02:00
default
0444b77da5
Made msg_question() non-editable.
2023-05-30 10:38:17 +02:00
default
32f31e490b
Log when a poll is closed.
2023-05-30 06:12:10 +02:00
default
29eb3146f0
Added some limits to poll options.
2023-05-30 06:00:11 +02:00
default
be39b52064
Create the base message of msg_question() from msg_note().
2023-05-30 05:54:45 +02:00
default
7659362448
Enqueue a close_question user q_item.
2023-05-29 11:07:38 +02:00
default
05ac2a062d
Keep the original question order after updates.
2023-05-29 10:20:45 +02:00
default
d7b74574ad
update_question() also updates the count of voters.
2023-05-29 10:11:14 +02:00
default
aea0ea4416
In update_question(), send the updated question to all voters.
2023-05-29 09:37:54 +02:00
default
60ea9b3a09
Disallow updating closed polls.
2023-05-29 09:20:37 +02:00
default
32ce1fb28e
Close the question over due date in update_question().
2023-05-29 09:12:19 +02:00
default
654e171b93
New macro ISO_DATE_SPEC.
2023-05-29 09:07:27 +02:00
default
e913d03f02
Fixed some bugs in update_question().
2023-05-29 09:03:00 +02:00
default
8551c691fb
New function update_question().
2023-05-29 08:27:16 +02:00
default
bf96512296
Added the 'replies' dict to each question.
2023-05-29 08:00:43 +02:00
default
e75b76da7c
Tweaked log message.
2023-05-24 13:49:34 +02:00
default
0d8a040d90
Added some experimental 'Question' posting code.
2023-05-24 11:49:16 +02:00
default
9bc4825507
New function msg_question() (unused).
2023-05-24 11:07:47 +02:00
default
50fe76edd2
Call timeline_touch() on successful 'Update' messages.
2023-05-24 10:46:54 +02:00
default
a73636f671
Questions (polls) are now stored (but not yet shown).
2023-05-24 09:43:11 +02:00
default
49362f5404
Convert image links in notes to attachments.
2023-05-21 20:32:23 +02:00
default
f136426a25
Minor refactor to msg_note().
2023-05-21 20:12:59 +02:00
default
d055b63a0d
More image tweaks.
2023-05-20 19:33:57 +02:00
default
a597eb7352
Improved default avatars.
2023-05-20 19:25:52 +02:00
default
93d1649ba6
New config option 'drop_dm_from_unknown'.
2023-05-17 11:24:47 +02:00
default
b5eaabe77e
When updating the user info, also spam the following list.
2023-05-17 10:49:46 +02:00
default
970ad7a540
Got rid of xs_encdec.h.
2023-05-17 10:08:57 +02:00
default
24f802be7e
Use a different approach towards incomplete mentions.
...
This time, incomplete mentions are completed using a) the host of
the first mention, if there are any, or b) the current host.
2023-05-12 19:01:53 +02:00
default
d35c949a13
Resolve (partially) the issue with mentions without server.
...
Mastodon (mainly from the API) usually include mentions without server,
which is just stupid. This patch tries to resolve these broken mentions in
process_tags() by looking for a user name starting with it in the already
pre-populated tag list. As of now, this only works if the message is an
inReplyTo and the broken mention is the one of the original
(attributedTo) poster.
2023-05-12 11:56:17 +02:00
default
2e27a805fc
Minor refactor to msg_note(): the tag list is created here, not in process_tags().
2023-05-12 10:33:59 +02:00
default
3d4bf235f0
Minor function prototype tweak.
2023-05-12 10:15:44 +02:00
poesty
e65760a349
Merge pull request 'master' ( #1 ) from grunfink/snac2:master into master
...
Reviewed-on: https://codeberg.org/poesty/snac2/pulls/1
2023-05-07 07:27:24 +00:00
poesty
7d3a909598
Fixed webfinger and curl issues
2023-05-07 13:42:47 +08:00
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