diff options
| author | jwijenbergh <jeroenwijenbergh@protonmail.com> | 2023-09-06 15:55:26 +0200 |
|---|---|---|
| committer | Jeroen Wijenbergh <46386452+jwijenbergh@users.noreply.github.com> | 2023-09-25 09:43:37 +0200 |
| commit | 9697ea01b79cde6c8901d7853dc0b414acf84fa7 (patch) | |
| tree | 2827e2328de82a59fb840905fbfe295342f3d97f /internal/server/server.go | |
| parent | 2e9dbcb863bf72239a80c7c33f6808d24c3ac69e (diff) | |
Server: Have separate implementations for refreshing endpoints
Diffstat (limited to 'internal/server/server.go')
| -rw-r--r-- | internal/server/server.go | 25 |
1 files changed, 3 insertions, 22 deletions
diff --git a/internal/server/server.go b/internal/server/server.go index e8b046f..b6f3b30 100644 --- a/internal/server/server.go +++ b/internal/server/server.go @@ -31,6 +31,9 @@ type Server interface { // Public returns the representation that will be passed over the CGO barrier Public() (interface{}, error) + + // RefreshEndpoints refreshes the endpoints for the server + RefreshEndpoints(context.Context, *discovery.Discovery) error } // Name gets the name for the server and falls back to a default of "Unknown Server" @@ -227,28 +230,6 @@ func HasValidProfile(ctx context.Context, srv Server, wireguardSupport bool) (bo return true, nil } -func RefreshEndpoints(ctx context.Context, srv Server) error { - // Get the base struct - b, err := srv.Base() - if err != nil { - return err - } - - // update the base struct - err = api.Endpoints(ctx, b) - if err != nil { - return err - } - - // update OAuth - auth := srv.OAuth() - if auth != nil { - auth.BaseAuthorizationURL = b.Endpoints.API.V3.Authorization - auth.TokenURL = b.Endpoints.API.V3.Token - } - return nil -} - func Config(ctx context.Context, server Server, wireguardSupport bool, preferTCP bool) (*ConfigData, error) { p, err := CurrentProfile(server) if err != nil { |
