Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- jSOS by Johurt
- 2015/10/04
- */
- #include <a_samp>
- #include <a_mysql> // MySQL R39-3 - https://github.com/pBlueG/SA-MP-MySQL/releases
- #include <md5> // MD5 - https://github.com/GRGServer/SAMP/blob/master/includes/MD5.inc
- #define MySQL_HOST "******"
- #define MySQL_USER "******"
- #define MySQL_DATA "******"
- #define MySQL_PASS "******"
- #define MYSQL_PLAYERS_TABLE_NAME "`players`"
- #define MYSQL_NAME_FIELD_NAME "`Vardas`"
- #define MYSQL_PASSWORD_FIELD_NAME "`Slaptazodis`"
- #define USE_MYSQL false
- #define DATABASE_FILE_NAME "vLRG.txt"
- #define MAX_LINE_LENGTH 128
- #define QUOTE_1 1
- #define QUOTE_2 3
- #define USE_FILE false
- #define USE_MD5 false
- #define PRINT_CHECK_STEPS false
- enum eACC
- {
- Nick[21],
- Pass[129],
- PassH[33]
- }
- new ACC[][eACC] =
- {
- {"Define_Php", "qweasdzxc", "315EB115D98FCBAD39FFC5EDEBD669C9"},
- {"Tomas_Salala", "barsukas", "C9B0D7906055A1FEC153A284CA0A46A0"},
- {"Arnelis_Sumus", "whitesd78fsa", "6776660DAA76EBB7C446DD172C239CD4"}
- };
- new MYSQL_ARG, MAX = sizeof(ACC), st;
- main() print("\n\n\n\n\n\n\n\n\n\n");
- public OnGameModeInit()
- {
- #if USE_FILE
- ExportDatabaseDataViaTXT();
- #endif
- #if USE_MYSQL
- MYSQL_ARG = mysql_connect(MySQL_HOST, MySQL_USER, MySQL_DATA, MySQL_PASS);
- new stats[100];
- mysql_stat(stats);
- print(stats);
- mysql_log(LOG_ERROR | LOG_WARNING, LOG_TYPE_TEXT);
- StartCheckInfo();
- #endif
- #if !USE_FILE && !USE_MYSQL
- print("SERVERIS: Tai kam tu mane pajungei?");
- SendRconCommand("exit");
- #endif
- #if USE_FILE && USE_MYSQL
- print("SERVERIS: Nedaryk taip!");
- SendRconCommand("exit");
- #endif
- return 1;
- }
- public OnGameModeExit()
- {
- #if USE_MYSQL
- mysql_close();
- #endif
- return 1;
- }
- public OnQueryError(errorid, error[], callback[], query[], connectionHandle)
- {
- printf("Error: %s | callback: %s", error, callback);
- if(errorid == 2006)
- {
- print("MySQL: Nepavyko prisijugti prie duomenu bazes.");
- SendRconCommand("exit");
- }
- return 1;
- }
- forward CheckResult(id);
- public CheckResult(id)
- {
- new rows, fields;
- cache_get_data(rows, fields);
- if(rows) printf("[+] %s slaptazodis sutampa!", ACC[id][Nick]);
- #if PRINT_CHECK_STEPS
- printf("Step... %d/%d", id + 1, MAX);
- #endif
- if(id + 1 == MAX) printf("Done... After %dMS", GetTickCount() - st);
- return 1;
- }
- stock StartCheckInfo()
- {
- st = GetTickCount();
- #if USE_MD5
- new str[168];
- for(new c; c < MAX; c++)
- {
- format(str, 168, "SELECT null FROM "MYSQL_PLAYERS_TABLE_NAME" WHERE "MYSQL_NAME_FIELD_NAME" = '%s' AND "MYSQL_PASSWORD_FIELD_NAME" = '%s'", ACC[c][Nick], ACC[c][PassH]);
- mysql_function_query(MYSQL_ARG, str, true, "CheckResult", "d", c);
- }
- #else
- new str[264];
- for(new c; c < MAX; c++)
- {
- format(str, 264, "SELECT null FROM "MYSQL_PLAYERS_TABLE_NAME" WHERE "MYSQL_NAME_FIELD_NAME" = '%s' AND "MYSQL_PASSWORD_FIELD_NAME" = '%s'", ACC[c][Nick], ACC[c][Pass]);
- mysql_function_query(MYSQL_ARG, str, true, "CheckResult", "d", c);
- }
- #endif
- return 1;
- }
- stock ExportDatabaseDataViaTXT()
- {
- new buf[2048], File:handle = fopen(DATABASE_FILE_NAME, io_read), c, kelintas, kur[4], i, vardas[21], slaptazodis[129];
- if(handle)
- {
- while(fread(handle, buf))
- {
- i = 0;
- kelintas = 0;
- for(c = 0; c < MAX_LINE_LENGTH; c++)
- {
- if(buf[c] == 0x27)
- {
- kelintas ++;
- if(!(kelintas == QUOTE_1 || kelintas == QUOTE_1 + 1 || kelintas == QUOTE_2 || kelintas == QUOTE_2 + 1)) continue;
- i++;
- switch(kelintas)
- {
- case QUOTE_1: kur[0] = c;
- case QUOTE_1 + 1: kur[1] = c;
- case QUOTE_2: kur[2] = c;
- case QUOTE_2 + 1: kur[3] = c;
- }
- if(i > 3) break;
- }
- }
- strmid(vardas, buf, kur[0] + 1, kur[1]);
- strmid(slaptazodis, buf, kur[2] + 1, kur[3]);
- #if USE_MD5
- printf("{%c%s%c, %c%s%c, %c%s%c},", 0x22, vardas, 0x22, 0x22, slaptazodis, 0x22, 0x22, MD5_Hash(slaptazodis), 0x22);
- #else
- printf("{%c%s%c, %c%s%c, %c-%c},", 0x22, vardas, 0x22, 0x22, slaptazodis, 0x22, 0x22, 0x22);
- #endif
- }
- fclose(handle);
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement