From c2a582fa4915b1a820bcc5e5bc589cd9ac2e2d19 Mon Sep 17 00:00:00 2001 From: "kali kaneko (leap communications)" Date: Tue, 1 Jun 2021 11:44:11 +0200 Subject: [feat] restrict locations to selected transport --- gui/qml/main.qml | 1 + pkg/backend/api.go | 1 + pkg/vpn/bonafide/gateways.go | 3 +++ 3 files changed, 5 insertions(+) diff --git a/gui/qml/main.qml b/gui/qml/main.qml index daffda2..3d83b31 100644 --- a/gui/qml/main.qml +++ b/gui/qml/main.qml @@ -181,6 +181,7 @@ ApplicationWindow { ctx = JSON.parse(jsonModel.getJson()) // TODO pass QML_DEBUG variable to be hyper-verbose //console.debug(jsonModel.getJson()) + gwSelector.model = Object.keys(ctx.locations) if (ctx.donateDialog == 'true') { diff --git a/pkg/backend/api.go b/pkg/backend/api.go index 53800b3..96f3072 100644 --- a/pkg/backend/api.go +++ b/pkg/backend/api.go @@ -81,6 +81,7 @@ func UseAutomaticGateway() { func SetTransport(label string) { ctx.bm.SetTransport(label) + go trigger(OnStatusChanged) } func GetTransport() *C.char { diff --git a/pkg/vpn/bonafide/gateways.go b/pkg/vpn/bonafide/gateways.go index a0d41fb..53ab320 100644 --- a/pkg/vpn/bonafide/gateways.go +++ b/pkg/vpn/bonafide/gateways.go @@ -97,6 +97,9 @@ func (p *gatewayPool) listLocationFullness(transport string) map[string]float64 } if len(p.recommended) != 0 { for _, gw := range p.recommended { + if gw.gateway.Transport != transport { + continue + } if _, ok := cm[gw.gateway.Location]; ok { continue } -- cgit v1.2.3