summaryrefslogtreecommitdiff
path: root/internal/transport/transport.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/transport/transport.go')
-rw-r--r--internal/transport/transport.go14
1 files changed, 14 insertions, 0 deletions
diff --git a/internal/transport/transport.go b/internal/transport/transport.go
index 7f7e985fc..45d43ff18 100644
--- a/internal/transport/transport.go
+++ b/internal/transport/transport.go
@@ -78,6 +78,20 @@ type Transport interface {
// DereferenceInstance dereferences remote instance information, first by checking /api/v1/instance, and then by checking /.well-known/nodeinfo.
DereferenceInstance(ctx context.Context, iri *url.URL) (*gtsmodel.Instance, error)
+ // DereferenceDomainPermissions dereferences the
+ // permissions list present at the given permSub's URI.
+ //
+ // If "force", then If-Modified-Since and If-None-Match
+ // headers will *NOT* be sent with the outgoing request.
+ //
+ // If err == nil and Unmodified == false, then it's up
+ // to the caller to close the returned io.ReadCloser.
+ DereferenceDomainPermissions(
+ ctx context.Context,
+ permSub *gtsmodel.DomainPermissionSubscription,
+ force bool,
+ ) (*DereferenceDomainPermissionsResp, error)
+
// Finger performs a webfinger request with the given username and domain, and returns the bytes from the response body.
Finger(ctx context.Context, targetUsername string, targetDomain string) ([]byte, error)
}