Merge remote-tracking branch 'parent/main' into upstream-20241006
This commit is contained in:
commit
66bed31dbe
226 changed files with 2688 additions and 1846 deletions
|
@ -3,7 +3,6 @@
|
|||
class ActivityPub::FetchRemoteActorService < BaseService
|
||||
include JsonLdHelper
|
||||
include DomainControlHelper
|
||||
include WebfingerHelper
|
||||
|
||||
class Error < StandardError; end
|
||||
|
||||
|
@ -45,7 +44,7 @@ class ActivityPub::FetchRemoteActorService < BaseService
|
|||
private
|
||||
|
||||
def check_webfinger!
|
||||
webfinger = webfinger!("acct:#{@username}@#{@domain}")
|
||||
webfinger = Webfinger.new("acct:#{@username}@#{@domain}").perform
|
||||
confirmed_username, confirmed_domain = split_acct(webfinger.subject)
|
||||
|
||||
if @username.casecmp(confirmed_username).zero? && @domain.casecmp(confirmed_domain).zero?
|
||||
|
@ -54,7 +53,7 @@ class ActivityPub::FetchRemoteActorService < BaseService
|
|||
return
|
||||
end
|
||||
|
||||
webfinger = webfinger!("acct:#{confirmed_username}@#{confirmed_domain}")
|
||||
webfinger = Webfinger.new("acct:#{confirmed_username}@#{confirmed_domain}").perform
|
||||
@username, @domain = split_acct(webfinger.subject)
|
||||
|
||||
raise Webfinger::RedirectError, "Too many webfinger redirects for URI #{@uri} (stopped at #{@username}@#{@domain})" unless confirmed_username.casecmp(@username).zero? && confirmed_domain.casecmp(@domain).zero?
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
class ActivityPub::ProcessCollectionService < BaseService
|
||||
include JsonLdHelper
|
||||
include DomainControlHelper
|
||||
|
||||
def call(body, actor, **options)
|
||||
@account = actor
|
||||
|
@ -73,6 +74,9 @@ class ActivityPub::ProcessCollectionService < BaseService
|
|||
end
|
||||
|
||||
def verify_account!
|
||||
return unless @json['signature'].is_a?(Hash)
|
||||
return if domain_not_allowed?(@json['signature']['creator'])
|
||||
|
||||
@options[:relayed_through_actor] = @account
|
||||
@account = ActivityPub::LinkedDataSignature.new(@json).verify_actor!
|
||||
@account = nil unless @account.is_a?(Account)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue