fix: multiple subdomain gateways on same domain (#8556)
mathew-cf committed
Nov 23, 2021 at 11:11 UTC
11404a9a030db5710be7603114e1e32b5782a145
2 files changed
+3
-1
core/corehttp/hostname.go
+1
-1
@@ -338,7 +338,7 @@ func knownSubdomainDetails(hostname string, knownGateways gatewayHosts) (gw *con
338
339
ns := labels[i-1]
340
if !isSubdomainNamespace(ns) {
341
- break
341
+ continue
342
}
343
344
// Merge remaining labels (could be a FQDN with DNSLink)
core/corehttp/hostname_test.go
+2
@@ -217,6 +217,7 @@ func TestKnownSubdomainDetails(t *testing.T) {
217
knownGateways := prepareKnownGateways(map[string]*config.GatewaySpec{
218
"localhost": gwLocalhost,
219
"dweb.link": gwDweb,
220
+ "devgateway.dweb.link": gwDweb,
221
"dweb.ipfs.pvt.k12.ma.us": gwLong, // note the sneaky ".ipfs." ;-)
222
"*.wildcard1.tld": gwWildcard1,
223
"*.*.wildcard2.tld": gwWildcard2,
@@ -248,6 +249,7 @@ func TestKnownSubdomainDetails(t *testing.T) {
249
// cid in subdomain, known gateway
250
{"bafkreicysg23kiwv34eg2d7qweipxwosdo2py4ldv42nbauguluen5v6am.ipfs.localhost:8080", gwLocalhost, "localhost:8080", "ipfs", "bafkreicysg23kiwv34eg2d7qweipxwosdo2py4ldv42nbauguluen5v6am", true},
251
{"bafkreicysg23kiwv34eg2d7qweipxwosdo2py4ldv42nbauguluen5v6am.ipfs.dweb.link", gwDweb, "dweb.link", "ipfs", "bafkreicysg23kiwv34eg2d7qweipxwosdo2py4ldv42nbauguluen5v6am", true},
252
+ {"bafkreicysg23kiwv34eg2d7qweipxwosdo2py4ldv42nbauguluen5v6am.ipfs.devgateway.dweb.link", gwDweb, "devgateway.dweb.link", "ipfs", "bafkreicysg23kiwv34eg2d7qweipxwosdo2py4ldv42nbauguluen5v6am", true},
253
// capture everything before .ipfs.
254
{"foo.bar.boo-buzz.ipfs.dweb.link", gwDweb, "dweb.link", "ipfs", "foo.bar.boo-buzz", true},
255
// ipns