Bravo List

Bravo List (http://www.bvlist.com/index.php)
-   Downloads (http://www.bvlist.com/forumdisplay.php?f=16)
-   -   X-Fusion Tracker (http://www.bvlist.com/showthread.php?t=116)

wMan 15th October 2008 22:32

try to restart your client aslo try another version of your client

Did you check off the "private" option when creating the torrent?
Are you trying to seed the torrent file you created or did you download from the site and seed that one?

http://bvlist.com/tbdev-source/780-t...data-null.html

johnake 17th October 2008 23:11

madakralc
Try this announce.php:
PHP Code:

<?

ob_start
("ob_gzhandler");

require_once(
"include/bittorrent.php");
require_once(
"include/benc.php");



function 
err($msg)
{
    
benc_resp(array("failure reason" => array(type => "string"value => $msg)));
    exit();
}

function 
benc_resp($d)
{
    
benc_resp_raw(benc(array(type => "dictionary"value => $d)));
}

function 
benc_resp_raw($x)
{
    
header("Content-Type: text/plain");
    
header("Pragma: no-cache");
    print(
$x);
}

$req "info_hash:peer_id:!ip:port:uploaded:downloaded:left:!event:!passkey";
foreach (
explode(":"$req) as $x)
{
    if (
$x[0] == "!")
    {
        
$x substr($x1);
        
$opt 1;
    }
    else
        
$opt 0;
    if (!isset(
$_GET[$x]))
    {
        if (!
$opt)
            
err("missing key");
        continue;
    }
    
$GLOBALS[$x] = unesc($_GET[$x]);
}

if (
ENA_PASSKEY && (
        
strlen($passkey) != 32 && 
        @
mysql_num_rows(@mysql_query("SELECT id FROM users WHERE passkey=" sqlesc($passkey))) != 1))
    
err("Invalid passkey! Re-download the .torrent from $BASEURL ($passkey)");
$passkey=sqlesc($passkey);    

foreach (array(
"info_hash","peer_id") as $x)
{
    if (
strlen($GLOBALS[$x]) != 20)
        
err("invalid $x (" strlen($GLOBALS[$x]) . " - " urlencode($GLOBALS[$x]) . ")");
}

//if (empty($ip) || !preg_match('/^(\d{1,3}\.){3}\d{1,3}$/s', $ip))
    
$ip getip();

$port $port;
$downloaded $downloaded;
$uploaded $uploaded;
$left $left;

$rsize 50;
foreach(array(
"num want""numwant""num_want") as $k)
{
    if (isset(
$_GET[$k]))
    {
        
$rsize $_GET[$k];
        break;
    }
}

$agent $_SERVER["HTTP_USER_AGENT"];

// Deny access made with a browser...
//if (ereg("^Mozilla\\/", $agent) || ereg("^Opera\\/", $agent) || ereg("^Links ", $agent) || ereg("^Lynx\\/", $agent))
//    err("torrent not registered with this tracker");

if (!$port || $port 0xffff)
    
err("invalid port");

if (!isset(
$event))
    
$event "";

$seeder = ($left == 0) ? "yes" "no";




$res mysql_query("SELECT id, banned, seeders + leechers AS numpeers, UNIX_TIMESTAMP(added) AS ts FROM torrents WHERE " hash_where("info_hash"$info_hash));

$torrent mysql_fetch_assoc($res);
if (!
$torrent)
    
err("torrent not registered with this tracker");

$torrentid $torrent["id"];

$fields "seeder, peer_id, ip, port, uploaded, downloaded, userid";

$numpeers $torrent["numpeers"];
$limit "";
if (
$numpeers $rsize)
    
$limit "ORDER BY RAND() LIMIT $rsize";
$res mysql_query("SELECT $fields FROM peers WHERE torrent = $torrentid AND connectable = 'yes' $limit");

$resp 'd' benc_str('interval') . 'i' $announce_interval 'e' benc_str('peers') . (($compact = ($_GET['compact'] == 1))?'':'l');
unset(
$self);
while (
$row mysql_fetch_assoc($res))
{
    
$row["peer_id"] = hash_pad($row["peer_id"]);

    if (
$row["peer_id"] === $peer_id)
    {
        
$userid $row["userid"];
        
$self $row;
        continue;
    }
    if(
$compact)
    {
        
$peer_ip explode('.'$row["ip"]);
        
$plist .= pack("C*"$peer_ip[0], $peer_ip[1], $peer_ip[2], $peer_ip[3]). pack("n*", (int)$row["port"]);
    } else {
        
$resp .= "d" .
        
benc_str("ip") . benc_str($row["ip"]) .
        
benc_str("peer id") . benc_str($row["peer_id"]) .
        
benc_str("port") . "i" $row["port"] . "e" .
        
"e";
    }
}

$resp .= ($compact benc_str($plist):''). "ee";

$selfwhere "torrent = $torrentid AND ". (ENA_PASSKEY ?"passkey=$passkey AND ":'') . hash_where("peer_id"$peer_id);

if (!isset(
$self))
{
    
$res mysql_query("SELECT $fields FROM peers WHERE $selfwhere");
    
$row mysql_fetch_assoc($res);
    if (
$row)
    {
        
$userid $row["userid"];
        
$self $row;
    }
}

//// Up/down stats ////////////////////////////////////////////////////////////

if (!isset($self))
{
    if(
ENA_PASSKEY && ENA_PASSKEYLIMITCONNECTIONS)
    {
        
$valid = @mysql_num_rows(@mysql_query("SELECT id FROM peers WHERE torrent=$torrentid AND passkey=$passkey"));
        if (
$valid[0] >= && $seeder == 'no'
            
err("Connection limit exceeded! You may only leech from one location at a time.");
        if (
$valid[0] >= && $seeder == 'yes'
            
err("Connection limit exceeded!");
    }
    
$rz mysql_query("SELECT id, uploaded, downloaded, class FROM users WHERE ip='$ip' AND enabled = 'yes' ". (ENA_PASSKEY "AND passkey=$passkey ":''). "ORDER BY last_access DESC LIMIT 1") or err("Tracker error 2");
    if (
$MEMBERSONLY && mysql_num_rows($rz) == 0)
        
err("Unrecognized host ($ip). Please go to $BASEURL to sign-up or login.");
    
$az mysql_fetch_assoc($rz);
    
$userid $az["id"];

//    if ($left > 0 && $az["class"] < UC_VIP)
    
if ($az["class"] < UC_VIP)
    {
        
$gigs $az["uploaded"] / (1024*1024*1024);
        
$elapsed floor((gmtime() - $torrent["ts"]) / 3600);
        
$ratio = (($az["downloaded"] > 0) ? ($az["uploaded"] / $az["downloaded"]) : 1);
        if (
$ratio 0.5 || $gigs 5$wait 48;
        elseif (
$ratio 0.65 || $gigs 6.5$wait 24;
        elseif (
$ratio 0.8 || $gigs 8$wait 12;
        elseif (
$ratio 0.95 || $gigs 9.5$wait 6;
        else 
$wait 0;
        if ((
$elapsed $wait)&&($seeder == 'no'))
                
err("Not authorized (" . ($wait $elapsed) . "h) - READ THE FAQ!");
    }
}
else
{
    
$upthis max(0$uploaded $self["uploaded"]);
    
$downthis max(0$downloaded $self["downloaded"]);

    if (
$upthis || $downthis 0)
        
mysql_query("UPDATE users SET uploaded = uploaded + $upthis, downloaded = downloaded + $downthis WHERE id=$userid") or err("Tracker error 3");
}

///////////////////////////////////////////////////////////////////////////////

function portblacklisted($port)
{
    
// direct connect
    
if ($port >= 411 && $port <= 413) return true;

    
// bittorrent
    
if ($port >= 6881 && $port <= 6889) return true;

    
// kazaa
    
if ($port == 1214) return true;

    
// gnutella
    
if ($port >= 6346 && $port <= 6347) return true;

    
// emule
    
if ($port == 4662) return true;

    
// winmx
    
if ($port == 6699) return true;

    return 
false;
}

$updateset = array();

if (
$event == "stopped")
{
    if (isset(
$self))
    {
        
mysql_query("DELETE FROM peers WHERE $selfwhere");
        if (
mysql_affected_rows())
        {
            if (
$self["seeder"] == "yes")
                
$updateset[] = "seeders = seeders - 1";
            else
                
$updateset[] = "leechers = leechers - 1";
        }
    }
}
else
{
    if (
$event == "completed")
        
$updateset[] = "times_completed = times_completed + 1";

    if (isset(
$self))
    {
        
mysql_query("UPDATE peers SET uploaded = $uploaded, downloaded = $downloaded, to_go = $left, last_action = NOW(), seeder = '$seeder'"
            
. ($seeder == "yes" && $self["seeder"] != $seeder ", finishedat = " time() : "") . " WHERE $selfwhere");
        if (
mysql_affected_rows() && $self["seeder"] != $seeder)
        {
            if (
$seeder == "yes")
            {
                
$updateset[] = "seeders = seeders + 1";
                
$updateset[] = "leechers = leechers - 1";
            }
            else
            {
                
$updateset[] = "seeders = seeders - 1";
                
$updateset[] = "leechers = leechers + 1";
            }
        }
    }
    else
    {
        if (
portblacklisted($port))
            
err("Port $port is blacklisted.");
        else
        {
            
$sockres = @fsockopen($ip$port$errno$errstr5);
            if (!
$sockres)
                
$connectable "no";
            else
            {
                
$connectable "yes";
                @
fclose($sockres);
            }
        }

        
$ret mysql_query("INSERT INTO peers (connectable, torrent, peer_id, ip, port, uploaded, downloaded, to_go, started, last_action, seeder, userid, agent, uploadoffset, downloadoffset, passkey) VALUES ('$connectable', $torrentid, " sqlesc($peer_id) . ", " sqlesc($ip) . ", $port$uploaded$downloaded$left, NOW(), NOW(), '$seeder', $userid, " sqlesc($agent) . ", $uploaded$downloaded$passkey)");
        if (
$ret)
        {
            if (
$seeder == "yes")
                
$updateset[] = "seeders = seeders + 1";
            else
                
$updateset[] = "leechers = leechers + 1";
        }
    }
}

if (
$seeder == "yes")
{
    if (
$torrent["banned"] != "yes")
        
$updateset[] = "visible = 'yes'";
    
$updateset[] = "last_action = NOW()";
}

if (
count($updateset))
    
mysql_query("UPDATE torrents SET " join(","$updateset) . " WHERE id = $torrentid");

benc_resp_raw($resp);


?>

Reset your passkey and redownload the torrent.
Cheers.

redworm 24th October 2008 02:39

1 Attachment(s)
hi
someone now how fix that:

Attachment 486




with ICGstation 1.0 works fine to here but with Archer template give me that :x

tunad 24th October 2008 23:20

TorrentStrike X-Fusion announce.php problem
 
i have a problem with TorrentStrike X-Fusion.it works to upload files but when a user try to download it do not work........then when i restart my computer and ii start u'torrent it tell's me that it don't recognize my ip address.


please help me

djlee 25th October 2008 12:09

post any code that relates to the problem and can you give a little more detailed description .. im not a tstrike user so the more info the better to help ya

gvalfer 31st October 2008 01:28

Problem in passkeys (x-fusion)
 
2 Attachment(s)
good night ...
I'm using the source x-fusion, but I'm having a problem in passkeys. anyone can help me as the methodology passkeys to work?
no file has changed.

screens:

My tracker screen problem :

Attachment 559

other tracker screen :

Attachment 560

help me please

crztz 19th April 2009 15:21

it's not a config problem. it's a had passkey problem..

the paskey is based on the hash is generated...

if it's not auto generated for every refresh of the upload.php page.. then there is your problem..

I too have the same problem and working on it for 3 days... and still haven't figured it out...

the solution lies in announce.php, download.php ( which seems to be ok).. the download is ok.. upload.php and the mysql tables and the querry



problem long solved...

zasmoker 10th June 2009 21:08

helpzor
 
2 Attachment(s)
Good afternoon

I`m having a small problem with the upload function, it worked great last night when i`v instaled the source ( so it means i did the config as it should be i guess ) and now when i press "Do it" to upload, nothing happens. I`v uploaded a SS and the upload.php maybe that helps .

Sry for English mystakes if any :P
:wallbash:


Edit : I`v tryed a SQL repair for table Torrents ( maybe it helps , still nothing )

Attachment 1446


EDIT: nvm i`v fix it !

Thx tho:drink:

Strikey 1st July 2009 13:59

you need to set up your tracker goto admincp.php like here for example

http://mytracker.com/admincp.php

BBC 6th July 2009 20:09

To change the forum phpbb in smf
 
Evening boys, I want to ask if it is possible to change the forum Phpbb in Smf, because to more congenital me. Aspect your answers thanks thousands

For x-fusion one agrees


All times are GMT +2. The time now is 19:24.

Powered by vBulletin® Version 3.8.11 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions Inc.