aboutsummaryrefslogtreecommitdiff
path: root/data/botPolicies.json
diff options
context:
space:
mode:
authorXe Iaso <me@xeiaso.net>2025-04-26 10:01:15 -0400
committerGitHub <noreply@github.com>2025-04-26 14:01:15 +0000
commitef52550e70a44c318dca8a406750589f67fac0eb (patch)
treed00e403f38960ab9f86c8dadf41907099ecad391 /data/botPolicies.json
parentc669b47b570d222a9a902705adeff8fb26c989c4 (diff)
downloadanubis-ef52550e70a44c318dca8a406750589f67fac0eb.tar.xz
anubis-ef52550e70a44c318dca8a406750589f67fac0eb.zip
fix(config): remove trailing newlines in regexes (#373)v1.17.0-beta31.17.0-beta2
Closes #372 Fun YAML fact of the day: What is the difference between how these two expressions are parsed? ```yaml foo: > bar ``` ```yaml foo: >- bar ``` They are invisible in yaml, but when you evaluate them to JSON the difference is obvious: ```json { "foo": "bar\n" } ``` ```json { "foo": "bar" } ``` User-Agent strings, URL path values, and HTTP headers _do_ end in newlines in HTTP/1.1 wire form, but that newline is usually stripped before the server actually handles it. Also HTTP/2 is a thing and does not terminate header values with newlines. This change makes Anubis more aggressively detect mistaken uses of the yaml `>` operator and nudges the user into using the yaml `>-` operator which does not append the trailing newline. I had honestly forgotten about this YAML behavior because it wasn't relevant for so long. Oops! Glad I released a beta. Whenever you get into this state, Anubis will throw a config parsing error and then give you a message hinting at the folly of your ways. ``` config.Bot: regular expression ends with newline (try >- instead of > in yaml) ``` Big thanks to https://yaml-multiline.info, this helped me realize my folly instantly. @aiverson, this is official permission to say "told you so". Signed-off-by: Xe Iaso <me@xeiaso.net>
Diffstat (limited to 'data/botPolicies.json')
-rw-r--r--data/botPolicies.json2
1 files changed, 1 insertions, 1 deletions
diff --git a/data/botPolicies.json b/data/botPolicies.json
index dad04e8..160bbf0 100644
--- a/data/botPolicies.json
+++ b/data/botPolicies.json
@@ -41,7 +41,7 @@
},
{
"name": "generic-browser",
- "user_agent_regex": "Mozilla|Opera\n",
+ "user_agent_regex": "Mozilla|Opera",
"action": "CHALLENGE"
}
],