diff --git a/Rocksolid_Light/tools/nocem/nocemlist-new.php b/Rocksolid_Light/tools/nocem/nocemlist-new.php new file mode 100755 index 0000000..9554185 --- /dev/null +++ b/Rocksolid_Light/tools/nocem/nocemlist-new.php @@ -0,0 +1,136 @@ +#!/usr/bin/php +"; +$organization = ""; +$from = "from_address "; +$from_email = " 0) { + $is_header = 0; + } + if ($is_header == 1) { + $lines ++; + $response = str_replace("\t", " ", $response); + // Find article date + if (stripos($response, "Date: ") === 0) { + $date = explode(': ', $response); + } + // Get overview data + if (stripos($response, "Message-ID: ") === 0) { + $id = explode(': ', $response); + } + if (stripos($response, "From: ") === 0) { + $sender = explode(': ', $response, 2); + } + if (stripos($response, "Subject: ") === 0) { + $subject = explode('Subject: ', $response, 2); + } + if (stripos($response, "Newsgroups: ") === 0) { + $newsgroups = explode('Newsgroups: ', $response); + } + } + } + + $nocem_list[] = "# Sender: ".trim($sender[1])."\n# Date: ".trim($date[1])."\n# Subject: ".trim($subject[1])."\n".trim($id[1])." ".trim($newsgroups[1])."\n";; + $count++; +} +$nocem_file = fopen($nocem, "w+"); +$header_file = fopen($headerdat, "w+"); + +$hashtail = hash('crc32', $domain.$organization.$from); +$thishash = hash('crc32', serialize($nocem_list)).$hashtail; + +if($count < 2) { + $article = "article"; +} else { + $article = "articles"; +} + +fwrite($header_file, "Message-ID: <$thishash@$domain>\n"); +fwrite($header_file, "From: $from\n"); +fwrite($header_file, "Newsgroups: $spamgroup\n"); +fwrite($header_file, "Subject: @@NCM NoCeM notice $thishash spam/hide ($count $article)\n"); +fwrite($header_file, "Content-Type: text/plain; charset=utf-8; format=flowed\n"); +fwrite($header_file, "Content-Transfer-Encoding: 8bit\n"); +fwrite($header_file, "Organization: $organization\n"); +fclose($header_file); + +fwrite($nocem_file, "You may use this for hiding articles using NoCeM.\n"); +fwrite($nocem_file, "$scope.\n"); +fwrite($nocem_file, "This list is generated by $from_email.\n\n"); + +fwrite($nocem_file, "This message was signed using the following key:\n"); +fwrite($nocem_file, "$signing_key\n\n"); + +fwrite($nocem_file, "The GPG key needed to verify the signature of cancels\n"); +fwrite($nocem_file, "issued by $from_email is available at:\n"); +fwrite($nocem_file, "$key_location\n\n"); + +fwrite($nocem_file, "For information contact $contact.\n\n"); + +fwrite($nocem_file, "@@BEGIN NCM HEADERS\n"); +fwrite($nocem_file, "Version: 0.93\n"); +fwrite($nocem_file, "Issuer: $from_email\n"); +fwrite($nocem_file, "Type: spam\n"); +fwrite($nocem_file, "Action: hide\n"); +fwrite($nocem_file, "Count: ".$count."\n"); +fwrite($nocem_file, "Notice-ID: ".$thishash."\n"); + +fwrite($nocem_file, "@@BEGIN NCM BODY\n"); + +foreach($nocem_list as $list) { + fwrite($nocem_file, $list); +} + +fwrite($nocem_file, "@@END NCM BODY"); +fclose($nocem_file); +?>