<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>rlucas.net: The Next Generation &#187; ancient</title>
	<atom:link href="http://blog.rlucas.net/category/ancient/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.rlucas.net</link>
	<description>...fighting entropy one financing round at a time</description>
	<lastBuildDate>Wed, 28 Jul 2010 02:03:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Migrating to new rlucas.net domain for most blogging</title>
		<link>http://blog.rlucas.net/ancient/migrating-to-new-rlucasnet-domain-for-most-blogging/</link>
		<comments>http://blog.rlucas.net/ancient/migrating-to-new-rlucasnet-domain-for-most-blogging/#comments</comments>
		<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ancient]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/rlucas/2006/06/26#a95</guid>
		<description><![CDATA[Gentle reader, This server has gotten so slow, probably thanks to Philip&apos;s blog, that I have finally decided to put up my own server elsewhere.&#160; Other reasons are: I can&apos;t use vim here to edit my entries. I hate the HTML munging that this blog software uses. Despite the PageRank boost of the .harvard.edu domain, [...]]]></description>
			<content:encoded><![CDATA[<p>Gentle reader,</p>
<p>This server has gotten so slow,<br />
probably thanks to <a href="http://blogs.law.harvard.edu/philg">Philip&apos;s blog,</a> that<br />
I have finally decided to put up my own server elsewhere.&nbsp; Other<br />
reasons are:</p>
<ul>
<li>I can&apos;t use vim here to edit my entries.</li>
<li>I hate the HTML munging that this blog software uses.</li>
<li>Despite<br />
the PageRank boost of the .harvard.edu domain, I have decided to opt<br />
for the branding aspect of my long-time username, rlucas, which has<br />
been the local part of my Internet email address since 1993 or<br />
so.</li>
</ul>
<p>And so, I am putting on hold this, my<br />
Berkman blog.&nbsp; I do intend to keep using it for Harvard-specific<br />
things, on occasion, but my technical notes and, newly, my startup and<br />
VC related dispatches, will be found from now on at <a href="http://rlucas.net/blog">my rlucas.net blog.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rlucas.net/ancient/migrating-to-new-rlucasnet-domain-for-most-blogging/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Class::MethodMaker v2 dies with cryptic &quot;Unknown error&quot; in compilation with bad arguments to use / require</title>
		<link>http://blog.rlucas.net/ancient/classmethodmaker-v2-dies-with-cryptic-unknown-error-in-compilation-with-bad-arguments-to-use-require/</link>
		<comments>http://blog.rlucas.net/ancient/classmethodmaker-v2-dies-with-cryptic-unknown-error-in-compilation-with-bad-arguments-to-use-require/#comments</comments>
		<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ancient]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/rlucas/2006/01/08#a90</guid>
		<description><![CDATA[If you use Class::MethodMaker and have a subtle error in your use Class::MethodMaker [ whatever...]; line, such as not quoting a bareword, you can end up with this error: Unknown errorCompilation failed in require.BEGIN failed&#8211;compilation aborted. If this happens, scrutinize your &#8220;use&#8221; lines and especially your C:MM line.If you use Class::MethodMaker and have a subtle [...]]]></description>
			<content:encoded><![CDATA[<p>If you use Class::MethodMaker and have a subtle error in your</p>
<p><span style="font-family: Courier;">use Class::MethodMaker [ whatever...];</span></p>
<p>line, such as not quoting a bareword, you can end up with this error:</p>
<p><span style="font-family: Courier;">Unknown error</span><br style="font-family: Courier;"><span style="font-family: Courier;">Compilation failed in require.</span><br style="font-family: Courier;"><span style="font-family: Courier;">BEGIN failed&#8211;compilation aborted.</span></p>
<p>If this happens, scrutinize your &#8220;use&#8221; lines and especially your C:MM line.If you use Class::MethodMaker and have a subtle error in your</p>
<p><span style="font-family: Courier;">use Class::MethodMaker [ whatever...];</span></p>
<p>line, such as not quoting a bareword, you can end up with this error:</p>
<p><span style="font-family: Courier;">Unknown error</span><br style="font-family: Courier;"><span style="font-family: Courier;">Compilation failed in require.</span><br style="font-family: Courier;"><span style="font-family: Courier;">BEGIN failed&#8211;compilation aborted.</span></p>
<p>If this happens, scrutinize your &#8220;use&#8221; lines and especially your C:MM line.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rlucas.net/ancient/classmethodmaker-v2-dies-with-cryptic-unknown-error-in-compilation-with-bad-arguments-to-use-require/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[FIX] Adobe Reader v.5 fails to open PDF with &quot;There was an error opening this document.  A temporary file could not be opened.&quot;</title>
		<link>http://blog.rlucas.net/ancient/fix-adobe-reader-v5-fails-to-open-pdf-with-there-was-an-error-opening-this-document-a-temporary-file-could-not-be-opened/</link>
		<comments>http://blog.rlucas.net/ancient/fix-adobe-reader-v5-fails-to-open-pdf-with-there-was-an-error-opening-this-document-a-temporary-file-could-not-be-opened/#comments</comments>
		<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ancient]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/rlucas/2005/12/19#a89</guid>
		<description><![CDATA[If you see &#8220;There was an error opening this document. &#160;A temporary file could not be opened.&#8221; when trying to open a PDF file, you may need to clean out C:Documents and SettingsUSERNAMELocal SettingsTempAcr*.tmp Cheers to &#8220;gprellwitz&#8221; who suggests this here: http://www.experts-exchange.com/Web/Graphics/Adobe_Acrobat/Q_20790405.html Jeers to the MSFT developer who decided that &#8220;Documents and Settings&#8221; with spaces [...]]]></description>
			<content:encoded><![CDATA[<p>If you see &#8220;There was an error opening this document. &nbsp;A temporary file could not be opened.&#8221; when trying to open a PDF file, you may need to clean out C:Documents and SettingsUSERNAMELocal SettingsTempAcr*.tmp</p>
<p>Cheers to &#8220;gprellwitz&#8221; who suggests this here:</p>
<p>http://www.experts-exchange.com/Web/Graphics/Adobe_Acrobat/Q_20790405.html</p>
<p>Jeers to the MSFT developer who decided that &#8220;Documents and Settings&#8221; with spaces and mixed caps was a better home directory prefix than &#8220;home&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rlucas.net/ancient/fix-adobe-reader-v5-fails-to-open-pdf-with-there-was-an-error-opening-this-document-a-temporary-file-could-not-be-opened/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[BUG] ActiveRecord woes with SQL Server odd names (spaces and brackets), ntext data types</title>
		<link>http://blog.rlucas.net/ancient/bug-activerecord-woes-with-sql-server-odd-names-spaces-and-brackets-ntext-data-types/</link>
		<comments>http://blog.rlucas.net/ancient/bug-activerecord-woes-with-sql-server-odd-names-spaces-and-brackets-ntext-data-types/#comments</comments>
		<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ancient]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/rlucas/2005/12/01#a86</guid>
		<description><![CDATA[ActiveRecord (latest versions of ODBC, DBI, and AR as of today 2005-12-01) seems to be having trouble with at least two things that SQL Server 7 does: 1. The SQL Server adaptor (sqlserver_adaptor.rb) get_table_name sub expects a name to have no whitespace in it.&#160; The conditional and regex need to be changed to look for [...]]]></description>
			<content:encoded><![CDATA[<p>ActiveRecord (latest versions of ODBC, DBI, and AR as of today<br />
2005-12-01) seems to be having trouble with at least two things that<br />
SQL Server 7 does:</p>
<p>1. The SQL Server adaptor (sqlserver_adaptor.rb) get_table_name sub<br />
expects a name to have no whitespace in it.&nbsp; The conditional and<br />
regex need to be changed to look for bracketed names like [Poorly<br />
Designed Table].&nbsp; Then, the columns sub needs to know to take the<br />
brackets off the ends of the names when it looks up the table by its<br />
textual value.&nbsp; To complicate this, according to<br />
http://msdn2.microsoft.com/en-us/library/ms176027.aspx you can have<br />
either double-quotes or square brackets as your delimiters in SQL<br />
Server names, and you can even escape brackets by doubling.&nbsp; I<br />
have written hackish code that solves for simple [Dumb Name] tables but<br />
not the whole enchilada, so I&apos;m not posting it here yet.</p>
<p>2. The data type &#8220;ntext&#8221; seems to create memory allocation problems; I get an error of:</p>
<p>/usr/lib/ruby/site_ruby/1.8/DBD/ODBC/ODBC.rb:220:in `fetch&apos;: failed to allocate memory (NoMemoryError)</p>
<p>Running this on CYGWIN_NT-5.1 RANDALL-VAIO 1.5.19s(0.141/4/2) 20051102 13:29:13 i686 unknown unknown Cygwin on Win XP Pro.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rlucas.net/ancient/bug-activerecord-woes-with-sql-server-odd-names-spaces-and-brackets-ntext-data-types/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WORKAROUND: Excel for Mac toolbars &quot;trapped&quot; off the screen</title>
		<link>http://blog.rlucas.net/ancient/workaround-excel-for-mac-toolbars-trapped-off-the-screen/</link>
		<comments>http://blog.rlucas.net/ancient/workaround-excel-for-mac-toolbars-trapped-off-the-screen/#comments</comments>
		<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ancient]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/rlucas/2005/10/07#a84</guid>
		<description><![CDATA[If you hook up an external monitor to your Mac OS X machine and run Excel 2004 for Mac on it, you might move your toolbars completely or partially over to the second desktop area. If you then remove the external monitor, it is possible for the toolbars to get &#8220;stuck&#8221; such that only a [...]]]></description>
			<content:encoded><![CDATA[<p>If you hook up an external monitor to your Mac OS X machine and run Excel 2004 for Mac on it, you might move your toolbars completely or partially over to the second desktop area.  If you then remove the external monitor, it is possible for the toolbars to get &#8220;stuck&#8221; such that only a corner (like the resizing corner) is visible.  You can resize them, but not move them back onto your main screen.</p>
<p>You can try to use &#8220;Reset&#8221; in the View:Toolbars:Customize Toolbars/Menus, but that doesn&apos;t work.  There&apos;s some other reset-to-defaults choice somewhere that I tried (and can&apos;t find now) that didn&apos;t work either.  Quitting and restarting does nothing.</p>
<p>Try going into your home directory (/Users/username) and nuking this file:</p>
<p>/Users/username/Library/Preferences/Microsoft/Excel Toolbars (11) </p>
<p>Upon restarting Excel, they were back to normal location.  Problem solved (except for the braindead engineering).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rlucas.net/ancient/workaround-excel-for-mac-toolbars-trapped-off-the-screen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[BUG/WORKAROUND] Microsoft Outlook 2003 / XP can&apos;t import vCard notes field; Entourage on Mac can</title>
		<link>http://blog.rlucas.net/ancient/bugworkaround-microsoft-outlook-2003-xp-cant-import-vcard-notes-field-entourage-on-mac-can/</link>
		<comments>http://blog.rlucas.net/ancient/bugworkaround-microsoft-outlook-2003-xp-cant-import-vcard-notes-field-entourage-on-mac-can/#comments</comments>
		<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ancient]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/rlucas/2005/09/14#a80</guid>
		<description><![CDATA[I am trying to sync my contact information between apps and machines. Here are my absolute, non-negotiable requirements: (&#8220;Works with&#8221; means I can round-trip in the given format &#8212; not necessarily that it is native, and it&apos;s OK if I have to use a tool or a script intermediary since I&apos;ll be scripting this stuff [...]]]></description>
			<content:encoded><![CDATA[<p>I am trying to sync my contact information between apps and machines.  Here are my absolute, non-negotiable requirements:</p>
<p>(&#8220;Works<br />
with&#8221; means I can round-trip in the given format &#8212; not necessarily<br />
that it is native, and it&apos;s OK if I have to use a tool or a script<br />
intermediary since I&apos;ll be scripting this stuff anyhow.)</p>
<p>1. Works with Outlook.</p>
<p>2. Works with Address Book on Mac.</p>
<p>3. Works with abook from the command line.</p>
<p>4. Is editable text in case I need to switch platforms, or do revision control, or any of a host of things.</p>
<p>I<br />
was good with some kind of cobbled-together vCard solution, until I<br />
discovered that MS Outlook 2003 on Windows XP could <span style="font-style: italic;">export</span> note:<br />
fields in .vcf files (oh, and insult to injury &#8212; there is no &#8220;Export&#8221;<br />
option to vCard, you have to do some right-clicky nonsense or else<br />
highlight all your contacts and &#8220;Forward as vCard&#8221;) <span style="font-style: italic;">but would not<br />
import those same notes!</span></p>
<p>Outlook does not round trip a fully-spec&apos;ed RFC standard?!?!  What the hell?</p>
<p>Happily<br />
(?) my workaround is to use MS Entourage for the Mac, which will<br />
round-trip appropriately and sync itself with the Exchange server at my<br />
work.&nbsp; For those who cannot, perhaps there is a VBA<br />
solution.&nbsp; If you have one, please comment; I will update if I<br />
discover how to get Outlook 2003 to accept the notes fields.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rlucas.net/ancient/bugworkaround-microsoft-outlook-2003-xp-cant-import-vcard-notes-field-entourage-on-mac-can/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[HOWTO] Getting your profit-sharing plans rolled out of Fidelity&apos;s non-prototype retirement accounts as qualified distributions to separate IRAs or 401ks.</title>
		<link>http://blog.rlucas.net/ancient/howto-getting-your-profit-sharing-plans-rolled-out-of-fidelitys-non-prototype-retirement-accounts-as-qualified-distributions-to-separate-iras-or-401ks/</link>
		<comments>http://blog.rlucas.net/ancient/howto-getting-your-profit-sharing-plans-rolled-out-of-fidelitys-non-prototype-retirement-accounts-as-qualified-distributions-to-separate-iras-or-401ks/#comments</comments>
		<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ancient]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/rlucas/2005/08/23#a76</guid>
		<description><![CDATA[If you are a small business with a Profit Sharing Plan / defined benefit plan set up through an independent benefit advisor firm, someone may have counseled you to set up your investments at Fidelity.&#160; They will create a &#8220;Non-prototype retirement account&#8221; in the name of your Profit Sharing Plan trust.&#160; You can make trades [...]]]></description>
			<content:encoded><![CDATA[<p>If you are a small business with a Profit Sharing Plan / defined<br />
benefit plan set up through an independent benefit advisor firm,<br />
someone may have counseled you to set up your investments at<br />
Fidelity.&nbsp; They will create a &#8220;Non-prototype retirement account&#8221;<br />
in the name of your Profit Sharing Plan trust.&nbsp; You can make<br />
trades and do what you will (although as of late they refuse to let you<br />
buy funds that have even potentially a short term sales charge, which<br />
really drastically limits you) and it&apos;s all for the big pool of<br />
money.&nbsp; As a &#8220;non-prototype&#8221; plan, Fidelity washes their hands of<br />
the actual record-keeping of who is owed what and how much is vested to<br />
whom, etc.&nbsp; That&apos;s why you&apos;re paying your independent benefits<br />
advisor all those fees each year, right?</p>
<p>When you discover that the costs invoved are so high as to cut<br />
seriously into your returns, you&apos;ll want to dissolve your profit<br />
sharing plan and distribute the assets among the beneficiaries so each<br />
can put his funds into a low cost IRA.&nbsp; Your advisor will have you<br />
prepare corporate resolutions to that effect and tell you to distribute<br />
the funds payable to the IRAs or 401ks of the beneficiaries, so that<br />
they are qualified rollovers and so nobody has to withhold taxes for<br />
the IRS.</p>
<p>Try telling that to Fidelity.&nbsp; If your experience is like mine,<br />
they&apos;ll have no idea, then check on things for you.&nbsp; They&apos;ll come<br />
back and say that they can make a check payable to the Trustees, to the<br />
Plan, or they can do a qualified rollover to Fidelity.&nbsp; They will<br />
swear up and down that they can&apos;t send the money to a &#8220;contra FI&#8221;<br />
(another bank).&nbsp; They&apos;ll transfer you to &#8220;Retail Distribution,&#8221;<br />
who will tell you that they can only pay out to the order of the<br />
trustees, and that maybe you could have your trustees all sign the<br />
check and then cash it at a bank, but that oh, yes, maybe, I suppose<br />
you could get checkwriting privileges on the Fidelity account<br />
itself.&nbsp; If you are unlucky, you might try to do this.</p>
<p>However, if things get more and more fubared on your phone call, you<br />
might get transferred to &#8220;Retirements Department&#8221; where someone puts<br />
you on hold two more times to research and then discovers that yes,<br />
those things mentioned above (only payable to the trustees or via a<br />
Fidelity rollover) are trueish but there is one magical thing to do<br />
otherwise, that will without any fee, cause the funds to be sent to the<br />
new banks and the new IRAs, and that is this.</p>
<p>Prepare a letter containing these magical 5 elements:</p>
<p>1. Direction to Fidelity to make a check payable to &#8220;Contra FI FBO<br />
Employee Name Account&#8221; (e.g., &#8220;Vanguard Funds FBO John Smith Rollover<br />
IRA&#8221;), in an exact dollar amount, and with the address to which to send<br />
that check.</p>
<p>2. Certification by the trustees that the distribution is an &#8220;eligible rollover distribution.&#8221;</p>
<p>3. Statement that the trustees assume all responsibility for<br />
record-keeping for the plan assets and for reporting the distribution<br />
to the IRS for tax purposes.</p>
<p>4. Statement that the trustees indemnify and hold Fidelity harmless for<br />
any liability with respect to processing the direct rollover.</p>
<p>5. Original signature with a bank&apos;s signature guarantee from EACH of<br />
the trustees (each must take the letter to the bank and sign in their<br />
presence).</p>
<p>Send this mystical incantation, the specs of which are not available to phone reps or on the web site, to:</p>
<p>Fidelity Investments<br />
Attn: Distribution Services<br />
PO BOX 770001<br />
Cincy OH 45277-0035</p>
<p>To their (sort of) credit, they had previously hinted to another<br />
trustee that they needed a &#8220;distribution letter,&#8221; but did not mention<br />
the 5 requirements, and when I called back to ask about it, had to put<br />
me on hold 6 times and transfer me twice to get me the magical list of<br />
things to do.&nbsp; My cell phone is now almost out of batteries after<br />
nearly 40 minutes on the line with them.&nbsp; They were certainly<br />
polite about the whole thing but it does seem a bit disingenuous of<br />
them to keep insisting that we roll into Fidelity IRAs and &#8220;forgetting&#8221;<br />
about this handy exception.</p>
<p>Of course, if you do this, you had better be damn sure that your p&apos;s<br />
are crossed and your q&apos;s are dotted with respect to telling Uncle Sam<br />
about the whole thing since Fidelity has now washed its hands of you.</p>
<p>Enjoy your new, rolled-over, low-overhead IRAs and 401ks!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rlucas.net/ancient/howto-getting-your-profit-sharing-plans-rolled-out-of-fidelitys-non-prototype-retirement-accounts-as-qualified-distributions-to-separate-iras-or-401ks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[WARN] MD5 sums irredeemably broken</title>
		<link>http://blog.rlucas.net/ancient/warn-md5-sums-irredeemably-broken/</link>
		<comments>http://blog.rlucas.net/ancient/warn-md5-sums-irredeemably-broken/#comments</comments>
		<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ancient]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/rlucas/2005/08/04#a75</guid>
		<description><![CDATA[The MD5 hash function is dangerously unusable at this point.&#160; I was under the impression, casually following crypto over the last couple years, that it was weak but likely &#8220;good enough&#8221; for non-military, non-banking types of applications.&#160; Dead wrong. There are now known attacks &#8212; and doubtless toolchains for specific exploits &#8212; that permit creating [...]]]></description>
			<content:encoded><![CDATA[<p>The MD5 hash function is dangerously unusable at this point.&nbsp; I<br />
was under the impression, casually following crypto over the last<br />
couple years, that it was weak but likely &#8220;good enough&#8221; for<br />
non-military, non-banking types of applications.&nbsp; Dead wrong.</p>
<p>There are now known attacks &#8212; and doubtless toolchains for specific<br />
exploits &#8212; that permit creating two completely different (but valid)<br />
pieces of plaintext that generate the same MD5 sum.</p>
<p>See http://www.doxpara.com for an example of two mocked-up HTML pages,<br />
one for &#8220;Lockheed&#8221; and one for &#8220;Boeing,&#8221; that share the same MD5 hash<br />
sum.</p>
<p>See also Wikipedia&apos;s MD5 entry (which does not NEARLY sufficiently raise the alarum on this) at http://en.wikipedia.org/wiki/Md5</p>
<p>You might pooh-pooh my admittedly somewhat superficial take on this,<br />
but ignore me at your peril: bad guys are doubtless developing toolkits<br />
for creating two docs, one legit, one malicious, that share the same<br />
MD5 sum.</p>
<p>Bottom line: time to use SHA1 (for a while until someone figures out<br />
how to do the same thing).&nbsp; Simple enough on debian; &#8220;sha1sum&#8221; is<br />
in coreutils and is a seeming drop-in replacement for MD5 sums.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rlucas.net/ancient/warn-md5-sums-irredeemably-broken/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unwire Portland (OR) Project: Public benefit through the &quot;drinking fountain&quot; model</title>
		<link>http://blog.rlucas.net/ancient/unwire-portland-or-project-public-benefit-through-the-drinking-fountain-model/</link>
		<comments>http://blog.rlucas.net/ancient/unwire-portland-or-project-public-benefit-through-the-drinking-fountain-model/#comments</comments>
		<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ancient]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/rlucas/2005/07/26#a74</guid>
		<description><![CDATA[Portland, Oregon is working toward a citywide, privately-operated wireless network, under a public-private partnership model that leverages city rights-of-way, among other assets, in return for certain &#8220;public benefits.&#8221;&#160; I strongly support this effort (the &#8220;Unwire Portland&#8221; project). The issue at hand is that the currently-proposed public benefit structure is to create a &#8220;walled garden&#8221; of [...]]]></description>
			<content:encoded><![CDATA[<p>Portland, Oregon is working toward a citywide, privately-operated<br />
wireless network, under a public-private partnership model that<br />
leverages city rights-of-way, among other assets, in return for certain<br />
&#8220;public benefits.&#8221;&nbsp; I strongly support this effort (the &#8220;Unwire<br />
Portland&#8221; project).</p>
<p>The issue at hand is that the currently-proposed public benefit<br />
structure is to create a &#8220;walled garden&#8221; of hand-picked sites that will<br />
be freely available to the public.&nbsp; A few moments&apos; reflection<br />
should alarm the reader: who will pick these sites, using what criteria<br />
and what process for review, etc.?&nbsp; Who will get sued when someone<br />
inevitably disagrees with the choices?</p>
<p>My answer to these concerns is to do away with the &#8220;walled garden&#8221; and<br />
in its place put a &#8220;drinking fountain&#8221; model, where each passerby may<br />
take a small &#8220;trickle&#8221; of an unrestricted Internet connection for free.</p>
<p>I have put together a document supporting the adoption of the drinking fountain model here: <a href="http://rlucas.tercent.com/wifi.html">http://rlucas.tercent.com/wifi.html</a></p>
<p>Your comments and suggestions are welcome.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rlucas.net/ancient/unwire-portland-or-project-public-benefit-through-the-drinking-fountain-model/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[BUG] Mail::Mailer, Mail::Internet, and MIME::Entity fork / eval oddity</title>
		<link>http://blog.rlucas.net/ancient/bug-mailmailer-mailinternet-and-mimeentity-fork-eval-oddity/</link>
		<comments>http://blog.rlucas.net/ancient/bug-mailmailer-mailinternet-and-mimeentity-fork-eval-oddity/#comments</comments>
		<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ancient]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/rlucas/2005/05/24#a73</guid>
		<description><![CDATA[The Perl module Mail::Mailer, and those modules that rely upon it (at least, Mail::Internet and MIME::Entity), have an undocumented fork that can wreak havoc with your code if you call the send() method within an eval &#123;&#125; block.&#160; The solution is to either be very anal about checking for PIDs or to use a different [...]]]></description>
			<content:encoded><![CDATA[<p>The Perl module Mail::Mailer, and those modules that rely upon it (at<br />
least, Mail::Internet and MIME::Entity), have an undocumented fork that<br />
can wreak havoc with your code if you call the send() method within an<br />
eval &#123;&#125; block.&nbsp; The solution is to either be very anal about<br />
checking for PIDs or to use a different means for sending your<br />
messages, like MIME::Lite.</p>
<p>Briefly, the problem is that the sending procedure forks, using the<br />
open(&#8220;|-&#8221;) idiom to create a filehandle for writing to the child, which<br />
immediately exec()&apos;s a sendmail (or whatever) process.&nbsp; The parent<br />
returns the filehandle, to which is printed the message; the filehandle<br />
is then closed for final sending (this is all hidden in the<br />
Mail::Internet and MIME::Entity classes&apos; send() method).&nbsp; However,<br />
if you are running in taint mode with an insecure path (for one<br />
example), the exec() will fail in the child and will die.</p>
<p>If you were running this in an eval &#123;&#125; block, and didn&apos;t account for<br />
the possibility of a fork within the eval&#123;&#125;, you could find that both<br />
code paths &#8212; the success AND the failure code blocks &#8212; get<br />
executed.&nbsp; Since this is often done for db transactions or other<br />
things that might be shared external resources, this could lead to some<br />
nasty race conditions.</p>
<p>In defense of Mail::Mailer, it is *technically* the job of the coder to<br />
check on forks, but this argument ad absurdum would have every line<br />
that calls module code wrapped in an elaborate eval with checking of<br />
the PIDs.&nbsp; Clearly not OK.</p>
<p>I have explained this bug and opened it up to discussion on<br />
perlmonks.org, at http://perlmonks.org/index.pl?node_id=459739 and have<br />
reported the bug in Mail::Mailer under the MailTools distribution at<br />
http://rt.cpan.org/NoAuth/Bug.html?id=12890</p>
<p>The workaround at present is to either 1. obsessively check the PIDs<br />
before and after the eval, or 2. use MIME::Lite, which appears not to<br />
fork.&nbsp; NOT a valid workaround would be to ignore this becaues your<br />
exec() hasn&apos;t died yet or to turn off taint mode.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rlucas.net/ancient/bug-mailmailer-mailinternet-and-mimeentity-fork-eval-oddity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->