#include "nKrawall.h"
#include "nNetwork.h"
#include "nServerInfo.h"
#include "nNetObject.h"
#include "tString.h"
#include "tArray.h"
#include "tConsole.h"
#include "tSysTime.h"
#include "tMemManager.h"
#include "tRandom.h"
#include <stdlib.h>
#include <string>
#include <vector>
#include <string.h>
Go to the source code of this file.
Functions | |
static void | sn_GetSupportedMethods (std::vector< tString > &toFill) |
static bool | sn_IsSupportedMethod (tString const &method) |
static bool | sn_BothHave (tString const &a, tString const &b, tString const &m) |
static tString | sn_Replace (nKrawall::nScrambleInfo const &info, tString const &original) |
static void | sn_WriteHexByte (std::ostream &s, int c) |
Variables | |
static tString | sn_methodBlacklist ("bmd5") |
static tConfItemLine | sn_methodBlacklistConf ("HASH_METHOD_BLACKLIST", sn_methodBlacklist) |
Definition at line 120 of file nKrawall.cpp.
References tIsInList().
Referenced by nKrawall::nMethod::BestMethod().
static void sn_GetSupportedMethods | ( | std::vector< tString > & | toFill | ) | [static] |
Definition at line 59 of file nKrawall.cpp.
References sn_methodBlacklist, and tIsInList().
Referenced by nKrawall::nMethod::BestMethod(), sn_IsSupportedMethod(), and nKrawall::nMethod::SupportedMethods().
00061 { 00062 char const * protocols[] = { 00063 "md5", 00064 "bmd5", 00065 0 00066 }; 00067 00068 // iterate through methods, starting from best, and return the first that fits 00069 char const * const * run = protocols; 00070 while ( *run ) 00071 { 00072 tString method( *run ); 00073 if ( !tIsInList( sn_methodBlacklist, method ) ) 00074 { 00075 toFill.push_back( method ); 00076 } 00077 ++run; 00078 }
static bool sn_IsSupportedMethod | ( | tString const & | method | ) | [static] |
Definition at line 80 of file nKrawall.cpp.
References sn_GetSupportedMethods().
Referenced by nKrawall::nMethod::ScrambleWithSalt().
00082 { 00083 std::vector< tString > methods; 00084 sn_GetSupportedMethods( methods); 00085 00086 for( std::vector< tString >::iterator iter = methods.begin(); iter != methods.end(); ++iter ) 00087 { 00088 if ( method == *iter ) 00089 { 00090 return true; 00091 } 00092 } 00093 00094 return false;
static tString sn_Replace | ( | nKrawall::nScrambleInfo const & | info, | |
tString const & | original | |||
) | [static] |
Definition at line 170 of file nKrawall.cpp.
References in, and nKrawall::nScrambleInfo::username.
Referenced by nKrawall::nMethod::ScramblePassword().
00172 { 00173 std::istringstream in( static_cast< char const * >( original ) ); 00174 std::ostringstream out; 00175 00176 char s = in.get(); 00177 while ( !in.eof() ) 00178 { 00179 if ( s != '%' || in.eof() ) 00180 { 00181 out.put(s); 00182 } 00183 else 00184 { 00185 s = in.get(); 00186 if ( s == 'u' ) 00187 { 00188 out << info.username; 00189 } 00190 else 00191 { 00192 out << '%' << s; 00193 } 00194 } 00195 00196 s = in.get(); 00197 } 00198 00199 return tString( out.str().c_str() );
static void sn_WriteHexByte | ( | std::ostream & | s, | |
int | c | |||
) | [static] |
Definition at line 310 of file nKrawall.cpp.
Referenced by nKrawall::EncodeScrambledPassword(), and nKrawall::EncodeString().
00312 { 00313 // don't want to rely on filling type iomanip things, never learned how to use them reliably 00314 s << std::hex << std::setfill('0') << std::setw(2) << c; 00315 // s << ( val & 0xF0 ) / 0x10; 00316 // s << ( val & 0x0F );
tString sn_methodBlacklist("bmd5") [static] |
Referenced by sn_GetSupportedMethods().
tConfItemLine sn_methodBlacklistConf("HASH_METHOD_BLACKLIST", sn_methodBlacklist) [static] |