summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorEmīls Piņķis <emils@mullvad.net>2018-10-23 17:08:43 +0100
committerOdd Stranne <odd@mullvad.net>2018-10-30 14:57:46 +0100
commit1bbfe8c90dff4f0abb84f7fea4ddc4fff1b44e7c (patch)
tree7163b7b179e975bd09a0aa6b5d7256e15fcd6288
parent8040ae8205b668172c1d62542436dd89f6186f0c (diff)
downloadmullvadvpn-1bbfe8c90dff4f0abb84f7fea4ddc4fff1b44e7c.tar.xz
mullvadvpn-1bbfe8c90dff4f0abb84f7fea4ddc4fff1b44e7c.zip
Adjust frontend validation code to allow for introduced proxy settings
-rw-r--r--gui/packages/desktop/src/renderer/lib/daemon-rpc.js41
1 files changed, 41 insertions, 0 deletions
diff --git a/gui/packages/desktop/src/renderer/lib/daemon-rpc.js b/gui/packages/desktop/src/renderer/lib/daemon-rpc.js
index 594a33fdf6..8022aedfac 100644
--- a/gui/packages/desktop/src/renderer/lib/daemon-rpc.js
+++ b/gui/packages/desktop/src/renderer/lib/daemon-rpc.js
@@ -234,12 +234,53 @@ export type TunnelOptions = {
openvpn: {
mssfix: ?number,
},
+ proxy: ?ProxySettings,
};
+export type ProxySettings = LocalProxySettings | RemoteProxySettings;
+
+export type LocalProxySettings = {
+ port: number,
+ peer: string,
+};
+
+export type RemoteProxySettings = {
+ address: string,
+ auth: ?RemoteProxyAuth,
+};
+
+export type RemoteProxyAuth = {
+ username: string,
+ password: string,
+};
+
+const OpenVpnProxySchema = maybe(
+ oneOf(
+ object({
+ local: object({
+ port: number,
+ peer: string,
+ }),
+ }),
+ object({
+ remote: object({
+ address: string,
+ auth: maybe(
+ object({
+ username: string,
+ password: string,
+ }),
+ ),
+ }),
+ }),
+ ),
+);
+
const TunnelOptionsSchema = object({
enable_ipv6: boolean,
openvpn: object({
mssfix: maybe(number),
+ proxy: OpenVpnProxySchema,
}),
});