Commit Graph

269 Commits

Author SHA1 Message Date
default
3e1944abbf Deleted repeated code. 2023-05-15 11:38:29 +02:00
default
40fa322c54 mastoapi_account() returns the acct field as user@host. 2023-05-15 11:36:09 +02:00
default
bcf267075d Made mastoapi account search case-insensitive. 2023-05-15 11:28:59 +02:00
default
bd8886f8a6 Don't repeat accounts when searching. 2023-05-15 11:23:36 +02:00
default
e9588a71ae Add /v1/account/search support. 2023-05-15 11:15:28 +02:00
default
bdb1ce3fdf Added more comment marks. 2023-05-12 13:06:38 +02:00
default
5325da02e6 Added some code comments. 2023-05-12 12:29:24 +02:00
default
6d82dde0c5 Added support from exclude notification types. 2023-05-11 10:54:56 +02:00
default
2a073116d3 In /relationship, the id[] can be a list. 2023-05-11 10:44:27 +02:00
default
de12b8d0a2 Fill the mastoapi instance contact_account field, if possible. 2023-05-08 10:13:43 +02:00
default
e2e7bc2d71 Added a source (web, mastoapi, etc) to lastlog_write(). 2023-05-08 09:02:45 +02:00
default
eed24fde1a Fixed a bug in Tusky's image send. 2023-05-06 11:10:08 +02:00
default
212d1350fe Fixed mastoapi debug levels. 2023-05-04 11:53:17 +02:00
default
ec6f94e27e New url /oauth/x-snac-get-token. 2023-05-04 11:52:04 +02:00
default
f6ef275fa3 Made the post action configurable in login_page. 2023-05-04 11:08:35 +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
a9f0f2f695 Avoid crash in optional mastoapi argument. 2023-05-04 06:27:13 +02:00
default
0bd609f5be Fixed missing notifications in certain circunstancies. 2023-05-03 07:57:10 +02:00
default
be5f08e6c3 Use xs_replace_n() where it suits. 2023-05-02 06:49:00 +02:00
default
4595a36859 Partial support for mastoapi unfavourite / unreblog. 2023-05-01 17:20:49 +02:00
default
a7d4513f77 In /api/v1/statuses, get the object from the storage instead of from the timeline.
This was affecting clicking on posts from the instance timeline, that were not
in the logged-in user timeline.
2023-05-01 07:35:26 +02:00
default
cfa0df3ac5 The instance timeline now works. 2023-04-30 07:00:49 +02:00
default
ede4d6f2dc Some instance timeline work. 2023-04-30 06:39:55 +02:00
default
d0e08277da Incomplete mastoapi apps are purged. 2023-04-28 08:58:33 +02:00
default
765f63772f New function mastoapi_purge() (still dummy). 2023-04-28 08:33:02 +02:00
default
b620fe99fa Ensure the new app client_id is unique. 2023-04-28 08:28:17 +02:00
default
a28d717da5 Hide hidden posts from timelines. 2023-04-27 08:35:23 +02:00
default
dd4ba7969f Fixed video attachments. 2023-04-26 21:07:00 +02:00
default
9bb08cfd51 Fixed crash in mastoapi search. 2023-04-26 17:37:33 +02:00
default
e2ef581e84 Update lastlog.txt everytime a Bearer token is validated. 2023-04-26 06:37:37 +02:00
default
b8eace33c9 Store the what-is-snac URL as a CPP constant. 2023-04-25 06:40:46 +02:00
default
3fb91ea25a Skip muted morons from timelines and statuses. 2023-04-24 17:49:08 +02:00
default
b6da5b7bb3 Added emojis to mastoapi_account(). 2023-04-24 17:37:59 +02:00
default
f625d88426 Added custom emojis to Statuses. 2023-04-24 17:25:32 +02:00
default
9456a57954 Added the hashtag list to mastoapi_status().
What is this for?
2023-04-24 17:11:12 +02:00
default
cfca2adcb9 Added mentions to mastoapi_status(). 2023-04-24 17:05:34 +02:00
default
3d20adc840 Added some more Instance values. 2023-04-24 16:35:45 +02:00
default
415381831e Added snac limits (no real limits) to the Instance object. 2023-04-24 16:29:21 +02:00
default
997b17d854 Moved JSON output validation to httpd.c. 2023-04-23 15:37:09 +02:00
default
177bf03e10 Fixed bad JSON for accounts that do not have a 'summary' field. 2023-04-23 15:23:20 +02:00
default
04ba2818cb Fixed a bug in the instance timeline. 2023-04-23 14:50:54 +02:00
default
8d4d702da9 Added an instance timeline. 2023-04-23 09:41:43 +02:00
default
82cd5fda7a Don't return that much entries in the mastoapi timeline. 2023-04-23 09:21:18 +02:00
default
4fca7c8a7e Added mastoapi unfollow. 2023-04-23 08:51:02 +02:00
default
291f251ced Added mastoapi follow. 2023-04-23 08:44:26 +02:00
default
88850bdc46 Attend mastoapi relationships.
Now, the follow/unfollow buttons appear on each account's page.
2023-04-23 06:05:35 +02:00
default
5b93e9069e Added mastoapi code for account search. 2023-04-23 05:33:54 +02:00
default
8804227798 New function mastoapi_put_handler(). 2023-04-22 01:21:09 +02:00
default
66d5acc822 Use static_get_meta() when preparing the attachment. 2023-04-22 00:51:06 +02:00
default
73e7195e6c Added mastoapi support for adding images. 2023-04-22 00:17:42 +02:00
default
526d4e8abb Added a new compilation variable NO_MASTODON_API.
The Mastodon API is a big and ugly beast; if you don't want
it in your snac, you can compile it out by running

