summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2007-04-09 18:43:11 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2007-04-09 18:43:11 +0000
commitf94d5010fc8bdb4ee37694e6bb7e32cc7f9cade2 (patch)
treeeb79bdb671670284d11cf5abef862aec4564f21b
parent7fe2cda433bdb585b460718325097d9d4e9cdd20 (diff)
D'oh, this is what causes it to randomly not allow the HMAC, when theres an = in the string, it borks!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6786 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r--src/modules/m_spanningtree/treesocket1.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/modules/m_spanningtree/treesocket1.cpp b/src/modules/m_spanningtree/treesocket1.cpp
index af3117b07..03fa69197 100644
--- a/src/modules/m_spanningtree/treesocket1.cpp
+++ b/src/modules/m_spanningtree/treesocket1.cpp
@@ -286,7 +286,10 @@ std::string TreeSocket::RandString(unsigned int length)
}
for (unsigned int i = 0; i < length; i++)
- out += static_cast<char>((randombuf[i] & 0x7F) | 0x21);
+ {
+ char randchar = static_cast<char>((randombuf[i] & 0x7F) | 0x21);
+ out += (randchar == '=' ? '_' : randchar);
+ }
delete[] randombuf;
return out;