summaryrefslogtreecommitdiff
path: root/web/allpingers/index.wml
diff options
context:
space:
mode:
Diffstat (limited to 'web/allpingers/index.wml')
-rw-r--r--web/allpingers/index.wml114
1 files changed, 114 insertions, 0 deletions
diff --git a/web/allpingers/index.wml b/web/allpingers/index.wml
new file mode 100644
index 0000000..66aa35b
--- /dev/null
+++ b/web/allpingers/index.wml
@@ -0,0 +1,114 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <TITLE>Canonical List of All Pingers</TITLE>
+ <META name="Description" content="Canonical List of All Pingers">
+ <META name="Keywords" content="pinger, stats, statistics, remailer, reliability, anonymous, nym, mixmaster">
+ </HEAD>
+ <BODY bgcolor="#aaaaaa" text="#000000" LINK="#0000ff" ALINK="#ff0000" VLINK="#ff0000">
+ <TABLE cellpadding=0 cellspacing=0 width="100%">
+ <TR><TD colspan=2 bgcolor="#444444"><FONT color="#ffffff"><A href="/"><FONT color="#bbbbff">www.noreply.org</FONT></A> :: All Pingers</FONT></TD></TR>
+ <TR><TD colspan=2 bgcolor="#ffffff">&nbsp;</TD></TR>
+ <TR><TD bgcolor="#ffffff">&nbsp;</TD>
+ <TD bgcolor="#ffffff">
+
+ <h1>Canonical List of All Pingers</h1>
+ <p>
+ <table border=1>
+ <tr>
+ <th>Pinger</th>
+ <th>CPunk V1</th>
+ <th>CPunk V2</th>
+ <th>Mix V1</th>
+ <th>Mix V2</th>
+ <th>rchain</th>
+ <th>PGP Keyring</th>
+ <th>Mix Keyring</th>
+ <th>Comment</th>
+ </tr>
+ <:
+ use warnings;
+ use strict;
+ sub join_links($$) {
+ my ($a, $b) = @_;
+ if (defined $a) {
+ if (defined $b) {
+ return $a.' '.$b;
+ } else {
+ return $a;
+ };
+ } else {
+ if (defined $b) {
+ return $b;
+ } else {
+ return '&nbsp';
+ };
+ };
+ };
+ open(F,"allpingers.txt") or die("Could not open allpingers.txt: $!");
+ my $source;
+ my %pinger;
+ while(<F>) {
+ s/\s*(.*)\s*/$1/;
+ next if (/^\s*#/);
+ $source = $1, next if (/^\[(.*)\]$/);
+ if (/(.+?)\s*=\s*(.+)/) {
+ $pinger{$source}->{$1} = $2 if defined $source;
+ };
+ }
+ close(F);
+ for $source (sort keys %pinger) {
+ print("<TR>\n");
+ printf('<td><a href="%s">%s</a></td>', $pinger{$source}->{base}, $source);
+ my $r1_t = sprintf('<a href="%s">T</a>', $pinger{$source}->{rlist} ) if defined $pinger{$source}->{rlist};
+ my $r1_h = sprintf('<a href="%s">H</a>', $pinger{$source}->{rlist_html} ) if defined $pinger{$source}->{rlist_html};
+ my $r2_t = sprintf('<a href="%s">T</a>', $pinger{$source}->{rlist2} ) if defined $pinger{$source}->{rlist2};
+ my $r2_h = sprintf('<a href="%s">H</a>', $pinger{$source}->{rlist2_html}) if defined $pinger{$source}->{rlist2_html};
+ my $m1_t = sprintf('<a href="%s">T</a>', $pinger{$source}->{mlist} ) if defined $pinger{$source}->{mlist};
+ my $m1_h = sprintf('<a href="%s">H</a>', $pinger{$source}->{mlist_html} ) if defined $pinger{$source}->{mlist_html};
+ my $m2_t = sprintf('<a href="%s">T</a>', $pinger{$source}->{mlist2} ) if defined $pinger{$source}->{mlist2};
+ my $m2_h = sprintf('<a href="%s">H</a>', $pinger{$source}->{mlist2_html}) if defined $pinger{$source}->{mlist2_html};
+ my $rchain_t = sprintf('<a href="%s">T</a>', $pinger{$source}->{rchain} ) if defined $pinger{$source}->{rchain};
+ my $rchain_h = sprintf('<a href="%s">H</a>', $pinger{$source}->{rchain_html}) if defined $pinger{$source}->{rchain_html};
+ my $pgp = sprintf('<a href="%s">ALL</a>', $pinger{$source}->{pgpring} ) if defined $pinger{$source}->{pgpring};
+ my $pgp_rsa = sprintf('<a href="%s">RSA</a>', $pinger{$source}->{pgpring_rsa}) if defined $pinger{$source}->{pgpring_rsa};
+ my $mixring = sprintf('<a href="%s"><code>pubring.mix</code></a>', $pinger{$source}->{mixring} ) if defined $pinger{$source}->{mixring};
+ my $typelist = sprintf('<a href="%s"><code>type2.list</code></a>', $pinger{$source}->{type2list} ) if defined $pinger{$source}->{type2list};
+ my $comment = $pinger{$source}->{comment};
+
+ printf('<td align="center">%s</td>', join_links($r1_t, $r1_h));
+ printf('<td align="center">%s</td>', join_links($r2_t, $r2_h));
+ printf('<td align="center">%s</td>', join_links($m1_t, $m1_h));
+ printf('<td align="center">%s</td>', join_links($m2_t, $m2_h));
+ printf('<td align="center">%s</td>', join_links($rchain_t, $rchain_h));
+ printf('<td align="center">%s</td>', join_links($pgp, $pgp_rsa));
+ printf('<td align="center">%s</td>', join_links($mixring, $typelist));
+ printf('<td align="left">%s</td>', (defined $comment && $comment ne '') ? $comment : '&nbsp');
+
+ print("</TR>\n");
+ }
+ :>
+ </table>
+
+ <p>
+ If anything is wrong/broken/needs to be added/removed please mail the maintainer at <a href="mailto:web@palfrader.org">web@palfrader.org</a>.
+ <p>
+ The canonical list of all pingers in a machine readable format can be
+ found here: <a href="allpingers.txt"><code>allpingers.txt</code></a>.
+ It was last updated <: print scalar gmtime() :>.
+ <p>
+ For testing purposes I've also generated an <a href="allpingers.xml">XML
+ document</a> with all pingers. Feedback especially on the DTD is very
+ much apprechiated.
+
+ #<hr>
+ #<p>
+ #A similar list can be found at Frog's: <a href="http://www.privacyresources.org/frogadmin/Pingers.html">http://www.privacyresources.org/frogadmin/Pingers.html</a>.
+
+ </TD></TR>
+ <TR><TD colspan=2 bgcolor="#ffffff">&nbsp;</TD></TR>
+ <TR><TD colspan=2 bgcolor="#444444"><FONT color="#ffffff"><EM><a href="mailto:web@palfrader.org"><font color="#bbbbff">web@palfrader.org</font></a></EM> -
+ <a href="http://validator.w3.org/check/referer"><font color="#bbbbff">Valid HTML 4.01!</font></a></FONT></TD></TR>
+ </TABLE>
+ </BODY>
+</HTML>