- `internal/wireguard` client package with unit tests - Implementation works with kernel space or user space if unavailable - `WIREGUARD_PRIVATE_KEY` - `WIREGUARD_ADDRESS` - `WIREGUARD_PRESHARED_KEY` - `WIREGUARD_PORT` - `internal/netlink` package used by `internal/wireguard`
23 lines
532 B
Go
23 lines
532 B
Go
package windscribe
|
|
|
|
import (
|
|
"sort"
|
|
|
|
"github.com/qdm12/gluetun/internal/models"
|
|
)
|
|
|
|
func sortServers(servers []models.WindscribeServer) {
|
|
sort.Slice(servers, func(i, j int) bool {
|
|
if servers[i].Region == servers[j].Region {
|
|
if servers[i].City == servers[j].City {
|
|
if servers[i].Hostname == servers[j].Hostname {
|
|
return servers[i].VPN < servers[j].VPN
|
|
}
|
|
return servers[i].Hostname < servers[j].Hostname
|
|
}
|
|
return servers[i].City < servers[j].City
|
|
}
|
|
return servers[i].Region < servers[j].Region
|
|
})
|
|
}
|