summaryrefslogtreecommitdiff
path: root/docs/src
diff options
context:
space:
mode:
authorjwijenbergh <jeroenwijenbergh@protonmail.com>2023-03-21 13:54:43 +0100
committerJeroen Wijenbergh <46386452+jwijenbergh@users.noreply.github.com>2023-09-25 09:43:37 +0200
commit6017b58600910e83e6177044e4e69b9ff556a70c (patch)
tree241bc48a818cb84efe4d1f6cff57335aa0b17842 /docs/src
parentae4c58d37d6cb284b3c1cddb2502fabbd8106898 (diff)
Docs: Remove outdated documents
Diffstat (limited to 'docs/src')
-rw-r--r--docs/src/SUMMARY.md7
-rw-r--r--docs/src/api/overview/connecting.md14
-rw-r--r--docs/src/api/overview/deregistering.md11
-rw-r--r--docs/src/api/overview/discovery.md18
-rw-r--r--docs/src/api/overview/getconfig.md42
-rw-r--r--docs/src/api/overview/registering.md35
6 files changed, 1 insertions, 126 deletions
diff --git a/docs/src/SUMMARY.md b/docs/src/SUMMARY.md
index 09ba35d..29eb497 100644
--- a/docs/src/SUMMARY.md
+++ b/docs/src/SUMMARY.md
@@ -14,12 +14,7 @@
- [Finite State Machine](./gettingstarted/debugging/fsm.md)
- [API](./api/README.md)
- [Overview](./api/overview/README.md)
- - [Registering](./api/overview/registering.md)
- - [Discovery](./api/overview/discovery.md)
- - [OpenVPN/Wireguard Config](./api/overview/getconfig.md)
- - [Connecting/Disconnecting](./api/overview/connecting.md)
- - [Deregistering](./api/overview/deregistering.md)
- - [Typical flow](./api/overview/flow.md)
+ - [Typical flow](./api/overview/flow.md)
- [Go](./api/go/README.md)
- [Example](./api/go/example.md)
- [Python](./api/python/README.md)
diff --git a/docs/src/api/overview/connecting.md b/docs/src/api/overview/connecting.md
deleted file mode 100644
index c2a82a0..0000000
--- a/docs/src/api/overview/connecting.md
+++ /dev/null
@@ -1,14 +0,0 @@
-# Connecting/Disconnecting
-## Summary
-Name: `Set Connected` and `Set Disconnected`
-
-Arguments: None
-
-Returns: `Error`
-
-Used to signal to the FSM that we're connected/disconnected to the VPN
-
-## Detailed information
-This function is used to set the internal FSM state to connected. As the library does not actually connect to a VPN server, as this is platform specific, this must be called by the client to signal to the library that the user is connected to the VPN. If the FSM does not have a transition to the Connected state it will signal this with a returned error.
-
-The same function is used to signal the FSM that the VPN is disconnected.
diff --git a/docs/src/api/overview/deregistering.md b/docs/src/api/overview/deregistering.md
deleted file mode 100644
index 0503dbe..0000000
--- a/docs/src/api/overview/deregistering.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# Deregistering
-## Summary
-name: `Deregister`
-
-Arguments: None
-
-Returns: Nothing
-
-Used to cleanup the library by deregistering the client and saving the config files
-## Detailed information
-The deregister method is used to cleanup the library. It should be called when the client closes. This also saves the state to the directory that was passed in the [Register](./registering.html) method.
diff --git a/docs/src/api/overview/discovery.md b/docs/src/api/overview/discovery.md
deleted file mode 100644
index 4004ec4..0000000
--- a/docs/src/api/overview/discovery.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# Discovery
-## Summary
-Name: `Get Disco Servers` and `Get Disco Organizations`
-
-Arguments: None
-
-Returns: `structure for servers/organizations` and `Error for servers/organizations`
-
-Note: Depending on the wrapper they may be combined into one function, the return value of this function is then the following:
-`organizations, error for organizations, servers, errors for servers`
-
-Used to obtain the servers and organizations list from the discovery server.
-## Detailed information
-Discovery is the aspect of eduVPN that allows a client to gather all the servers and organizations it can connect to. For this a discovery server is used, which is registered as `https://disco.eduvpn.org` in the library. We refer to the [official eduVPN documentation](https://github.com/eduvpn/documentation/blob/v3/SERVER_DISCOVERY.md) to learn more about the exact way that these organizations and servers are structured.
-
-The data that this returns must be used by the client to build an UI. It is common for clients that the discovery functions get called on startup of the client. Note that there can be an error in retrieving the newest version of the servers/organizations. However, this library's goal is to ensure that a version is always available. Thus, a local copy is distributed with this library in the future.
-
-This library also internally looks at the version of the servers and organizations such that rollbacks attacks are prevented. The client does not have to do any additional checks for this.
diff --git a/docs/src/api/overview/getconfig.md b/docs/src/api/overview/getconfig.md
deleted file mode 100644
index 2a05784..0000000
--- a/docs/src/api/overview/getconfig.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# Getting an OpenVPN/Wireguard config
-## Summary
-name: `Get Config Institute Access`, `Get Config Custom Server` and `Get Config Secure Internet`
-
-| Arguments | Description | type |
-| --------- | ----------------------------------------------- | -------- |
-| Identifier | The url/org ID of the VPN server to connect to | string |
-| Prefer TCP | Whether or not to prefer the use of TCP | string |
-
-Returns: `OpenVPN/Wireguard config (string)` `wireguard/openvpn type (string)`, `Error`
-
-Used to obtain the OpenVPN/Wireguard config
-
-## Detailed information
-
-To get a configuration that is used to actually establish a tunnel with the VPN server, we have the Get Config function for Institute Access, Custom Servers and Secure Internet (the exact name depends on the language you're using) function in the library. This function has two parameters *URL* and *Prefer TCP*.
-
-*URL/OrgID* is the base URL of the server to connect to
-e.g. `nl.eduvpn.org` in case of Institute Access or a Custom Server. In case of Secure Internet, the identifier is the Organization ID. Use the correct function to indicate if it is an Institute Access server or a Secure Internet server.
-
-The *Prefer TCP* flag is a boolean that indicates whether or not we want to prefer TCP to connect over the VPN. This flag is useful if the user has enabled e.g. a setting that prefers the use of TCP, which is only supported by OpenVPN. Note that this setting may be ignored by the server.
-
-This function takes care of OAuth which has certain callbacks with data. Additionally, there are also callbacks that need to be registered for selecting the right profile to connect to. These callbacks will be explained now.
-
-The data that this function returns is the OpenVPN/Wireguard config as a string, the type of config (a string: "wireguard" or "openvpn") and an error if present.
-
-### Callback: OAuth started (OAuth_Started)
-
-OAuth has an important callback which is used to obtain the authorization URL by the client. This client needs to open this authorization URL in a web browser such that the user can authenticate with the VPN portal and then authorize the client to obtain OpenVPN/Wireguard configs.
-
-The callback for this is triggered whenever the OAuth Started state is triggered. The data which this callback has is the authorization url that needs to be opened in the web browser.
-
-The format of the authorization URL is e.g. this:
-
-`https://eduvpn.example.com/vpn-user-portal/oauth/authorize?client_id=org.eduvpn.app.linux&code_challenge=DsmGyWFBkvDXiIO33Fs40Z0fn4pxtzDCW2jKvAMptBg&code_challenge_method=S256&redirect_uri=http%3A%2F%2F127.0.0.1%3A8000%2Fcallback&response_type=code&scope=config&state=vha2Krx-HpOyvFkWsWYmey0jrHQ6bnb06PQ6zBXX_bg`
-
-This callback can be cancelled by using a `Cancel OAuth` function.
-
-### Callback: Selecting a profile (Ask_Profile)
-
-Another aspect that needs to be taken into account is the fact that there can be multiple profiles that a client can connect to. When the function gets called for obtaining an OpenVPN/Wireguard configuration, it asks the client which profile it wants to connect to using the callback that gets triggered on the Ask Profile state. The data is the list of profiles
-For actually selecting the profile, there is a separate function which takes care of this. This function takes as only argument the profile ID as a string.
diff --git a/docs/src/api/overview/registering.md b/docs/src/api/overview/registering.md
deleted file mode 100644
index 5c40614..0000000
--- a/docs/src/api/overview/registering.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Registering a client
-## Summary
-Name: `Register`
-
-| Arguments | Description | type |
-| --------- | -------------------------------------- | -------- |
-| Name | Name of the client | string |
-| Directory | Path to save logging and state | string |
-| Callback | Function to be used as the FSM callback | function |
-| Debug | Indicates whether or not to configure debugging capabilities. See [this section](../../../gettingstarted/debugging/index.html) for more information on debugging. | boolean |
-
-Returns: `Error`
-
-Used as initialization function of the library
-## Detailed information
-This library is made to build eduVPN clients. To create such a client, the register method is used. This method takes a *name*, *directory* and *callback*. This method needs to be called whenever a client wants to use this library. If this method is not called then the remaining methods will not be available to use.
-
-The *name* is the name of the client, also used as a client ID for OAuth. In general the name is the following for each official eduVPN client (documented [here](https://git.sr.ht/~fkooman/vpn-user-portal/tree/v3/item/src/OAuth/ClientDb.php)):
-
-
-| Platform | Client ID |
-| -------- | ------------------------ |
-| Linux | `org.eduvpn.app.linux` |
-| Windows | `org.eduvpn.app.windows` |
-| MacOS | `org.eduvpn.app.macos` |
-| Android | `org.eduvpn.app.android` |
-| iOS | `org.eduvpn.app.ios` |
-
-The *directory* is the file path where logging and config files are stored. The library creates this directory if it doesn't exist. This can be an absolute or relative path. We recommend to use an absolute path to ensure that the right directory is chosen.
-
-The *callback* is the function that gets called when the internal Finite State Machine switches state. This callback function must consist of three arguments
-
-- Old state: The old state as a string, which is the current FSM state before the transition. See [FSM states](../../gettingstarted/debugging/fsm.html#state-explanation) for a list of states.
-- New state: The current state for the FSM after the transition, also a string. See [FSM states](../../gettingstarted/debugging/fsm.html#state-explanation) for a list of states.
-- Data: The data that gets sent by the library as a string. Most common this is JSON data to build the UI or in case of OAuth it is the authorization URL that needs to be opened by the browser. When there is no data this is an empty string.