diff options
author | Daniil Baturin <daniil@baturin.org> | 2019-09-04 15:39:38 +0200 |
---|---|---|
committer | Daniil Baturin <daniil@baturin.org> | 2019-09-04 15:39:38 +0200 |
commit | 4d50edfc9543f3d27eb83300dd27d598ffe63fe2 (patch) | |
tree | 6d403977484aa5231659d17efdd031ea01c1a768 /interface-definitions | |
parent | 6167fab1737ef59f223ee6c7fff0a493c76d9793 (diff) | |
download | vyos-1x-4d50edfc9543f3d27eb83300dd27d598ffe63fe2.tar.gz vyos-1x-4d50edfc9543f3d27eb83300dd27d598ffe63fe2.zip |
T1443: backport the HTTP API to crux.
Implementation by Daniil Baturin and John Estabrook.
Diffstat (limited to 'interface-definitions')
-rw-r--r-- | interface-definitions/https.xml | 123 |
1 files changed, 123 insertions, 0 deletions
diff --git a/interface-definitions/https.xml b/interface-definitions/https.xml new file mode 100644 index 000000000..7a87133f3 --- /dev/null +++ b/interface-definitions/https.xml @@ -0,0 +1,123 @@ +<?xml version="1.0"?> +<!-- HTTPS configuration --> +<interfaceDefinition> + <node name="service"> + <children> + <node name="https" owner="${vyos_conf_scripts_dir}/https.py"> + <properties> + <help>HTTPS configuration</help> + <priority>1001</priority> + </properties> + <children> + <tagNode name="listen-addresses"> + <properties> + <help>Addresses to listen for HTTPS requests</help> + <valueHelp> + <format>ipv4</format> + <description>HTTPS IPv4 address</description> + </valueHelp> + <valueHelp> + <format>ipv6</format> + <description>HTTPS IPv6 address</description> + </valueHelp> + <valueHelp> + <format>'*'</format> + <description>any</description> + </valueHelp> + <constraint> + <validator name="ipv4-address"/> + <validator name="ipv6-address"/> + <regex>^\\*$</regex> + </constraint> + </properties> + <children> + <leafNode name="server-names"> + <properties> + <help>Server names: exact, wildcard, regex, or '_' (any)</help> + <multi/> + </properties> + </leafNode> + </children> + </tagNode> + <node name="certificates"> + <properties> + <help>TLS certificates</help> + </properties> + <children> + <node name="system-generated-certificate" owner="${vyos_conf_scripts_dir}/vyos_cert.py"> + <properties> + <help>Use an automatically generated self-signed certificate</help> + <valueless/> + </properties> + <children> + <leafNode name="lifetime"> + <properties> + <help>Lifetime in days; default is 365</help> + <valueHelp> + <format>1-65535</format> + <description>Number of days</description> + </valueHelp> + </properties> + </leafNode> + </children> + </node> + </children> + </node> + <node name="api" owner="${vyos_conf_scripts_dir}/http-api.py"> + <properties> + <help>VyOS HTTP API configuration</help> + <priority>1002</priority> + </properties> + <children> + <leafNode name="port"> + <properties> + <help>Port for HTTP API service</help> + <valueHelp> + <format>1-65535</format> + <description>Numeric IP port</description> + </valueHelp> + <constraint> + <validator name="numeric" argument="--range 1-65535"/> + </constraint> + </properties> + </leafNode> + <node name="keys"> + <properties> + <help>HTTP API keys</help> + </properties> + <children> + <tagNode name="id"> + <properties> + <help>HTTP API id</help> + </properties> + <children> + <leafNode name="key"> + <properties> + <help>HTTP API plaintext key</help> + </properties> + </leafNode> + </children> + </tagNode> + </children> + </node> + <leafNode name="strict"> + <properties> + <help>Enforce strict path checking</help> + <valueless/> + </properties> + </leafNode> + <leafNode name="debug"> + <properties> + <help>Debug</help> + <valueless/> + <hidden/> + </properties> + </leafNode> + </children> + </node> + </children> + </node> + </children> + </node> +</interfaceDefinition> + |