~cytrogen/masto-fe

a89b02af928ed9acb4406d935c718c5825280fef — Claire 2 years ago 1ed0ff3
Check domain suspensions before trying to fetch resources (#24535)

1 files changed, 3 insertions(+), 0 deletions(-)

M app/services/activitypub/fetch_remote_status_service.rb
M app/services/activitypub/fetch_remote_status_service.rb => app/services/activitypub/fetch_remote_status_service.rb +3 -0
@@ 2,12 2,15 @@

class ActivityPub::FetchRemoteStatusService < BaseService
  include JsonLdHelper
  include DomainControlHelper
  include Redisable

  DISCOVERIES_PER_REQUEST = 1000

  # Should be called when uri has already been checked for locality
  def call(uri, id: true, prefetched_body: nil, on_behalf_of: nil, expected_actor_uri: nil, request_id: nil)
    return if domain_not_allowed?(uri)

    @request_id = request_id || "#{Time.now.utc.to_i}-status-#{uri}"
    @json = if prefetched_body.nil?
              fetch_resource(uri, id, on_behalf_of)