From 66074a54728c579d266c8c1bf3c612b35478ab4f Mon Sep 17 00:00:00 2001 From: Alec Murphy Date: Fri, 21 Feb 2025 18:10:25 -0500 Subject: [PATCH] Everywhere: Use session->path() --- Slon/Api/V1/Notifications.HC | 2 +- Slon/Endpoints/Delete/Statuses.HC | 2 +- Slon/Endpoints/Get/Accounts.HC | 2 +- Slon/Endpoints/Get/ActivityPub.HC | 2 +- Slon/Endpoints/Get/Blocks.HC | 2 +- Slon/Endpoints/Get/Bookmarks.HC | 2 +- Slon/Endpoints/Get/Conversations.HC | 2 +- Slon/Endpoints/Get/CustomEmojis.HC | 2 +- Slon/Endpoints/Get/Favourites.HC | 2 +- Slon/Endpoints/Get/Filters.HC | 4 ++-- Slon/Endpoints/Get/FollowRequests.HC | 2 +- Slon/Endpoints/Get/FollowedTags.HC | 2 +- Slon/Endpoints/Get/Instance.HC | 4 ++-- Slon/Endpoints/Get/NodeInfo.HC | 2 +- Slon/Endpoints/Get/Notifications.HC | 2 +- Slon/Endpoints/Get/OAuth.HC | 4 ++-- Slon/Endpoints/Get/Search.HC | 2 +- Slon/Endpoints/Get/Suggestions.HC | 2 +- Slon/Endpoints/Get/Timelines.HC | 2 +- Slon/Endpoints/Get/Web.HC | 10 +++++----- Slon/Endpoints/Get/WellKnown.HC | 8 ++++---- Slon/Endpoints/Patch/Accounts.HC | 2 +- Slon/Endpoints/Post/Accounts.HC | 2 +- Slon/Endpoints/Post/ActivityPub.HC | 2 +- Slon/Endpoints/Post/Apps.HC | 2 +- Slon/Endpoints/Post/OAuth.HC | 2 +- Slon/Endpoints/Post/Statuses.HC | 2 +- Slon/Http/AdminServer.HC | 14 +++++++------- Slon/Http/LocalServer.HC | 2 +- Slon/Modules/ActivityPub.HC | 4 ++-- Slon/Modules/Web.HC | 2 +- 31 files changed, 48 insertions(+), 48 deletions(-) diff --git a/Slon/Api/V1/Notifications.HC b/Slon/Api/V1/Notifications.HC index f7a43ef..6e4327c 100644 --- a/Slon/Api/V1/Notifications.HC +++ b/Slon/Api/V1/Notifications.HC @@ -5,7 +5,7 @@ U0 @slon_api_v1_notifications_get(SlonHttpSession* session) if (@slon_api_authorized(session)) { // SLON_AUTH_ACCOUNT_ID // FIXME: Implement this - if (String.EndsWith("policy", @slon_http_request_path(session))) { + if (String.EndsWith("policy", session->path())) { session->send(SLON_EMPTY_JSON_OBJECT); } else { session->send(SLON_EMPTY_JSON_ARRAY); diff --git a/Slon/Endpoints/Delete/Statuses.HC b/Slon/Endpoints/Delete/Statuses.HC index 51f7cd5..7eb4770 100644 --- a/Slon/Endpoints/Delete/Statuses.HC +++ b/Slon/Endpoints/Delete/Statuses.HC @@ -1,4 +1,4 @@ -if (String.BeginsWith("/api/v1/statuses", @slon_http_request_path(session))) { +if (String.BeginsWith("/api/v1/statuses", session->path())) { @slon_api_v1_statuses_delete(session); return; } diff --git a/Slon/Endpoints/Get/Accounts.HC b/Slon/Endpoints/Get/Accounts.HC index e46f9ed..3e3273a 100644 --- a/Slon/Endpoints/Get/Accounts.HC +++ b/Slon/Endpoints/Get/Accounts.HC @@ -1,4 +1,4 @@ -if (String.BeginsWith("/api/v1/accounts", @slon_http_request_path(session))) { +if (String.BeginsWith("/api/v1/accounts", session->path())) { @slon_api_v1_accounts_get(session); return; } diff --git a/Slon/Endpoints/Get/ActivityPub.HC b/Slon/Endpoints/Get/ActivityPub.HC index 110c7bf..582e506 100644 --- a/Slon/Endpoints/Get/ActivityPub.HC +++ b/Slon/Endpoints/Get/ActivityPub.HC @@ -1,4 +1,4 @@ -if (String.BeginsWith("/users/", @slon_http_request_path(session)) && String.EndsWith("json", session->header("accept"))) { +if (String.BeginsWith("/users/", session->path()) && String.EndsWith("json", session->header("accept"))) { @slon_activitypub_users_get(session); return; } diff --git a/Slon/Endpoints/Get/Blocks.HC b/Slon/Endpoints/Get/Blocks.HC index 3474c2e..b3ec6cb 100644 --- a/Slon/Endpoints/Get/Blocks.HC +++ b/Slon/Endpoints/Get/Blocks.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/api/v1/blocks", @slon_http_request_path(session))) { +if (!StrICmp("/api/v1/blocks", session->path())) { @slon_api_v1_blocks_get(session); return; } diff --git a/Slon/Endpoints/Get/Bookmarks.HC b/Slon/Endpoints/Get/Bookmarks.HC index 0fdd9b5..b27b16b 100644 --- a/Slon/Endpoints/Get/Bookmarks.HC +++ b/Slon/Endpoints/Get/Bookmarks.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/api/v1/bookmarks", @slon_http_request_path(session))) { +if (!StrICmp("/api/v1/bookmarks", session->path())) { @slon_api_v1_bookmarks_get(session); return; } diff --git a/Slon/Endpoints/Get/Conversations.HC b/Slon/Endpoints/Get/Conversations.HC index 1333d27..f8822f2 100644 --- a/Slon/Endpoints/Get/Conversations.HC +++ b/Slon/Endpoints/Get/Conversations.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/api/v1/conversations", @slon_http_request_path(session))) { +if (!StrICmp("/api/v1/conversations", session->path())) { @slon_api_v1_conversations_get(session); return; } diff --git a/Slon/Endpoints/Get/CustomEmojis.HC b/Slon/Endpoints/Get/CustomEmojis.HC index 08d2285..f75ba42 100644 --- a/Slon/Endpoints/Get/CustomEmojis.HC +++ b/Slon/Endpoints/Get/CustomEmojis.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/api/v1/custom_emojis", @slon_http_request_path(session))) { +if (!StrICmp("/api/v1/custom_emojis", session->path())) { @slon_api_v1_custom_emojis_get(session); return; } diff --git a/Slon/Endpoints/Get/Favourites.HC b/Slon/Endpoints/Get/Favourites.HC index 722221e..f747b56 100644 --- a/Slon/Endpoints/Get/Favourites.HC +++ b/Slon/Endpoints/Get/Favourites.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/api/v1/favourites", @slon_http_request_path(session))) { +if (!StrICmp("/api/v1/favourites", session->path())) { @slon_api_v1_favourites_get(session); return; } diff --git a/Slon/Endpoints/Get/Filters.HC b/Slon/Endpoints/Get/Filters.HC index 2418420..5fcf831 100644 --- a/Slon/Endpoints/Get/Filters.HC +++ b/Slon/Endpoints/Get/Filters.HC @@ -1,9 +1,9 @@ -if (!StrICmp("/api/v1/filters", @slon_http_request_path(session))) { +if (!StrICmp("/api/v1/filters", session->path())) { @slon_api_v1_filters_get(session); return; } -if (!StrICmp("/api/v2/filters", @slon_http_request_path(session))) { +if (!StrICmp("/api/v2/filters", session->path())) { @slon_api_v2_filters_get(session); return; } diff --git a/Slon/Endpoints/Get/FollowRequests.HC b/Slon/Endpoints/Get/FollowRequests.HC index 79de6eb..14c81a9 100644 --- a/Slon/Endpoints/Get/FollowRequests.HC +++ b/Slon/Endpoints/Get/FollowRequests.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/api/v1/follow_requests", @slon_http_request_path(session))) { +if (!StrICmp("/api/v1/follow_requests", session->path())) { @slon_api_v1_follow_requests_get(session); return; } diff --git a/Slon/Endpoints/Get/FollowedTags.HC b/Slon/Endpoints/Get/FollowedTags.HC index 28b7cad..8b8657c 100644 --- a/Slon/Endpoints/Get/FollowedTags.HC +++ b/Slon/Endpoints/Get/FollowedTags.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/api/v1/followed_tags", @slon_http_request_path(session))) { +if (!StrICmp("/api/v1/followed_tags", session->path())) { @slon_api_v1_followed_tags_get(session); return; } diff --git a/Slon/Endpoints/Get/Instance.HC b/Slon/Endpoints/Get/Instance.HC index 0974d73..da945b6 100644 --- a/Slon/Endpoints/Get/Instance.HC +++ b/Slon/Endpoints/Get/Instance.HC @@ -1,9 +1,9 @@ -if (!StrICmp("/api/v1/instance", @slon_http_request_path(session))) { +if (!StrICmp("/api/v1/instance", session->path())) { session->send(db->o("instance")); return; } -if (!StrICmp("/api/v2/instance", @slon_http_request_path(session))) { +if (!StrICmp("/api/v2/instance", session->path())) { @slon_api_v2_instance_get(session); return; } diff --git a/Slon/Endpoints/Get/NodeInfo.HC b/Slon/Endpoints/Get/NodeInfo.HC index 3492114..24fdb28 100644 --- a/Slon/Endpoints/Get/NodeInfo.HC +++ b/Slon/Endpoints/Get/NodeInfo.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/nodeinfo/2.0", @slon_http_request_path(session))) { +if (!StrICmp("/nodeinfo/2.0", session->path())) { @slon_nodeinfo_20(session); return; } diff --git a/Slon/Endpoints/Get/Notifications.HC b/Slon/Endpoints/Get/Notifications.HC index 687e193..d894df9 100644 --- a/Slon/Endpoints/Get/Notifications.HC +++ b/Slon/Endpoints/Get/Notifications.HC @@ -1,4 +1,4 @@ -if (String.BeginsWith("/api/v1/notifications", @slon_http_request_path(session))) { +if (String.BeginsWith("/api/v1/notifications", session->path())) { @slon_api_v1_notifications_get(session); return; } diff --git a/Slon/Endpoints/Get/OAuth.HC b/Slon/Endpoints/Get/OAuth.HC index 46b65f1..6f114e0 100644 --- a/Slon/Endpoints/Get/OAuth.HC +++ b/Slon/Endpoints/Get/OAuth.HC @@ -1,9 +1,9 @@ -if (!StrICmp("/oauth/authorize", @slon_http_request_path(session))) { +if (!StrICmp("/oauth/authorize", session->path())) { @slon_http_send_html_file(session, "M:/Slon/Static/oauth/authorize.html"); return; } -if (!StrICmp("/oauth/verify_access", @slon_http_request_path(session))) { +if (!StrICmp("/oauth/verify_access", session->path())) { @slon_oauth_verify_access_get(session); return; } diff --git a/Slon/Endpoints/Get/Search.HC b/Slon/Endpoints/Get/Search.HC index e5e6cd7..e812205 100644 --- a/Slon/Endpoints/Get/Search.HC +++ b/Slon/Endpoints/Get/Search.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/api/v2/search", @slon_http_request_path(session))) { +if (!StrICmp("/api/v2/search", session->path())) { @slon_api_v2_search_get(session); return; } diff --git a/Slon/Endpoints/Get/Suggestions.HC b/Slon/Endpoints/Get/Suggestions.HC index 44d465e..1fb647d 100644 --- a/Slon/Endpoints/Get/Suggestions.HC +++ b/Slon/Endpoints/Get/Suggestions.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/api/v2/suggestions", @slon_http_request_path(session))) { +if (!StrICmp("/api/v2/suggestions", session->path())) { @slon_api_v2_suggestions_get(session); return; } diff --git a/Slon/Endpoints/Get/Timelines.HC b/Slon/Endpoints/Get/Timelines.HC index 5fc6f85..3b03601 100644 --- a/Slon/Endpoints/Get/Timelines.HC +++ b/Slon/Endpoints/Get/Timelines.HC @@ -1,4 +1,4 @@ -if (String.BeginsWith("/api/v1/timelines", @slon_http_request_path(session))) { +if (String.BeginsWith("/api/v1/timelines", session->path())) { @slon_api_v1_timelines_get(session); return; } diff --git a/Slon/Endpoints/Get/Web.HC b/Slon/Endpoints/Get/Web.HC index 3231a0e..489e889 100644 --- a/Slon/Endpoints/Get/Web.HC +++ b/Slon/Endpoints/Get/Web.HC @@ -1,28 +1,28 @@ -if (String.EndsWith(".css", @slon_http_request_path(session))) { +if (String.EndsWith(".css", session->path())) { session->content_type("text/css"); @slon_http_send_file(session, "M:/Slon/Static/css/main.css"); return; } -if (!StrICmp("/js/header.js", @slon_http_request_path(session))) { +if (!StrICmp("/js/header.js", session->path())) { session->content_type("text/javascript"); @slon_http_send_file(session, "M:/Slon/Static/js/header.js"); return; } -if (String.EndsWith(".js", @slon_http_request_path(session))) { +if (String.EndsWith(".js", session->path())) { session->content_type("text/javascript"); @slon_http_send_file(session, "M:/Slon/Static/js/statuses.js"); return; } -if (!StrICmp("/alec.png", @slon_http_request_path(session))) { +if (!StrICmp("/alec.png", session->path())) { session->content_type("image/png"); @slon_http_send_file(session, "A:/avatar-circle-4bpp.png"); return; } -if (String.BeginsWith("/@", @slon_http_request_path(session))) { +if (String.BeginsWith("/@", session->path())) { @slon_web_user_get(session); return; } diff --git a/Slon/Endpoints/Get/WellKnown.HC b/Slon/Endpoints/Get/WellKnown.HC index 22a654c..df1f352 100644 --- a/Slon/Endpoints/Get/WellKnown.HC +++ b/Slon/Endpoints/Get/WellKnown.HC @@ -1,19 +1,19 @@ -if (!StrICmp("/.well-known/host-meta", @slon_http_request_path(session))) { +if (!StrICmp("/.well-known/host-meta", session->path())) { @slon_host_meta(session); return; } -if (!StrICmp("/.well-known/nodeinfo", @slon_http_request_path(session))) { +if (!StrICmp("/.well-known/nodeinfo", session->path())) { @slon_nodeinfo(session); return; } -if (!StrICmp("/.well-known/oauth-authorization-server", @slon_http_request_path(session))) { +if (!StrICmp("/.well-known/oauth-authorization-server", session->path())) { @slon_oauth_well_known(session); return; } -if (!StrICmp("/.well-known/webfinger", @slon_http_request_path(session))) { +if (!StrICmp("/.well-known/webfinger", session->path())) { @slon_webfinger(session); return; } diff --git a/Slon/Endpoints/Patch/Accounts.HC b/Slon/Endpoints/Patch/Accounts.HC index d98880b..d082c4a 100644 --- a/Slon/Endpoints/Patch/Accounts.HC +++ b/Slon/Endpoints/Patch/Accounts.HC @@ -1,4 +1,4 @@ -if (String.BeginsWith("/api/v1/accounts", @slon_http_request_path(session))) { +if (String.BeginsWith("/api/v1/accounts", session->path())) { @slon_api_v1_accounts_patch(session); return; } diff --git a/Slon/Endpoints/Post/Accounts.HC b/Slon/Endpoints/Post/Accounts.HC index c5a708d..1704522 100644 --- a/Slon/Endpoints/Post/Accounts.HC +++ b/Slon/Endpoints/Post/Accounts.HC @@ -1,4 +1,4 @@ -if (String.BeginsWith("/api/v1/accounts", @slon_http_request_path(session))) { +if (String.BeginsWith("/api/v1/accounts", session->path())) { @slon_api_v1_accounts_post(session); return; } diff --git a/Slon/Endpoints/Post/ActivityPub.HC b/Slon/Endpoints/Post/ActivityPub.HC index a9a4b82..78b9817 100644 --- a/Slon/Endpoints/Post/ActivityPub.HC +++ b/Slon/Endpoints/Post/ActivityPub.HC @@ -1,4 +1,4 @@ -if (String.BeginsWith("/users/", @slon_http_request_path(session))) { +if (String.BeginsWith("/users/", session->path())) { @slon_activitypub_users_post(session); return; } diff --git a/Slon/Endpoints/Post/Apps.HC b/Slon/Endpoints/Post/Apps.HC index d26a96e..aa70481 100644 --- a/Slon/Endpoints/Post/Apps.HC +++ b/Slon/Endpoints/Post/Apps.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/api/v1/apps", @slon_http_request_path(session))) { +if (!StrICmp("/api/v1/apps", session->path())) { @slon_api_v1_apps_post(session); return; } diff --git a/Slon/Endpoints/Post/OAuth.HC b/Slon/Endpoints/Post/OAuth.HC index aa1960c..336ab6f 100644 --- a/Slon/Endpoints/Post/OAuth.HC +++ b/Slon/Endpoints/Post/OAuth.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/oauth/token", @slon_http_request_path(session))) { +if (!StrICmp("/oauth/token", session->path())) { @slon_oauth_token_post(session); return; } diff --git a/Slon/Endpoints/Post/Statuses.HC b/Slon/Endpoints/Post/Statuses.HC index 0c3ebfe..7f2489e 100644 --- a/Slon/Endpoints/Post/Statuses.HC +++ b/Slon/Endpoints/Post/Statuses.HC @@ -1,4 +1,4 @@ -if (!StrICmp("/api/v1/statuses", @slon_http_request_path(session))) { +if (!StrICmp("/api/v1/statuses", session->path())) { @slon_api_v1_statuses_post(session); return; } diff --git a/Slon/Http/AdminServer.HC b/Slon/Http/AdminServer.HC index 1c1ab94..07313c5 100644 --- a/Slon/Http/AdminServer.HC +++ b/Slon/Http/AdminServer.HC @@ -283,7 +283,7 @@ U0 @slon_admin_info_stats(SlonHttpSession* session) U0 @slon_admin_server_get(SlonHttpSession* session) { if (!db->@("setup")) { - if (StrICmp("/", @slon_http_request_path(session))) { + if (StrICmp("/", session->path())) { session->status(302); session->header("Location", "/"); } else { @@ -292,22 +292,22 @@ U0 @slon_admin_server_get(SlonHttpSession* session) return; } - if (!StrICmp("/info/stats", @slon_http_request_path(session))) { + if (!StrICmp("/info/stats", session->path())) { @slon_admin_info_stats(session); return; } - if (!StrICmp("/delete/account", @slon_http_request_path(session))) { + if (!StrICmp("/delete/account", session->path())) { @slon_admin_delete_account(session); return; } - if (!StrICmp("/manage/accounts", @slon_http_request_path(session))) { + if (!StrICmp("/manage/accounts", session->path())) { @slon_admin_manage_accounts(session); return; } - if (!StrICmp("/", @slon_http_request_path(session))) { + if (!StrICmp("/", session->path())) { @slon_http_send_html_file(session, "M:/Slon/Static/html/admin/main.html"); return; } @@ -339,12 +339,12 @@ U0 @slon_admin_server_post(SlonHttpSession* session) @slon_http_parse_request_as_json(session); } - if (!StrICmp("/setup/instance", @slon_http_request_path(session))) { + if (!StrICmp("/setup/instance", session->path())) { @slon_admin_setup_instance(session); return; } - if (!StrICmp("/new/account", @slon_http_request_path(session))) { + if (!StrICmp("/new/account", session->path())) { @slon_admin_new_account(session); return; } diff --git a/Slon/Http/LocalServer.HC b/Slon/Http/LocalServer.HC index e0527bf..6854dd4 100644 --- a/Slon/Http/LocalServer.HC +++ b/Slon/Http/LocalServer.HC @@ -123,7 +123,7 @@ U0 @slon_local_server_get(SlonHttpSession* session) SLON_SCRATCH_BUFFER_AND_REQUEST_JSON no_warn request_json; - U8* path = @slon_http_request_path(session); + U8* path = session->path(); if (!path || !StrLen(path) || StrFind(":", path) > 0) { @slon_local_server_not_found(session); diff --git a/Slon/Modules/ActivityPub.HC b/Slon/Modules/ActivityPub.HC index e1e7081..5a5400d 100644 --- a/Slon/Modules/ActivityPub.HC +++ b/Slon/Modules/ActivityPub.HC @@ -196,7 +196,7 @@ Bool @slon_activitypub_http_signature_is_valid(SlonHttpSession* session) ++i; } sig_string_alloc_length += StrLen(session->verb(1)); - sig_string_alloc_length += StrLen(@slon_http_request_path(session)); + sig_string_alloc_length += StrLen(session->path()); sig_string_alloc_length *= 2; // Construct our signature string @@ -207,7 +207,7 @@ Bool @slon_activitypub_http_signature_is_valid(SlonHttpSession* session) headers_split[i][0] += 'a' - headers_split[i][0]; } if (!StrCmp("(request-target)", headers_split[i])) { - String.Append(sig_string, "(request-target): %s %s", "post", @slon_http_request_path(session)); + String.Append(sig_string, "(request-target): %s %s", "post", session->path()); } else { String.Append(sig_string, "%s: %s", headers_split[i], session->header(headers_split[i])); } diff --git a/Slon/Modules/Web.HC b/Slon/Modules/Web.HC index dba79b2..c0b683b 100644 --- a/Slon/Modules/Web.HC +++ b/Slon/Modules/Web.HC @@ -4,7 +4,7 @@ U0 @slon_web_user_get(SlonHttpSession* session) no_warn scratch_buffer, request_json; I64 path_segments_count = 0; - U8** path_segments = String.Split(StrFind("@", @slon_http_request_path(session)) + 1, '/', &path_segments_count); + U8** path_segments = String.Split(StrFind("@", session->path()) + 1, '/', &path_segments_count); U8* user = path_segments[0];