<?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>LI Tech Blog</title>
	<atom:link href="http://techblog.lucidillusion.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://techblog.lucidillusion.org</link>
	<description>Tech Notes and Problem Solutions</description>
	<lastBuildDate>Sat, 19 Sep 2009 19:59:40 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Xerox Phaser 6120 on Mac OS X 10.6 &#8220;Snow Leopard&#8221;</title>
		<link>http://techblog.lucidillusion.org/2009/09/04/xerox-phaser-6120-on-mac-os-x-10-6-snow-leopard/</link>
		<comments>http://techblog.lucidillusion.org/2009/09/04/xerox-phaser-6120-on-mac-os-x-10-6-snow-leopard/#comments</comments>
		<pubDate>Fri, 04 Sep 2009 18:20:51 +0000</pubDate>
		<dc:creator>jgraham</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://techblog.lucidillusion.org/2009/09/04/xerox-phaser-6120-on-mac-os-x-10-6-snow-leopard/</guid>
		<description><![CDATA[Update: It appears that Xerox is now distributing a 10.6 &#8220;Snow Leopard&#8221; driver package on their website.

According to the Xerox website the Phaser 6120 is not supported in Snow Leopard.  However if one downloads the custom PPD file from the OpenPrinting database the printer works perfectly.
Full instructions follow:

On the 6120 page:
http://www.openprinting.org/show_printer.cgi?recnum=Xerox-Phaser_6120
Right click on Custom [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Update:</strong> It appears that Xerox is now distributing a 10.6 &#8220;Snow Leopard&#8221; <a href="http://www.support.xerox.com/go/results.asp?Xtype=download&amp;prodID=6120&amp;Xlang=en_US&amp;Xcntry=USA">driver package on their website</a>.</p>
<hr />
<p>According to the <a href="http://download.support.xerox.com/pub/drivers/Compatibility_Matrix/other/macosx/en/MacOSX10-6_Matrix.pdf">Xerox website</a> the Phaser 6120 is not supported in Snow Leopard.  However if one downloads the custom PPD file from the <a href="http://www.openprinting.org">OpenPrinting database</a> the printer works perfectly.</p>
<p>Full instructions follow:</p>
<p><span id="more-21"></span></p>
<p>On the 6120 page:</p>
<p><a href="http://www.openprinting.org/show_printer.cgi?recnum=Xerox-Phaser_6120">http://www.openprinting.org/show_printer.cgi?recnum=Xerox-Phaser_6120</a></p>
<p>Right click on <strong>Custom PPD</strong> to the right of <em>Recommended driver</em> and choose <em>Download Linked File As&#8230;</em>.</p>
<p>In <strong>System Preferences</strong> -> <strong>Print &amp; Fax</strong> click the <strong>+</strong> to add a new printer.  Select your printer, wait for the system to choose &#8220;Generic PostScript Printer&#8221; under Print Using.  Change <strong>Print Using</strong> to <strong>Other&#8230;</strong> and browse to the file you downloaded.  The value in <strong>Print Using</strong> will change to <em>Phaser 6120 PS</em>.  Click <strong>Add</strong>, check any options you have installed on your printer, click <strong>Continue</strong> and you are done.</p>
<p>On my system everything works correctly when printing over the network.  I didn&#8217;t test USB but I have no reason to doubt that this driver will work for USB as well.</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.lucidillusion.org/2009/09/04/xerox-phaser-6120-on-mac-os-x-10-6-snow-leopard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creating an empty git branch and pushing it remotely</title>
		<link>http://techblog.lucidillusion.org/2009/08/08/creating-an-empty-git-branch-and-pushing-it-remotely/</link>
		<comments>http://techblog.lucidillusion.org/2009/08/08/creating-an-empty-git-branch-and-pushing-it-remotely/#comments</comments>
		<pubDate>Sat, 08 Aug 2009 20:49:38 +0000</pubDate>
		<dc:creator>jgraham</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://techblog.lucidillusion.org/?p=18</guid>
		<description><![CDATA[Say you wanted to create an empty branch of an existing git repository.  That is a new branch with no history, say to track your project docs.

Be sure that you don&#8217;t have any pending changes in your workspace before executing these commands.
$ cd ~/my-git-repo
$ git symbolic-ref HEAD refs/heads/docs
$ git rm &#8211;cached -r .
$ rm -fr [...]]]></description>
			<content:encoded><![CDATA[<p>Say you wanted to create an empty branch of an existing git repository.  That is a new branch with no history, say to track your project docs.</p>
<blockquote><p><span id="more-18"></span></p></blockquote>
<p>Be sure that you don&#8217;t have any pending changes in your workspace before executing these commands.</p>
<blockquote><p>$ cd ~/my-git-repo<br />
$ git symbolic-ref HEAD refs/heads/docs<br />
$ git rm &#8211;cached -r .<br />
$ rm -fr *<br />
$ git commit &#8211;allow-empty -m &#8220;Initialized docs branch.&#8221;<br />
$ git push origin docs</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://techblog.lucidillusion.org/2009/08/08/creating-an-empty-git-branch-and-pushing-it-remotely/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Checking for DNS Poisoning Vulnerability</title>
		<link>http://techblog.lucidillusion.org/2008/07/15/checking-for-dns-poisoning-vulnerability/</link>
		<comments>http://techblog.lucidillusion.org/2008/07/15/checking-for-dns-poisoning-vulnerability/#comments</comments>
		<pubDate>Tue, 15 Jul 2008 23:45:28 +0000</pubDate>
		<dc:creator>jgraham</dc:creator>
				<category><![CDATA[Servers]]></category>
		<category><![CDATA[BIND]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[ISC]]></category>
		<category><![CDATA[Poison]]></category>
		<category><![CDATA[Test]]></category>
		<category><![CDATA[Vulnerability]]></category>

		<guid isPermaLink="false">http://techblog.lucidillusion.org/2008/07/15/checking-for-dns-poisoning-vulnerability/</guid>
		<description><![CDATA[Just a quick way to test and see if your DNS servers are vulnerable to the latest DNS Cache Poisoning vulnerability (CVE-2008-1447).
From: https://www.dns-oarc.net/oarc/services/porttest
$ dig @4.2.2.3 +short porttest.dns-oarc.net TXT
Replacing 4.2.2.3 with the IP address of your DNS server(s).
]]></description>
			<content:encoded><![CDATA[<p>Just a quick way to test and see if your DNS servers are vulnerable to the latest DNS Cache Poisoning vulnerability (<a href="http://nvd.nist.gov/nvd.cfm?cvename=CVE-2008-1447">CVE-2008-1447</a>).</p>
<p>From: <a href="https://www.dns-oarc.net/oarc/services/porttest">https://www.dns-oarc.net/oarc/services/porttest</a></p>
<p><tt>$ dig @4.2.2.3 +short porttest.dns-oarc.net TXT</tt></p>
<p>Replacing 4.2.2.3 with the IP address of your DNS server(s).</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.lucidillusion.org/2008/07/15/checking-for-dns-poisoning-vulnerability/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bookmarks Not Synchronizing Over .Mac In 10.5.3</title>
		<link>http://techblog.lucidillusion.org/2008/05/15/bookmarks-not-synchronizing-over-mac-in-1053/</link>
		<comments>http://techblog.lucidillusion.org/2008/05/15/bookmarks-not-synchronizing-over-mac-in-1053/#comments</comments>
		<pubDate>Fri, 16 May 2008 00:35:30 +0000</pubDate>
		<dc:creator>jgraham</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[.Mac]]></category>
		<category><![CDATA[10.5]]></category>
		<category><![CDATA[10.5.3]]></category>
		<category><![CDATA[Bookmarks]]></category>
		<category><![CDATA[Leopard]]></category>
		<category><![CDATA[Safari]]></category>
		<category><![CDATA[Sync]]></category>

		<guid isPermaLink="false">http://techblog.lucidillusion.org/2008/05/15/bookmarks-not-synchronizing-over-mac-in-1053/</guid>
		<description><![CDATA[After a recent security update I noticed that my bookmarks were no longer synchronizing over .Mac between any of my systems.  To fix the issue I had to unregister and reregister Safari&#8217;s sync client.  Open a terminal and run: /Applications/Safari.app/Contents/SafariSyncClient.app/Contents/MacOS/SafariSyncClient --unregistersyncclient com.apple.Safari This will return NO, then run /Applications/Safari.app/Contents/SafariSyncClient.app/Contents/MacOS/SafariSyncClient --register which should return [...]]]></description>
			<content:encoded><![CDATA[<p>After a recent security update I noticed that my bookmarks were no longer synchronizing over .Mac between any of my systems.  To fix the issue I had to unregister and reregister Safari&#8217;s sync client.  Open a terminal and run: <tt>/Applications/Safari.app/Contents/SafariSyncClient.app/Contents/MacOS/SafariSyncClient --unregistersyncclient com.apple.Safari</tt> This will return NO, then run <tt>/Applications/Safari.app/Contents/SafariSyncClient.app/Contents/MacOS/SafariSyncClient --register</tt> which should return YES.</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.lucidillusion.org/2008/05/15/bookmarks-not-synchronizing-over-mac-in-1053/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rebuilding Software RAID Arrays in OS X 10.5 Leopard</title>
		<link>http://techblog.lucidillusion.org/2008/04/10/rebuilding-software-raid-arrays-in-os-x-105-leopard/</link>
		<comments>http://techblog.lucidillusion.org/2008/04/10/rebuilding-software-raid-arrays-in-os-x-105-leopard/#comments</comments>
		<pubDate>Thu, 10 Apr 2008 12:09:38 +0000</pubDate>
		<dc:creator>jgraham</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[10.5]]></category>
		<category><![CDATA[Degraded]]></category>
		<category><![CDATA[Leopard]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[RAID]]></category>
		<category><![CDATA[Rebuild]]></category>

		<guid isPermaLink="false">http://techblog.lucidillusion.org/2008/04/10/rebuilding-software-raid-arrays-in-os-x-105-leopard/</guid>
		<description><![CDATA[While moving some data between drives today I decided to test the drive build functionality of my external RAID array.
I have an IOI FWBU2SATA35DMR Firewire/USB enclosure with two 500GB SATA drives in a RAID 1 configuration.  Following the instructions I powered down the array, removed one of the disks, powered it back up, wrote [...]]]></description>
			<content:encoded><![CDATA[<p>While moving some data between drives today I decided to test the drive build functionality of my external RAID array.<br />
I have an <a href="http://www.ioi.com.tw/">IOI</a> <a href="http://www.ioi.com.tw/products/proddetail.aspx?ProdID=1030075">FWBU2SATA35DMR</a> Firewire/USB enclosure with two 500GB SATA drives in a RAID 1 configuration.  Following the instructions I powered down the array, removed one of the disks, powered it back up, wrote some data, powered the array down and reinstalled the second drive.  To my dismay instead of rebuilding the second disk the drive would begin the rebuild (indicated by the status lights) and then immediately return to 1 good 1 failed.  I let this run for a good 12 hours without luck.</p>
<p>So I decided that for my needs the software RAID supplied by OS X would be sufficient.  Off to Disk Utility to build the set.  Disk Utility allows you to create a mirrored RAID array in a degraded state (preserving any data on the drive) and then add members to the array and rebuild.  I created the initial array with a single partition member and then attempted to add the second partition only to receive <strong><tt>Unrecognized Filesystem</tt></strong>.</p>
<p><span id="more-8"></span></p>
<p>I guessed that this was an issue with the Disk Utility interface and not the underlying software RAID so I decided to give it a try from the command line.  Sure enough it worked right away.  Here are the commands to add a disk or partition to an existing software RAID array:</p>
<p><strong>Be very careful when running these commands!</strong> If the wrong device is selected you can <strong>easily destroy an entire disk of data!</strong></p>
<p>Get a list of device names with:</p>
<pre># diskutil list</pre>
<p>Next find the <strong>Unique ID</strong> for your RAID array:</p>
<pre># diskutil checkRAID</pre>
<p>Finally, add the new member to the array.  Replace <em>AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE</em> with the Unique ID obtained above and <em>diskXsX</em> with the appropriate device:</p>
<pre># diskutil addToRAID member /dev/diskXsX AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE</pre>
<p>The array should automatically begin to rebuild itself.  You can check by re-issuing the <tt>diskutil checkRAID</tt> command.  The rebuild status will automatically be shown if Disk Utility is launched.</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.lucidillusion.org/2008/04/10/rebuilding-software-raid-arrays-in-os-x-105-leopard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Random blank/black X sessions with GDM on a Dell GX280 running CentOS 5</title>
		<link>http://techblog.lucidillusion.org/2008/03/06/random-blankblack-x-sessions-with-gdm-on-a-dell-gx280-running-centos-5/</link>
		<comments>http://techblog.lucidillusion.org/2008/03/06/random-blankblack-x-sessions-with-gdm-on-a-dell-gx280-running-centos-5/#comments</comments>
		<pubDate>Thu, 06 Mar 2008 12:15:08 +0000</pubDate>
		<dc:creator>jgraham</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[black]]></category>
		<category><![CDATA[blank]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[Dell]]></category>
		<category><![CDATA[GDM]]></category>
		<category><![CDATA[GX280]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[mouse]]></category>
		<category><![CDATA[X]]></category>
		<category><![CDATA[X11]]></category>

		<guid isPermaLink="false">http://techblog.lucidillusion.org/2008/03/06/random-blankblack-x-sessions-with-gdm-on-a-dell-gx280-running-centos-5/</guid>
		<description><![CDATA[While upgrading a lab of Dell GX280 systems to CentOS 5 today I ran into a bit of a snag.  Seemingly at random when the system initially started or returned to the GDM login screen the user would get a black screen.  The system still responded on the network, could be switched to [...]]]></description>
			<content:encoded><![CDATA[<p>While upgrading a lab of Dell GX280 systems to <a href="http://www.centos.org/">CentOS</a> 5 today I ran into a bit of a snag.  Seemingly at random when the system initially started or returned to the GDM login screen the user would get a black screen.  The system still responded on the network, could be switched to VTs and the GDM screen would correctly display after a few <tt>gdm-restart</tt> commands.  I found <a href="http://bugs.centos.org/view.php?id=2223">this bug report</a> but no solution.  I did notice that when the screen was blank if the mouse was moved up, till it the cursor (were it visible) would hit the top of the screen, the GDM screen would pop up and function normally.</p>
<p><span id="more-7"></span></p>
<p>I fully realize that this is very hackish and should not be used as a long term solution but it works in this case to eliminate user confusion until a real fix is found.  All instructions assume file paths and conventions in CentOS but should work with minor modifications anywhere else this problem is encountered.</p>
<p>A bit of searching turned up <a href="http://www.semicomplete.com/projects/xdotool/">xdotool</a>, a command for simulating keyboard and mouse input using the X11 XTEST module.</p>
<p>I created an RPM spec file that will download and build and xdotool package, available here: <a href="http://pastie.textmate.org/162710">http://pastie.textmate.org/162710</a></p>
<p>Once <tt>xdrtool</tt> is installed do the following:</p>
<ol>
<li>Edit your <tt>/etc/X11/xorg.conf</tt>, add <tt>Load "xtest"</tt> to the <strong>Module</strong> section</li>
<li>Copy <tt>/etc/gdm/Init/Default</tt> to <tt>/etc/gdm/Init/:0</tt></li>
<li> Edit <tt>/etc/gdm/Init/:0</tt> to include something similar to this towards the bottom: <br />
<blockquote>
<pre>(sleep 1 ; xdotool mousemove 0 0 ; sleep 1 ; xdotool mousemove 640 450) &amp;</pre>
</blockquote>
</li>
</ol>
<p>This will cause the pointer to jump to the upper left corner of the screen and then back to the center just after GDM starts.  At the moment this appears to reliably work around the problem.</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.lucidillusion.org/2008/03/06/random-blankblack-x-sessions-with-gdm-on-a-dell-gx280-running-centos-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Patching neon on OS X 10.5 for GSSAPI authenticated SubVersion</title>
		<link>http://techblog.lucidillusion.org/2007/11/20/patching-neon-on-os-x-105-for-gssapi-authenticated-subversion/</link>
		<comments>http://techblog.lucidillusion.org/2007/11/20/patching-neon-on-os-x-105-for-gssapi-authenticated-subversion/#comments</comments>
		<pubDate>Tue, 20 Nov 2007 06:46:22 +0000</pubDate>
		<dc:creator>jgraham</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[10.5]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[GSSAPI]]></category>
		<category><![CDATA[Leopard]]></category>
		<category><![CDATA[libneon]]></category>
		<category><![CDATA[neon]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[patch]]></category>
		<category><![CDATA[SSO]]></category>
		<category><![CDATA[Subversion]]></category>
		<category><![CDATA[SVN]]></category>

		<guid isPermaLink="false">http://techblog.lucidillusion.org/2007/11/21/patching-neon-on-os-x-105-for-gssapi-authenticated-subversion/</guid>
		<description><![CDATA[Today I was attempting to configure Apache (2.2) to control access to my SubVersion repositories using mod_auth_kerb and I hit a snag when attempting to access repositories from Leopard clients.

I installed mod_auth_kerb and configured apache with the following directives in the /svn location:

AuthType Kerberos
AuthName "Kerberos Login"
KrbMethodNegotiate On
KrbSaveCredentials On
KrbAuthoritative on
KrbAuthRealms EXAMPLE.COM
KrbServiceName HTTP
KrbVerifyKDC On
Krb5KeyTab /etc/apache2/apache2.keytab

The /etc/apache2/apache2.keytab file [...]]]></description>
			<content:encoded><![CDATA[<p>Today I was attempting to configure <a href="http://httpd.apache.org/">Apache</a> (2.2) to control access to my <a href="http://subversion.tigris.org/">SubVersion</a> repositories using <a href="http://modauthkerb.sourceforge.net/">mod_auth_kerb</a> and I hit a snag when attempting to access repositories from Leopard clients.</p>
<p><span id="more-6"></span></p>
<p>I installed mod_auth_kerb and configured apache with the following directives in the <tt>/svn</tt> location:</p>
<blockquote>
<pre>AuthType Kerberos
AuthName "Kerberos Login"
KrbMethodNegotiate On
KrbSaveCredentials On
KrbAuthoritative on
KrbAuthRealms EXAMPLE.COM
KrbServiceName HTTP
KrbVerifyKDC On
Krb5KeyTab /etc/apache2/apache2.keytab</pre>
</blockquote>
<p>The <tt>/etc/apache2/apache2.keytab</tt> file contains the <strong>HTTP/servername@EXAMPLE.COM</strong> principle.</p>
<p>With the appropriate AuthZ configuration I was able to preform all operations as expected from Linux and OS X 10.4 (Tiger) clients.  However on Leopard clients all operations resulted in:</p>
<blockquote>
<pre>svn: PROPFIND request failed on '/svn/reponame'
svn: PROPFIND of '/svn/reponame': 207 Multi-Status (https://example.com)</pre>
</blockquote>
<p>In the web-server logs everything seemed fine:</p>
<blockquote>
<pre>[client xxx.xxx.xxx.xxx] Access granted: 'princ@EXAMPLE.COM' PROPFIND reponame:/</pre>
</blockquote>
<p>So I set the <tt>neon-debug-mask = 138</tt> in the <strong>[Global]</strong> section of <tt>~/.subversion/servers</tt> and attempted the update again.  Right at the end:</p>
<blockquote>
<pre>Running post_send hooks
ah_post_send (#1), code is 207 (want 401), WWW-Authenticate is Negotiate [output snipped]
gssapi: Not a Negotiate response!
Request ends, status 207 class 2xx, error line:
207 Multi-Status
Running destroy hooks.
Request ends.
svn: PROPFIND request failed on '/svn/reponame'
svn: PROPFIND of '/svn/reponame': 207 Multi-Status (https://example.com)</pre>
</blockquote>
<p>A bit more googling turned up a patch.  So I downloaded the Apple sources form <a href="http://www.opensource.apple.com/darwinsource/tarballs/other/neon-8.tar.gz">http://www.opensource.apple.com/darwinsource/tarballs/other/neon-8.tar.gz</a>, decompressed them and applied a simple 1 line patch to <tt>src/ne_auth.c</tt>:</p>
<blockquote>
<pre>--- ne_auth.c.orig	2007-11-22 00:37:54.000000000 -0600
+++ ne_auth.c	2007-11-22 00:37:38.000000000 -0600
@@ -520,5 +520,5 @@
     int ret;

-    if (strncmp(hdr, "Negotiate", ptr - hdr) != 0) {
+    if (strncmp(hdr, "Negotiate", ptr - duphdr) != 0) {
         NE_DEBUG(NE_DBG_HTTPAUTH, "gssapi: Not a Negotiate response!\n");
         ne_free(duphdr);</pre>
</blockquote>
<p>After a quick compile and install (to a temporary root) I copied the new <tt>usr/lib/libneon.26.0.3.dylib</tt> file into <tt>/usr/lib</tt> [making a backup of the original of course] and now subversion works perfectly.</p>
<p>Bug is radr://5610623</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.lucidillusion.org/2007/11/20/patching-neon-on-os-x-105-for-gssapi-authenticated-subversion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SSL Connections in Ruby with ruby-postgres</title>
		<link>http://techblog.lucidillusion.org/2007/11/15/ssl-connections-in-ruby-with-ruby-postgres/</link>
		<comments>http://techblog.lucidillusion.org/2007/11/15/ssl-connections-in-ruby-with-ruby-postgres/#comments</comments>
		<pubDate>Thu, 15 Nov 2007 11:40:29 +0000</pubDate>
		<dc:creator>jgraham</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[libpg]]></category>
		<category><![CDATA[Postgres]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[SSL]]></category>
		<category><![CDATA[sslmode]]></category>

		<guid isPermaLink="false">http://techblog.lucidillusion.org/2007/11/15/ssl-connections-in-ruby-with-ruby-postgres/</guid>
		<description><![CDATA[Not much here, just a quick note about getting SSL connections to PostgreSQL in Ruby.  According to the ruby-postgres documentation arbitrary libpg options can be passed to the PGconn.open() call.  Calling PGconn.open like this:
conn = PGconn.open( 'host'    =&#62; 'host.domain.com',
            [...]]]></description>
			<content:encoded><![CDATA[<p>Not much here, just a quick note about getting SSL connections to PostgreSQL in Ruby.  According to the <a href="http://ruby.scripting.ca/postgres/">ruby-postgres</a> documentation arbitrary <a href="http://www.postgresql.org/docs/8.2/interactive/libpq-connect.html">libpg options</a> can be passed to the PGconn.open() call.  Calling PGconn.open like this:</p>
<pre>conn = PGconn.open( 'host'    =&gt; 'host.domain.com',
                    'options' =&gt; 'sslmode=require' )</pre>
<p>results in <tt>PGError: FATAL:  invalid command-line arguments for server process</tt>.  After digging at some forums and the ruby-postgres source code I found that one needs to prepend the options string with <tt>-o</tt>, so a working example is:</p>
<pre>conn = PGconn.open( 'host'    =&gt; 'host.domain.com',
                    'options' =&gt; '-o sslmode=require' )</pre>
]]></content:encoded>
			<wfw:commentRss>http://techblog.lucidillusion.org/2007/11/15/ssl-connections-in-ruby-with-ruby-postgres/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quicken 2006 and .Mac Backup</title>
		<link>http://techblog.lucidillusion.org/2007/10/14/quicken-2006-and-mac-backup/</link>
		<comments>http://techblog.lucidillusion.org/2007/10/14/quicken-2006-and-mac-backup/#comments</comments>
		<pubDate>Sun, 14 Oct 2007 14:16:20 +0000</pubDate>
		<dc:creator>jgraham</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[.Mac]]></category>
		<category><![CDATA[Backup]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[Quicken]]></category>

		<guid isPermaLink="false">http://techblog.lucidillusion.org/2007/10/14/quicken-2006-and-mac-backup/</guid>
		<description><![CDATA[Recently I started getting errors from Quicken 2006 (15.0.5 &#8211; R6) when it attempted to backup data to my .Mac account.  The backup process would launch and then error at Making a copy of the data file and give the following error:
Quicken cannot create a copy of your file to upload to .Mac
Check to make sure [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I started getting errors from Quicken 2006 (15.0.5 &#8211; R6) when it attempted to backup data to my .Mac account.  The backup process would launch and then error at <span style="font-weight: bold">Making a copy of the data file</span> and give the following error:</p>
<blockquote><p>Quicken cannot create a copy of your file to upload to .Mac</p>
<p>Check to make sure you have sufficient free space on your hard drive and that you have permission to read and write files. Please try again later.</p>
<p>(014)</p></blockquote>
<p><span id="more-3"></span></p>
<p>Apparently a previous run of the backup agent crashed and it left behind a temporary file that was preventing any further runs of the agent from completing. Simply removing the temporary file (which is automatically done on reboot) fixes the issue.</p>
<p>To fix the issue without rebooting just remove the <span style="font-weight: bold">Quicken Data.qdfm.dmg</span> file from <span style="font-weight: bold">/private/var/tmp/folders.XXX/</span> where XXX (may be more than 3 digits) is your user id number.</p>
<p>For people not comfortable working with the command line you can reach this folder by:</p>
<ol id="null">
<li>Choosing <span style="font-weight: bold">Go to Folder&#8230;</span> from the <span style="font-style: italic">Finder</span> <span style="font-weight: bold">Go</span> menu (⇧⌘G)</li>
<li>Enter <span style="font-weight: bold">/private/var/tmp</span></li>
<li>Open the only <span style="font-weight: bold">folders.XXX</span> folder that you have access to</li>
<li>Delete the <span style="font-weight: bold">Quicken Data.qdfm.dmg</span> file</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://techblog.lucidillusion.org/2007/10/14/quicken-2006-and-mac-backup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SSL Certificates with DNS Aliases</title>
		<link>http://techblog.lucidillusion.org/2007/10/13/ssl-certificates-with-dns-aliases/</link>
		<comments>http://techblog.lucidillusion.org/2007/10/13/ssl-certificates-with-dns-aliases/#comments</comments>
		<pubDate>Sat, 13 Oct 2007 14:33:53 +0000</pubDate>
		<dc:creator>jgraham</dc:creator>
				<category><![CDATA[Servers]]></category>
		<category><![CDATA[Alias]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[OpenSSL]]></category>
		<category><![CDATA[Secure]]></category>
		<category><![CDATA[SSL]]></category>

		<guid isPermaLink="false">http://techblog.lucidillusion.org/2007/10/14/ssl-certificates-with-dns-aliases/</guid>
		<description><![CDATA[At work I have several systems that provide SSL encrypted services but respond to multiple host-names.  For instance an LDAP server may be named server1.example.com but have DNS aliases of ldap-1.example.com and directory.example.com.  If a client system connects to ldap-1.example.com and the server returns an SSL certificate with a common name of server1.example.com [...]]]></description>
			<content:encoded><![CDATA[<p>At work I have several systems that provide SSL encrypted services but respond to multiple host-names.  For instance an LDAP server may be named <tt>server1.example.com</tt> but have DNS aliases of <tt>ldap-1.example.com</tt> and <tt>directory.example.com</tt>.  If a client system connects to <tt>ldap-1.example.com</tt> and the server returns an SSL certificate with a common name of <tt>server1.example.com</tt> ugliness will ensue.</p>
<p>To get around this problem one can install SSL certificates that employ the <strong>subjectAltName</strong> extension.</p>
<p><span id="more-4"></span></p>
<p>To be deployed properly you will need to either be running your own certificate authority (beyond the scope of this document) or using commercially signed certificates.  If you are purchasing certificates you should check with your CA first to see if they are willing to sign certificate requests that employ the <em>subjectAltName</em> extension.</p>
<h4>Generating the Certificate Signing Request (CSR)</h4>
<p>First edit the openss.cnf file (location may vary depending on OS) and add the <strong>v3_req</strong> extension.  Locate the <strong>[ req ]</strong> section and add</p>
<blockquote><p>req_extensions = v3_req</p></blockquote>
<p>Next find the <strong>[ v3_req ]</strong> section and add a <em>subjectAltName</em> line containing the appropriate DNS names (in this case I will be using <tt>server1.example.com</tt>, <tt>ldap-1.example.com</tt> and <tt>directory.example.com</tt>):</p>
<blockquote><p>subjectAltName = &#8220;DNS:server1.example.com, DNS:ldap-1.example.com, DNS: directory.example.com&#8221;</p></blockquote>
<h5>Generate a Private Key</h5>
<p>To generate a CSR we need a private key, generated with the following command.  This file should never be world readable and needs to be carefully protected.</p>
<blockquote><p># ( umask 077; openssl genrsa 2048 &gt; server1-ldap-key.pem )</p></blockquote>
<h5>Generate the CSR</h5>
<blockquote><p># openssl req -nodes -new -key server1-ldap-key.pem -out server1-ldap-req.pem</p></blockquote>
<p>Answer the question prompts.  When prompted for your <em>Common Name</em> enter the primary host-name of the system.</p>
<h4>Signing the CSR</h4>
<p>In order to include the extensions in the signed certificate the CA must be configured to copy extensions from the CSR.  <strong>This is potentially dangerous if you do not fully trust the source of the CSR!  You may want to enable it on a per-signing basis.</strong></p>
<p>Locate the openssl.cnf file on your CA.  Find the appropriate CA section (usually <strong>[ CA_default ]</strong>) and add or un-comment the following line:</p>
<blockquote><p>copy_extensions = copy</p></blockquote>
<p>Copy the <em>server1-ldap-req.pem</em> file to your CA and sign it with the following command:</p>
<blockquote><p># openssl ca -keyfile [path to CA private key] -in server1-ldap-req.pem -out server1-ldap-cert.pem</p></blockquote>
<p>The presence of the <em>subjectAltName</em> extension can be verified using this command:</p>
<blockquote><p># openssl x509 -in server1-ldap-cert.pem -noout -text</p></blockquote>
<p>Look for the <strong>X509v3 Subject Alternative Name:</strong> section.</p>
<p>Now just install the certificate and private key as you would with any other certificate/key pair.</p>
<hr />
<h4>A Few File Locations</h4>
<ul>
<li><strong>openssl.cnf:</strong>
<ul>
<li>Debian Linux: <em>/etc/ssl/openssl.cnf</em></li>
<li>Mac OS X: <em>/System/Library/OpenSSL/openssl.cnf</em></li>
<li>Solaris 10: <em>/etc/sfw/openssl/openssl.cnf</em></li>
</ul>
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://techblog.lucidillusion.org/2007/10/13/ssl-certificates-with-dns-aliases/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.312 seconds -->
