summaryrefslogtreecommitdiff
path: root/internal/server/profile/profile.go
diff options
context:
space:
mode:
authorjwijenbergh <jeroenwijenbergh@protonmail.com>2024-02-06 16:26:05 +0100
committerJeroen Wijenbergh <46386452+jwijenbergh@users.noreply.github.com>2024-02-19 14:15:07 +0100
commit819d7f9914cbb34abb76b932c05b030a34986ec2 (patch)
tree7da743c1a0363e800a041e0310ca8cf441bc3f90 /internal/server/profile/profile.go
parent4d26c8489b09acc98128715e9a2ed67558eb8105 (diff)
Server: Delete old files to prepare for new internal API
Diffstat (limited to 'internal/server/profile/profile.go')
-rw-r--r--internal/server/profile/profile.go88
1 files changed, 0 insertions, 88 deletions
diff --git a/internal/server/profile/profile.go b/internal/server/profile/profile.go
deleted file mode 100644
index 7a19685..0000000
--- a/internal/server/profile/profile.go
+++ /dev/null
@@ -1,88 +0,0 @@
-package profile
-
-import (
- "github.com/eduvpn/eduvpn-common/types/protocol"
- "github.com/eduvpn/eduvpn-common/types/server"
-)
-
-type Profile struct {
- ID string `json:"profile_id"`
- DisplayName string `json:"display_name"`
- VPNProtoList []string `json:"vpn_proto_list"`
- DefaultGateway bool `json:"default_gateway"`
-}
-
-type ListInfo struct {
- ProfileList []Profile `json:"profile_list"`
-}
-
-type Info struct {
- Current string `json:"current_profile"`
- Info ListInfo `json:"info"`
-}
-
-func (info Info) CurrentProfileIndex() int {
- for i, profile := range info.Info.ProfileList {
- if profile.ID == info.Current {
- return i
- }
- }
- // Default is 'first' profile
- return 0
-}
-
-func (profile *Profile) supportsProtocol(protocol string) bool {
- for _, proto := range profile.VPNProtoList {
- if proto == protocol {
- return true
- }
- }
- return false
-}
-
-func (profile *Profile) SupportsWireguard() bool {
- return profile.supportsProtocol("wireguard")
-}
-
-func (profile *Profile) SupportsOpenVPN() bool {
- return profile.supportsProtocol("openvpn")
-}
-
-func (info Info) Supported(wireguardSupport bool) []Profile {
- var valid []Profile
- for _, p := range info.Info.ProfileList {
- // Not a valid profile because it does not support openvpn
- // Also the client does not support wireguard
- if !p.SupportsOpenVPN() && !wireguardSupport {
- continue
- }
- valid = append(valid, p)
- }
- return valid
-}
-
-func (info Info) Has(id string) bool {
- for _, p := range info.Info.ProfileList {
- if p.ID == id {
- return true
- }
- }
- return false
-}
-
-func (info Info) Public() server.Profiles {
- m := make(map[string]server.Profile)
- for _, p := range info.Info.ProfileList {
- var protocols []protocol.Protocol
- for _, ps := range p.VPNProtoList {
- protocols = append(protocols, protocol.New(ps))
- }
- m[p.ID] = server.Profile{
- DisplayName: map[string]string{
- "en": p.DisplayName,
- },
- Protocols: protocols,
- }
- }
- return server.Profiles{Map: m, Current: info.Current}
-}