aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcbdev <cb@cbcdn.com>2019-06-08 12:15:23 +0200
committercbdev <cb@cbcdn.com>2019-06-08 12:15:23 +0200
commit303e464579e2fc9961d4d9f4841e916f9aa8963f (patch)
tree773d3e178d8899cf6afd3096eb93921056dde270
parentfa51a8db630414292e106369a10bb43c486fddc7 (diff)
downloadwebsocksy-303e464579e2fc9961d4d9f4841e916f9aa8963f.tar.gz
websocksy-303e464579e2fc9961d4d9f4841e916f9aa8963f.tar.bz2
websocksy-303e464579e2fc9961d4d9f4841e916f9aa8963f.zip
Move example configuration
-rw-r--r--README.md2
-rw-r--r--plugins/backend_file.cfg (renamed from websocksy.cfg)0
-rw-r--r--plugins/backend_file.md16
3 files changed, 14 insertions, 4 deletions
diff --git a/README.md b/README.md
index 91524c8..fda4e08 100644
--- a/README.md
+++ b/README.md
@@ -100,7 +100,7 @@ In the `[core]` section, the following options are recognized:
In the `[backend]` section, all options are passed directly to the backend and thus are dependent on the specific
implementation. Backends should provide their own documentation files.
-An [example configuration file](websocksy.cfg) using the `file` backend is available in the repository.
+An [example configuration file](plugins/backend_file.cfg) using the `file` backend is available in the repository.
## Default backend
diff --git a/websocksy.cfg b/plugins/backend_file.cfg
index e986405..e986405 100644
--- a/websocksy.cfg
+++ b/plugins/backend_file.cfg
diff --git a/plugins/backend_file.md b/plugins/backend_file.md
index 7359c94..aefebf9 100644
--- a/plugins/backend_file.md
+++ b/plugins/backend_file.md
@@ -14,13 +14,21 @@ user-configurable templates which may use the following variables:
All slashes in variable values are replaced by underscores to defend against directory traversal attacks.
-If a specified file or variable does not exist (ie. the header or cookie is missing), the expression is skipped and the next one is evaluated. When the end of the template expression list is reached without a valid peer being found, the WebSocket connection will be rejected.
+If a specified file or variable does not exist (ie. the header or cookie is missing), the expression is skipped and the next
+one is evaluated. When the end of the template expression list is reached without a valid peer being found, the WebSocket connection
+will be rejected.
The files accessed via the expression list must contain lines of the form
-`<network peer> <protocol> [<framing>] [<framing-config>]`
+`<network peer> <subprotocol> [<framing>] [<framing-config>]`
-If the WebSocket client indicates one or more supported subprotocol, the first line found in any of the traversed
+For example:
+```
+tcp://localhost:5900 binary auto
+unix:///tmp/app.sock text text
+```
+
+If the WebSocket client indicates one or more supported subprotocols, the first line found in any of the traversed
files matching any of the indicated protocols is used as the connection peer. The special value `*` for the
protocol always matches the first indicated protocol. If the client does not indicate a subprotocol, the first
configuration line read will be used.
@@ -31,3 +39,5 @@ This backend accepts the following configuration options:
* `path`: The base path for the template expression list. All template evaluations will be appended to this path.
* `expression`: Adds a template expression to the list. Specify multiple times to extend the list. Expressions are evaluated in the order they are specified.
+
+An [example configuration file](backend_file.cfg) is provided in the repository.