summaryrefslogtreecommitdiff
path: root/internal/server
AgeCommit message (Collapse)Author
2024-03-07Client + Server: Add a way to obtain the cached profiles listjwijenbergh
2024-03-07Server: Remove obsolete TODOjwijenbergh
2024-02-19Server: Only return should failover if prefer TCP was false toojwijenbergh
2024-02-19All: Document everything to pass revive lintjwijenbergh
2024-02-19Format: Run gofumptjwijenbergh
2024-02-19API + Server: Support vpn_proto_transport_listjwijenbergh
2024-02-19Server: Refactor internal server package to use new state filejwijenbergh
This completely rewrites the internal server package. Some advantages: - Caches less - Uses a callback interface so that the client package does not get so convoluted - Introduce a new API package that only deals with the server API and uses github.com/jwijenbergh/eduoauth-go
2024-02-19Server: Delete old files to prepare for new internal APIjwijenbergh
2023-11-01OAuth + Server: Make ISS optional for custom serversjwijenbergh
2023-09-29Client + Server + OAuth: Support mobile redirectsjwijenbergh
2023-09-25Server: Have separate implementations for refreshing endpointsjwijenbergh
2023-09-25Server: Set OAuth endpoints on refreshjwijenbergh
This fixes OAuth endpoints after e.g. an update from 2.x to 3.x
2023-09-25Client + Exports + Python: Add a startup boolean to getconfigjwijenbergh
To be used for autoconnect on startup. If autoconnect on startup set to true This ignores any callbacks that require user input (profile, authorization & location callbacks)
2023-09-25Initial i18n implementationjwijenbergh
2023-09-25Client + OAuth + Server: Initialize the OAuth clientID on addjwijenbergh
2023-09-25API Test: Add test for invalid authorization endpoint schemejwijenbergh
2023-09-25Endpoints: Double check HTTPS schemejwijenbergh
Now the note in the CLI is really not needed, but maybe wise to keep it there?
2023-09-25Secure: Do not set current location as it is already donejwijenbergh
2023-09-25Custom: Use the hostname for custom servers display namejwijenbergh
2023-09-25All: Implement a token handlerjwijenbergh
This implements a token handler for OAuth tokens. Clients can use the SetTokenHandler function in exports to set a token handler. It needs two arguments, a getter and a setter. The getter is a callback with three arguments: - The server to get the tokens for, in types.server.current as JSON - The output buffer - The output buffer maximum length The tokens should be written to the output buffer with maximum length. The type should be types.server.Tokens and be marshalled as JSON. If no tokens are available, leave the output buffer intact The token setter is a callback with two arguments: - The server for which to set the tokens for, in types.server.Current as JSON - The tokens, defined in types.server.Tokens as JSON Breaking changes: - No more tokens as arguments, was already deprecated in previous commits - Tokens are no longer returned in types.server.Configuration
2023-09-25Refactor: Split internal server into multiple packagesjwijenbergh
- Pass contexts - Have separate packages for e.g. custom, institute and secure - internet servers, profiles.... - Return types from the public ./types package with a Public() method
2023-09-25Exports + Python + Server: Remove ShouldRenewButtonjwijenbergh
This is replace with expiry times
2023-09-25Types: Split discovery into its own packagejwijenbergh
2023-09-25Server: Add a TODO note for custom server typesjwijenbergh
2023-09-25Institute Access: Add context to set errorsjwijenbergh
2023-09-25Server Base: Add functions for getting expiry timesjwijenbergh
2023-09-01Client + Server: Increase endpoint update frequency and update secure ↵jwijenbergh
internet handling
2023-08-29Server: Set OAuth endpoints on refreshjwijenbergh
This fixes OAuth endpoints after e.g. an update from 2.x to 3.x
2023-04-18Client + Server: Set default secure internet locationjwijenbergh
2023-04-18Server Custom: Fix invalid wrap erorrjwijenbergh
2023-04-18Client + Server: Implement a token updater callbackjwijenbergh
2023-02-28API + OAuth: Add some debug logging for tokensjwijenbergh
2023-02-27Profile Test: formatjwijenbergh
2023-02-17Refactor: Improve some errors by using errors.New and add contextjwijenbergh
2023-02-16Server: Add test for profilesjwijenbergh
2023-02-16Format: Run gofumptjwijenbergh
2023-02-16Server: Validate endpointsjwijenbergh
This commit validates the server endpoints by checking the Host and scheme of each URL to check if they match eachother. This is to prevent further mixup attacks
2023-02-15Server: Remove 75% requirement on renew buttonjwijenbergh
2023-01-31Server: Add script-security 0 to the OpenVPN configjwijenbergh
This prevents scripts from being executed by default. Clients can override this by either using the OpenVPN --script-security flag or add a script-security setting themselves.
2023-01-13Server API: Set a lower timeout for disconnectjwijenbergh
2023-01-10Client + Discovery: Implement further organizations expiryjwijenbergh
2023-01-06Refactor: Re-use a HTTP clientjwijenbergh
2022-12-21Client + Exports: Forward tokens for /disconnectjwijenbergh
2022-12-21Exports + OAuth + Server: Forward tokens to getting a configjwijenbergh
2022-12-21Failover: Initial implementationjwijenbergh
2022-12-21Server: Implement forcing WireGuard selection through envjwijenbergh
2022-12-14Server: Fix revive lint errorjwijenbergh
``` internal/server/servers.go:51:9: indent-error-flow: if block ends with a return statement, so drop this else and outdent its block (move short variable declaration to its own line if necessary) (revive) } else { return srv, nil } ```
2022-12-12Format: Run gofumptjwijenbergh
2022-12-12Server + Exports: Rename and simplify GetCurrentProfileIndexjwijenbergh
2022-12-12Server: Minor style changesjwijenbergh