make CFLAGS=-DNO_MASTODON_API

And your snac binary will be as slim as always.
2023-04-21 23:17:58 +02:00
default
46f23ec85e Commented out more debugging code. 2023-04-20 18:45:39 +02:00
default
46bf844f1c Commented out test code. 2023-04-20 18:43:57 +02:00
default
04e61ea475 More complete mastodon api instance object.
But Megalodon keeps crashing.
2023-04-20 18:37:09 +02:00
default
350a489bd0 Deleted debug code. 2023-04-20 17:59:35 +02:00
default
76445d157a Use server.json "admin_email" in mastoapi instance object. 2023-04-20 17:59:09 +02:00
default
3ccf4e3759 arc4random() does not exist in not-so-old systems, so revert this.
Revert "Replaced random() with arc4random()."

This reverts commit f658f345ca.
2023-04-16 20:27:38 +02:00
default
f658f345ca Replaced random() with arc4random(). 2023-04-16 20:19:25 +02:00
default
8205159f8c Replaced strcpy() with strncpy().
To shut up some compiler whining.
2023-04-16 20:12:44 +02:00
default
52e3d6032c Also accept /api/v2 urls. 2023-04-16 08:13:45 +02:00
default
0240c871f3 New function user_open_by_md5(). 2023-04-16 07:43:41 +02:00
default
2ec58144ba Temporary fix to this account show error. 2023-04-16 07:34:26 +02:00
default
cc48f25e98 Return context ancestors in the right order. 2023-04-16 07:17:16 +02:00
default
604c1f0bce Fixed use-after-free in reply messages. 2023-04-16 07:12:57 +02:00
default
fd0440dd75 Don't strip the api version in mastoapi post handler. 2023-04-16 06:41:13 +02:00
default
81100cb825 Posts can now be sent (still no images). 2023-04-15 19:05:26 +02:00
default
5ec593da2c Force failure in Mastodon API before it gets to a crash-on-startup situation. 2023-04-15 18:14:24 +02:00
default
512058bbc5 Added entrypoint /push/subscription.
The returned object is just wild guessing, I don't understand all
this things. Anyway, the offical app keeps crashing.
2023-04-15 18:06:18 +02:00
default
95d90e5475 Added some more dummy entry points. 2023-04-15 16:40:48 +02:00
default
84077aa9eb Added the 'header' field to verify_credentials.
Megalodon accepted, but now crashes on input.
2023-04-15 09:52:48 +02:00
default
ec51d59e24 Some fixes to allow Megalodon to work.
The instance object was wrong and the oauth args can appear as JSON.
2023-04-15 09:44:09 +02:00
default
9e7a77c10f New mastoapi to clear all notifications. 2023-04-14 19:39:31 +02:00
default
cb616d6eb5 New notifications web page. 2023-04-14 12:23:32 +02:00
default
35c611b8b9 Fixed crash in notification list. 2023-04-14 08:37:33 +02:00
default
815c39d0c6 Added a dummy 'created_at' field for accounts that don't have a date.
This avoid a crash in Tusky.
2023-04-14 08:14:11 +02:00
default
51208b10c1 Implemented mastoapi notifications. 2023-04-13 17:56:00 +02:00
default
1a27e67ed9 New functions notify_get() and notify_list(). 2023-04-13 17:34:48 +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
225c45ddaf More log level tweaks. 2023-04-13 10:03:25 +02:00
default
a558ad803c Changed mastoapi log levels. 2023-04-13 09:59:00 +02:00
default
963f2cf79a Updated RELEASE_NOTES. 2023-04-13 06:38:05 +02:00
default
ff4cee0b5c The snac page has been renamed to what-is-snac. 2023-04-12 20:40:44 +02:00
default
ec48b8ef8c Relationships can only be queried if logged in. 2023-04-12 20:33:42 +02:00
default
bb61b04e66 Dummy /accounts/relationships. 2023-04-12 20:25:41 +02:00
default
e146c2afa8 Also return (some) information for non-local users. 2023-04-12 20:20:46 +02:00
default
0d4406e16c Added the mastodon account data. 2023-04-12 18:54:20 +02:00
default
668f69dca9 Added the mastodon personal timeline. 2023-04-12 18:44:15 +02:00
default
a2cab2bab6 Updated RELEASE_NOTES. 2023-04-12 15:43:06 +02:00
default
ed957b4646 Added support for like and boost lists. 2023-04-12 15:28:43 +02:00
default
8d9e4667b7 Added forgotten user cleanup in mastoapi_post_handler(). 2023-04-12 12:16:23 +02:00
default
885031bed9 Don't generate invalid JSON if an attachment has no description. 2023-04-12 10:41:15 +02:00
default
aa86357237 Use the ctime instead of the published date in mastoapi_id(). 2023-04-12 10:19:43 +02:00
default
889f3192dd Commented out debugging messages. 2023-04-11 21:11:33 +02:00
default
c0a48f1f4e Added support for likes and boosts. 2023-04-11 21:07:47 +02:00
default
036be9d02c Added some comments. 2023-04-11 20:16:12 +02:00
default
a7f3ba6027 Added many dummy lists. 2023-04-11 20:10:24 +02:00
default
df78584911 Added support for statuses/:id and statuses/:id/context. 2023-04-11 19:59:02 +02:00
default
a4051f7f37 Started work in /api/v1/statuses. 2023-04-11 11:00:06 +02:00
default
79224ca2b5 New function mastodon_status(). 2023-04-11 09:50:12 +02:00
default
7c9846ef3e Added /api/v1/instance. 2023-04-10 16:08:26 +02:00
default
9e9d740199 Added image attachments. 2023-04-10 13:22:59 +02:00
default
3fb651b7b1 Added some tweaks for AndStatus, that does some things different (still non-working).
AndStatus expects a 'state' field to be propagated and doesn't send
the 'client_secret' as a GET argument, but in a Basic authorization header.
2023-04-10 12:55:03 +02:00
default
1cfa00eaaf New function mastoapi_id(), that creates mostly-compatible Ids.
Most apps (all?) sort entries by status Id, so they must be time-sorted (somewhat).
2023-04-10 12:14:16 +02:00
default
862dafd066 Some timeline fixes. 2023-04-10 11:30:00 +02:00
default
ea49eba404 More mastoapi timeline work. 2023-04-10 10:23:14 +02:00
default
429be774d2 Also delete the app in token revokation. 2023-04-10 09:21:14 +02:00
default
578d70ddc0 More work in status entries. 2023-04-10 08:52:04 +02:00
default
a65f1911d4 Limit the number of entries returned using the max_id. 2023-04-10 00:40:48 +02:00
default
02a5006857 More mastoapi work. 2023-04-10 00:08:51 +02:00
default
ca89f8b846 Fixed avatar. 2023-04-09 22:10:49 +02:00
default
ccce01d285 More mastoapi work. 2023-04-09 21:31:56 +02:00
default
4ced03bac1 OAuth login now works. 2023-04-09 20:34:05 +02:00
default
752058bf66 More mastoapi work. 2023-04-08 10:29:33 +02:00
default
bbbce7afac The /oauth/authorize URL generates a login page. 2023-04-08 09:27:22 +02:00
default
4964a56456 More mastoapi work. 2023-04-08 09:09:43 +02:00
default
eba6987fd5 Added some OAuth scaffold code. 2023-04-08 07:04:40 +02:00
default
353e393f4d New file mastoapi.c. 2023-04-08 06:09:05 +02:00