diff options
author | Peter Palfrader <peter@palfrader.org> | 2004-11-15 09:20:11 +0000 |
---|---|---|
committer | Peter Palfrader <peter@palfrader.org> | 2004-11-15 09:20:11 +0000 |
commit | 5e95090defff64bc8cd7a318a73aa930948fb66d (patch) | |
tree | d977ded4207e51914d539b0ecd20b8583d37c8ea /web/allpingers/index.wml | |
parent | 6c3e0ba0a82307abf825bf1cde85638464ab1713 (diff) |
Initial import
Diffstat (limited to 'web/allpingers/index.wml')
-rw-r--r-- | web/allpingers/index.wml | 114 |
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"> </TD></TR> + <TR><TD bgcolor="#ffffff"> </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 ' '; + }; + }; + }; + 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 : ' '); + + 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"> </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> |