commit e65a4fa42cdb3a2a0419e6178e1c141c98b28088 Author: cypherpunks cypherpunks@torproject.org Date: Tue Aug 7 14:52:16 2018 +0000
rust/protover: fix parsing docs
The function takes an already validated utf-8 string, and it never checks if the version numbers are an empty string. That parse error happens later.
Fix on 701c2b69f52cb4db46aa7455904e518b35fafc1a --- src/rust/protover/protover.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/rust/protover/protover.rs b/src/rust/protover/protover.rs index ad1fd446e..f8e64c822 100644 --- a/src/rust/protover/protover.rs +++ b/src/rust/protover/protover.rs @@ -452,8 +452,9 @@ impl UnvalidatedProtoEntry { /// following are true: /// /// * If a protocol name is an empty string, e.g. `"Cons=1,3 =3-5"`. - /// * If a protocol name cannot be parsed as utf-8. - /// * If the version numbers are an empty string, e.g. `"Cons="`. + /// * If an entry has no equals sign, e.g. `"Cons=1,3 Desc"`. + /// * If there is leading or trailing whitespace, e.g. `" Cons=1,3 Link=3"`. + /// * If there is any other extra whitespice, e.g. `"Cons=1,3 Link=3"`. fn parse_protocol_and_version_str<'a>( protocol_string: &'a str, ) -> Result<Vec<(&'a str, &'a str)>, ProtoverError> {
tor-commits@lists.torproject.org