1
0
dwelling-upload/pkg/utils/dwelling.go

34 lines
955 B
Go

package utils
import "strings"
// MainSite returns homepage address depending on network used.
func MainSite(host string) string {
if strings.Contains(host, "i2p") {
return "http://arav.i2p"
} else if strings.Contains(host, "onion") {
return "http://moq7aejnf4xk5k2bkaltli3ftkhusy2mbrd3pj23nrca343ku2mgk4yd.onion"
} else if strings.HasPrefix(host, "[300") {
return "http://[300:a98d:d6d0:8a08::f]"
}
return "https://arav.su"
}
// NetworkType detects network based on host suffix,
// whether client connected from Tor, I2P or Clearnet.
// Holy shit, net/http/Response doesn't actually save
// a URL.Scheme and just spit out an empty string.
// What a shame.
func NetworkType(host string) (string, string) {
if strings.Contains(host, "i2p") {
return "i2p", "http"
} else if strings.Contains(host, "onion") {
return "tor", "http"
} else if strings.Contains(host, "[300:") {
return "ygg", "http"
} else {
return "www", "https"
}
}