mirror of
https://akkoma.dev/AkkomaGang/akkoma.git
synced 2024-12-18 15:58:30 +00:00
Remove support for outdated Create format
This commit is contained in:
parent
d2b0d86471
commit
1fa3c0b485
|
@ -293,33 +293,12 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubController do
|
||||||
|> json("Invalid HTTP Signature")
|
|> json("Invalid HTTP Signature")
|
||||||
end
|
end
|
||||||
|
|
||||||
# POST /relay/inbox -or- POST /internal/fetch/inbox
|
|
||||||
def inbox(conn, %{"type" => "Create"} = params) do
|
|
||||||
if FederatingPlug.federating?() do
|
|
||||||
post_inbox_relayed_create(conn, params)
|
|
||||||
else
|
|
||||||
conn
|
|
||||||
|> put_status(:bad_request)
|
|
||||||
|> json("Not federating")
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def inbox(conn, _params) do
|
def inbox(conn, _params) do
|
||||||
conn
|
conn
|
||||||
|> put_status(:bad_request)
|
|> put_status(:bad_request)
|
||||||
|> json("error, missing HTTP Signature")
|
|> json("error, missing HTTP Signature")
|
||||||
end
|
end
|
||||||
|
|
||||||
defp post_inbox_relayed_create(conn, params) do
|
|
||||||
Logger.debug(
|
|
||||||
"Signature missing or not from author, relayed Create message, fetching object from source"
|
|
||||||
)
|
|
||||||
|
|
||||||
Fetcher.fetch_object_from_id(params["object"]["id"])
|
|
||||||
|
|
||||||
json(conn, "ok")
|
|
||||||
end
|
|
||||||
|
|
||||||
defp represent_service_actor(%User{} = user, conn) do
|
defp represent_service_actor(%User{} = user, conn) do
|
||||||
conn
|
conn
|
||||||
|> put_resp_content_type("application/activity+json")
|
|> put_resp_content_type("application/activity+json")
|
||||||
|
|
|
@ -662,35 +662,6 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubControllerTest do
|
||||||
assert_receive {:mix_shell, :info, ["https://relay.mastodon.host/actor"]}
|
assert_receive {:mix_shell, :info, ["https://relay.mastodon.host/actor"]}
|
||||||
end
|
end
|
||||||
|
|
||||||
@tag capture_log: true
|
|
||||||
test "without valid signature, " <>
|
|
||||||
"it only accepts Create activities and requires enabled federation",
|
|
||||||
%{conn: conn} do
|
|
||||||
data = File.read!("test/fixtures/mastodon-post-activity.json") |> Jason.decode!()
|
|
||||||
non_create_data = File.read!("test/fixtures/mastodon-announce.json") |> Jason.decode!()
|
|
||||||
|
|
||||||
conn = put_req_header(conn, "content-type", "application/activity+json")
|
|
||||||
|
|
||||||
clear_config([:instance, :federating], false)
|
|
||||||
|
|
||||||
conn
|
|
||||||
|> post("/inbox", data)
|
|
||||||
|> json_response(403)
|
|
||||||
|
|
||||||
conn
|
|
||||||
|> post("/inbox", non_create_data)
|
|
||||||
|> json_response(403)
|
|
||||||
|
|
||||||
clear_config([:instance, :federating], true)
|
|
||||||
|
|
||||||
ret_conn = post(conn, "/inbox", data)
|
|
||||||
assert "ok" == json_response(ret_conn, 200)
|
|
||||||
|
|
||||||
conn
|
|
||||||
|> post("/inbox", non_create_data)
|
|
||||||
|> json_response(400)
|
|
||||||
end
|
|
||||||
|
|
||||||
test "accepts Add/Remove activities", %{conn: conn} do
|
test "accepts Add/Remove activities", %{conn: conn} do
|
||||||
object_id = "c61d6733-e256-4fe1-ab13-1e369789423f"
|
object_id = "c61d6733-e256-4fe1-ab13-1e369789423f"
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue