X-Git-Url: https://git.pterodactylus.net/?p=fms.git;a=blobdiff_plain;f=src%2Ffreenet%2Fintroductionpuzzlerequester.cpp;fp=src%2Ffreenet%2Fintroductionpuzzlerequester.cpp;h=1b5c166ae5404fec77ea8ed509dee864745f5e05;hp=7147e2a969820c3f80c523912c0414c005bce961;hb=9ae3b1434e51788e6feb72e1415ec800d05c535a;hpb=ed0732b2550c23c05fc9faf925620e87ee6dee12 diff --git a/src/freenet/introductionpuzzlerequester.cpp b/src/freenet/introductionpuzzlerequester.cpp index 7147e2a..1b5c166 100644 --- a/src/freenet/introductionpuzzlerequester.cpp +++ b/src/freenet/introductionpuzzlerequester.cpp @@ -14,6 +14,8 @@ #include #endif +std::string IntroductionPuzzleRequester::m_validuuidchars="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890~@_-"; + IntroductionPuzzleRequester::IntroductionPuzzleRequester(SQLite3DB::DB *db):IIndexRequester(db) { Initialize(); @@ -73,7 +75,7 @@ const bool IntroductionPuzzleRequester::HandleAllData(FCPv2::Message &message) StringFunctions::SplitMultiple(publickey,"@,",keyparts); StringFunctions::SplitMultiple(xml.GetUUID(),"@",uuidparts); - if(uuidparts.size()>1 && keyparts.size()>1) + if(uuidparts.size()>1 && keyparts.size()>1 && xml.GetUUID().find_first_not_of(m_validuuidchars)==std::string::npos) { keypart=StringFunctions::Replace(StringFunctions::Replace(keyparts[1],"-",""),"~",""); if(keypart!=uuidparts[1])