diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-11-12 22:19:42 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-11-12 22:19:42 +0000 |
commit | 2715adbcf7c6127900717bde2bbd7fe946a53800 (patch) | |
tree | ef535f89ca499e96867384c0076518c8fb5b37a1 | |
parent | 786f36abc4401dc8887761ce57ddb2c9b979c9bd (diff) |
Make the output table chosen be unique to the actual ip so that the octet values are non-reversible.
e.g. we cant figure out "if the first digit of my ip is 128, and the first value of my cloak is 09FAC, then all users with an 09FAC in them have a 128 in their ip"
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5726 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r-- | src/modules/m_cloaking.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/modules/m_cloaking.cpp b/src/modules/m_cloaking.cpp index bc2873842..c1236765e 100644 --- a/src/modules/m_cloaking.cpp +++ b/src/modules/m_cloaking.cpp @@ -356,10 +356,10 @@ class CloakUser : public ModeHandler std::string octet3 = seps.GetToken(); std::string octet4 = seps.GetToken(); ServerInstance->Log(DEBUG,"oct1=%s, oct2=%s, oct3=%s, oct4=%s", octet1.c_str(), octet2.c_str(), octet3.c_str(), octet4.c_str()); - this->GenHash(octet1.c_str(),ra1, key1 % 4); - this->GenHash(octet2.c_str(),ra2, key2 % 4); - this->GenHash(octet3.c_str(),ra3, key3 % 4); - this->GenHash(octet4.c_str(),ra4, key4 % 4); + this->GenHash(octet1.c_str(),ra1, (key1+atoi(octet1.c_str())) % 4); + this->GenHash(octet2.c_str(),ra2, (key2+atoi(octet2.c_str())) % 4); + this->GenHash(octet3.c_str(),ra3, (key3+atoi(octet3.c_str())) % 4); + this->GenHash(octet4.c_str(),ra4, (key4+atoi(octet4.c_str())) % 4); ServerInstance->Log(DEBUG,"ra1=%s, ra2=%s, ra3=%s, ra4=%s", ra1, ra2, ra3, ra4); /* This is safe as we know the length generated by our genhash is always 16 */ ra1[8] = ra2[8] = ra3[8] = ra4[8] = 0; |