if (!($res = $db->get_results("SELECT HASH,AUTORE,PKEYDEC,DATE FROM {$sesorg}_membri WHERE IS_AUTH='1'", ARRAY_N))) { die("Non riesco a fare la select in {$sesorg}_membri :("); } $togo = $db->num_rows; echo "{$togo} records selected<br>"; foreach ($res as $utente) { $riga = array(); $riga[AUTORE] = $utente[1]; $riga[PKEYDEC] = $utente[2]; $riga[DATE] = $utente[3]; $riga[TYPE] = 2; // Utente $riga[_PRIVATE] = $PRIVKEY; $riga[CPSIGN] = 'AUTH'; // mettere 1 se si vuole che la data utente sia generata ex-novo, 0 se si vuole importarla dalle originali, in tal caso la board deve essere creata in data <= a quella dell'utente più vecchio $res = $core->AddMsg($riga, 0); if ($res[MD5]) { $db->doQuery("INSERT INTO hash_tmp (OLD_HASH,NEW_HASH) VALUES(?,?)", array($utente[0], $res[MD5])); // feedback $feedback++; $accepted++; $togo--; if ($feedback == 100) { echo " (-{$togo})<br>"; $feedback = 0; } echo "|"; flush(); } else { list(, $hex) = unpack("H*", $utente[0]); $cerror += "Utente con hash {$hex} non aggiunto perchè {$res['ERRORE']}<br>";
$admin->ConfTable('FORUM', 'DATA', 'NAME', 'Test Forum DanieleG'); $admin->ConfTable('FORUM', 'DATA', 'ADMIN_NAME', 'DanieleG'); $admin->ConfTable('FORUM', 'DATA', 'DESCRIZIONE', 'Questo è un forum di prova che serve per provare le funzioni'); $admin->ConfTable('FORUM', 'DATA', 'LOGO_URL', 'http://naruteamplus.altervista.org/v4/home/naruteam2.jpg'); $admin->ConfTable('FORUM', 'DATA', 'NOTE', 'Questo forum è aperto solo temporaneamente e serve per prova.<br>Non postate cose illegali plz :)'); #mio hash 0C9BDDA0649DA89CC4F289E57B1CC7A7 $danieleg = pack("H*", '7E025BF04C441DD381BEA1A65BB19126'); # Diamo i permessi di moderazione a me stesso! $admin->EditPerm($danieleg, 20, 'CAN_WRITE_THREAD', 1); # Può scrivere/spostare in NEWS $admin->EditPerm($danieleg, 35, 'CAN_WRITE_THREAD', 1); # Può scrivere/spostare in CESTINO $admin->EditPerm($danieleg, 10, 'IS_MOD', 1); # E' mod $admin->EditPerm($danieleg, 20, 'IS_MOD', 1); # E' mod $admin->EditPerm($danieleg, 25, 'IS_MOD', 1); # E' mod $admin->EditPerm($danieleg, 30, 'IS_MOD', 1); # E' mod $admin->EditPerm($danieleg, 35, 'IS_MOD', 1); # E' mod $admin->EditPerm($danieleg, 'CAN', 'EDIT_ALL_AVAT', 1); # Può modificare tutti gli avatar, firme, e dati di tutti gli utenti (oltre che il titolo) $admin->AuthMem($danieleg); $messaggio['BODY'] = $core->Var2BinDump($admin->ReturnVar()); $messaggio['TITLE'] = 'Valido daniele'; $messaggio['TYPE'] = 1; $messaggio['_PRIVATE'] = base64_decode($PRIVKEY); print $core->AddMsg($messaggio); include "end.php";
$core = new CoreSock(); $forum_id = pack('H*', $config[SHARE][$SNAME][ID]); // got privkey, auth'em! while (list($key, $userhash) = each($_REQUEST['toauth'])) { if (strlen($userhash) != 32) { $std->Error("Selected user hash (id {$key}) has wrong lenght!"); } $member = pack("H*", $userhash); $admin->AuthMem($member); } // TODO: return Warning("Deve essere in formato esadecimale l'HASH membro.") if $memhash=~ /[^a-fA-F0-9]/i; $messaggio['BODY'] = $core->Var2BinDump($admin->ReturnVar()); $messaggio['TITLE'] = 'Valido utenti'; $messaggio['TYPE'] = 1; $messaggio['_PRIVATE'] = base64_decode($PRIVKEY); $risp = $core->AddMsg($messaggio); switch ($risp['ERRORE']) { case '104': $std->Error("Private key not valid!"); break; case -1: $std->Error("The Core didn't accept the message, aborting."); break; case -2: $std->Error("Forum unknown, cannot auth user(s)."); break; case NULL: $std->Error("", "", "User(s) authed, let the spam begin."); break; default: $std->Error("Error receiving response form the core!");
$mreq['FORUM']['ADDMSG']['IS_EDIT']='1'; } else $mreq['FORUM']['ADDMSG']['EDIT_OF']=$MD5_MSG; $mreq['FORUM']['ADDMSG']['MD5']=$MD5_MSG; $nreq['RSA']['FIRMA'][0]['md5']=$MD5_MSG; $nreq['RSA']['FIRMA'][0]['priv_key']=$KEY_DECRYPT; $nreq['RSA']['FIRMA'][0]['priv_pwd']=$privkey; if (!$core->Send($nreq)) $std->Error($lang['reply_core'],$_REQUEST['body']); if (!$risp=$core->Read()) $std->Error ($lang['reply_timeout'],$_REQUEST['body']); $mreq['FORUM']['ADDMSG']['SIGN']=$risp[RSA][FIRMA][$MD5_MSG]; #$mreq[FORUM][ADDMSG]=$REP_DATA; $core->Send($mreq); $risp=$core->Read(); */ $risp = $core->AddMsg($mreq); if (empty($risp[ERRORE])) { // ok, redirect $rurl = "showmsg.php?SEZID=" . $_REQUEST['sezid'] . "&THR_ID=" . $_REQUEST['repof'] . "&pag=last#end_page"; $std->Redirect($lang['reply_thanks'], $rurl, $lang['reply_ok'], $lang['reply_ok']); } else { $std->Error("Error adding reply, error code: " . $risp[ERRORE], $_REQUEST['body']); } /*switch ($risp['FORUM']['ADDMSG']) { case 1: // ok, redirect $rurl="showmsg.php?SEZID=".$_REQUEST['sezid']."&THR_ID=".$_REQUEST['repof']."&pag=last#end_page"; $std->Redirect($lang['reply_thanks'],$rurl,$lang['reply_ok'],$lang['reply_ok']); break; case -2: // error: board not forun