Sorry

This feed does not validate.

In addition, interoperability with the widest range of feed readers could be improved by implementing the following recommendation.

Source: http://www.singleadz.com/cgi-bin/toplist/out.cgi?id=vidsite&url=https%3A//trackgb.online/service/GB/RJ.html

  1. #!/usr/bin/perl
  2. ###########################
  3. ##  AutoRank Pro v4.0.x  ##
  4. #####################################################################
  5. ##  out.cgi - track outgoing hits from the list                    ##
  6. #####################################################################
  7.  
  8. my $DDIR = './data';
  9. my %QRY;
  10.  
  11. eval {
  12.  require "$DDIR/vars.dat";
  13.  main();
  14. };
  15.  
  16. err("$@", 'out.cgi') if( $@ );
  17. exit;
  18.  
  19. #####################################################################
  20. ##  Removing the link back to CGI Works is a copyright violation.  ##
  21. ##  Altering or removing any of the code that is responsible, in   ##
  22. ##  any way, for generating that link is strictly forbidden.       ##
  23. ##  Anyone violating the above policy will have their license      ##
  24. ##  terminated on the spot.  Do not remove that link - ever.       ##
  25. #####################################################################
  26.  
  27. sub main {
  28.  parseget();
  29.  my $id = $QRY{id};
  30.  
  31.  if( -e "$DDIR/members/$id.cnt" ) {
  32.    diskspace("$DDIR/members/$id.cnt");
  33.  
  34.    sysopen(FH, "$DDIR/members/$id.cnt", $O_RDWR) || err("$!", "$id.cnt");
  35.    $ofh = select(FH); $|=1; select($ofh);
  36.    flock(FH, $LOCK_EX);
  37.    my @cd = split(/\|/, <FH>);
  38.  
  39.    $cd[1]++;
  40.    $cd[3]++;
  41.  
  42.    seek(FH, 0, 0);
  43.    print FH join('|', @cd);
  44.    truncate(FH, tell(FH));
  45.    close(FH);
  46.  }
  47.  
  48.  print "Location: $QRY{url}\n\n";
  49.  #print "Content-type: text/html\n\n";
  50. }
  51.  
  52. sub parseget {
  53.  my @pairs = split(/&/, $ENV{'QUERY_STRING'});
  54.  my ($name, $value);
  55.  
  56.  for (@pairs) {
  57.    ($name, $value) = split(/=/, $_);
  58.    $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
  59.    $QRY{$name} = $value;
  60.  }
  61. }
  62.  
  63. sub diskspace {
  64.  my $file = shift;
  65.  my $dir  = $file;
  66.  
  67.  if( $dir =~ /\// ) {
  68.    $dir =~ s/\/[^\/]+$//i;
  69.  }
  70.  else {
  71.    $dir = './';
  72.  }
  73.  
  74.  sysopen(FILE, "$dir/test.file", $O_WRONLY | $O_CREAT) || err("$!", "$file     (Space Test)");
  75.  flock(FILE, $LOCK_EX);
  76.  truncate(FILE, 0);
  77.  print FILE "THIS FILE IS USED TO CHECK FOR FREE DISK SPACE";
  78.  flock(FILE, $LOCK_UN);
  79.  close(FILE);
  80.  mode(0755, "$dir/test.file");
  81.  
  82.  my $size = (-s "$dir/test.file");
  83.  
  84.  fremove("$dir/test.file");
  85.  
  86.  err("No Disk Space Available", $file) if( $size == 0 );
  87. }
  88.  
  89. sub mode {
  90.  my($perms, $file) = @_;
  91.  if( -O $file ) {
  92.    chmod($perms, $file) || err("$!", $file);
  93.  }
  94. }
  95.  
  96. sub fremove {
  97.  my($file) = shift;
  98.  unlink($file) || err("$!", $file);
  99. }
  100.  
  101. sub err {
  102.  my($cause, $file) = @_;
  103.  chomp($cause);
  104.  
  105.  print "Content-type: text/html\n\n";
  106.  print "<pre>\n";
  107.  print "A CGI ERROR HAS OCCURRED\n========================\n";
  108.  print "Error Message     :  $cause\n";  
  109.  print "Accessing File    :  $file\n";
  110.  exit;
  111. }
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda