aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/contrib/highlighter
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2020-04-03 23:14:07 -0600
committerJason A. Donenfeld <Jason@zx2c4.com>2020-04-03 23:14:07 -0600
commit20e28d2b0f4ae522cf14abcc5a29f9ade24f217b (patch)
tree5799079464b67d6580e9414616880020e3493189 /contrib/highlighter
parentMakefile: simplify silent cleaning (diff)
downloadwireguard-tools-20e28d2b0f4ae522cf14abcc5a29f9ade24f217b.tar.xz
wireguard-tools-20e28d2b0f4ae522cf14abcc5a29f9ade24f217b.zip
highlighter: insist on 256-bit keys, not 257-bit or 258-bit
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'contrib/highlighter')
-rw-r--r--contrib/highlighter/highlighter.c23
1 files changed, 22 insertions, 1 deletions
diff --git a/contrib/highlighter/highlighter.c b/contrib/highlighter/highlighter.c
index 9f0e53a..e0d4e04 100644
--- a/contrib/highlighter/highlighter.c
+++ b/contrib/highlighter/highlighter.c
@@ -62,11 +62,32 @@ static bool is_valid_key(string_span_t s)
if (s.len != 44 || s.s[43] != '=')
return false;
- for (size_t i = 0; i < 43; ++i) {
+ for (size_t i = 0; i < 42; ++i) {
if (!is_decimal(s.s[i]) && !is_alphabet(s.s[i]) &&
s.s[i] != '/' && s.s[i] != '+')
return false;
}
+ switch (s.s[42]) {
+ case 'A':
+ case 'E':
+ case 'I':
+ case 'M':
+ case 'Q':
+ case 'U':
+ case 'Y':
+ case 'c':
+ case 'g':
+ case 'k':
+ case 'o':
+ case 's':
+ case 'w':
+ case '4':
+ case '8':
+ case '0':
+ break;
+ default:
+ return false;
+ }
return true;
}