diff options
| author | lambda <pleromagit@rogerbraun.net> | 2018-05-26 09:50:54 +0000 | 
|---|---|---|
| committer | lambda <pleromagit@rogerbraun.net> | 2018-05-26 09:50:54 +0000 | 
| commit | e1fe46e1cfccb7971032ecfa04426413f0c00ac6 (patch) | |
| tree | 7b8ed19a65cc2250a7f88ff36e7ee533e5c4907e | |
| parent | 5d6d86bf00fa533d505ffe5fc3df6c3eadae5739 (diff) | |
| parent | 1c926c7b60b999311d01266bb65187e1be5adc1e (diff) | |
| download | pleroma-e1fe46e1cfccb7971032ecfa04426413f0c00ac6.tar.gz pleroma-e1fe46e1cfccb7971032ecfa04426413f0c00ac6.zip | |
Merge branch 'feature/mastodon-s2s-block-opt-out' into 'develop'
activitypub: allow mastodon S2S block extension support to be disabled
See merge request pleroma/pleroma!176
| -rw-r--r-- | config/config.exs | 2 | ||||
| -rw-r--r-- | lib/pleroma/web/activity_pub/transmogrifier.ex | 9 | 
2 files changed, 9 insertions, 2 deletions
| diff --git a/config/config.exs b/config/config.exs index d3f9cf6e4..826dd07b7 100644 --- a/config/config.exs +++ b/config/config.exs @@ -56,6 +56,8 @@ config :pleroma, :instance,    rewrite_policy: Pleroma.Web.ActivityPub.MRF.NoOpPolicy,    public: true +config :pleroma, :activitypub, accept_blocks: true +  config :pleroma, :mrf_simple,    media_removal: [],    media_nsfw: [], diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex index 803445011..eada4334e 100644 --- a/lib/pleroma/web/activity_pub/transmogrifier.ex +++ b/lib/pleroma/web/activity_pub/transmogrifier.ex @@ -259,6 +259,9 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do      end    end +  @ap_config Application.get_env(:pleroma, :activitypub) +  @accept_blocks Keyword.get(@ap_config, :accept_blocks) +    def handle_incoming(          %{            "type" => "Undo", @@ -267,7 +270,8 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do            "id" => id          } = _data        ) do -    with %User{local: true} = blocked <- User.get_cached_by_ap_id(blocked), +    with true <- @accept_blocks, +         %User{local: true} = blocked <- User.get_cached_by_ap_id(blocked),           %User{} = blocker <- User.get_or_fetch_by_ap_id(blocker),           {:ok, activity} <- ActivityPub.unblock(blocker, blocked, id, false) do        User.unblock(blocker, blocked) @@ -280,7 +284,8 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do    def handle_incoming(          %{"type" => "Block", "object" => blocked, "actor" => blocker, "id" => id} = data        ) do -    with %User{local: true} = blocked = User.get_cached_by_ap_id(blocked), +    with true <- @accept_blocks, +         %User{local: true} = blocked = User.get_cached_by_ap_id(blocked),           %User{} = blocker = User.get_or_fetch_by_ap_id(blocker),           {:ok, activity} <- ActivityPub.block(blocker, blocked, id, false) do        User.unfollow(blocker, blocked) | 
