diff --git a/changes/bug26069 b/changes/bug26069 new file mode 100644 index 000000000..192e97d78 --- /dev/null +++ b/changes/bug26069 @@ -0,0 +1,5 @@ + o Minor bugfixes (hidden service v3): + - When parsing the descriptor signature, look for the token plus an extra + white-space at the end. This is more correct but also will allow us to + support new fields that might start with "signature". Fixes bug 26069; + bugfix on 0.3.0.1-alpha. diff --git a/src/or/hs_descriptor.c b/src/or/hs_descriptor.c index 9683fca50..fef0607c1 100644 --- a/src/or/hs_descriptor.c +++ b/src/or/hs_descriptor.c @@ -1895,7 +1895,7 @@ desc_sig_is_valid(const char *b64_sig, } /* Find the start of signature. */ - sig_start = tor_memstr(encoded_desc, encoded_len, "\n" str_signature); + sig_start = tor_memstr(encoded_desc, encoded_len, "\n" str_signature " "); /* Getting here means the token parsing worked for the signature so if we * can't find the start of the signature, we have a code flow issue. */ if (!sig_start) {