diff --git a/server.py b/server.py index 27f36b0..f690e22 100644 --- a/server.py +++ b/server.py @@ -89,10 +89,10 @@ class fuwuqi(SimpleHTTPRequestHandler): # Make sure activity doer matches HTTP signature actor = keyid.removesuffix('#main-key') - if ('actor' in activity and activity['actor'] != actor) or - ('attributedTo' in activity and activity['attributedTo'] != actor) or - ('actor' in activity['object'] and activity['object']['actor'] != actor) or - ('attributedTo' in activity['object'] and activity['object']['attributedTo'] != actor) + if ('actor' in activity and activity['actor'] != actor) or \ + ('attributedTo' in activity and activity['attributedTo'] != actor) or \ + ('actor' in activity['object'] and activity['object']['actor'] != actor) or \ + ('attributedTo' in activity['object'] and activity['object']['attributedTo'] != actor): self.send_response(401) return @@ -104,7 +104,7 @@ class fuwuqi(SimpleHTTPRequestHandler): collection_append(f'users/{username}.outbox', activity) # Clients responsible for addressing activity for to in activity['to']: - if 'followers' in to or to 'https://www.w3.org/ns/activitystreams#Public': + if 'followers' in to or to == 'https://www.w3.org/ns/activitystreams#Public': with open(f'users/{username}.followers') as f: for follower in load(f)['orderedItems']: send(follower, self.headers, body)