<?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>zomo tech &#187; stash</title>
	<atom:link href="http://www.zomo.co.uk/category/stash/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.zomo.co.uk</link>
	<description>Is it done yet?</description>
	<lastBuildDate>Wed, 24 Feb 2010 09:18:37 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>iLO port forwards</title>
		<link>http://www.zomo.co.uk/2009/08/ilo-port-forwards/</link>
		<comments>http://www.zomo.co.uk/2009/08/ilo-port-forwards/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 09:03:12 +0000</pubDate>
		<dc:creator>lemon</dc:creator>
				<category><![CDATA[stash]]></category>

		<guid isPermaLink="false">http://www.zomo.co.uk/?p=138</guid>
		<description><![CDATA[(woah, neglected blog)
HPaq&#8217;s iLO is a strange beast, its functionality seems split between the SSH CLI and the web interface. Depending on your particular mission, some goals are only achievable using the whole ActiveX / Java remote console in IE. Sigh.
To get this flying from virtualised VMware, here&#8217;s the full SSH mutter to forward the [...]]]></description>
			<content:encoded><![CDATA[<p>(woah, neglected blog)</p>
<p>HPaq&#8217;s <a href="http://en.wikipedia.org/wiki/HP_Integrated_Lights-Out">iLO</a> is a strange beast, its functionality seems split between the SSH CLI and the web interface. Depending on your particular mission, some goals are only achievable using the whole ActiveX / Java remote console in IE. Sigh.</p>
<p>To get this flying from virtualised VMware, here&#8217;s the full SSH mutter to forward the ports via an access host. I&#8217;m always forgetting it, thus this post.</p>
<p><code>sudo ssh -g -L 80:${IP}:80 -L 3389:${IP}:3389 -L 443:${IP}:443 -L 17988:${IP}:17988 -L 17990:${IP}:17990 -L 23:${IP}:23 access005.example.com</code></p>
<p><code>IP</code> is the iLO&#8217;s address. <code>-g</code> allows the port forwards to be reachable via other LAN hosts (eg: the VMware guest).  The <code>sudo</code> sorts the forwards for those super-privileged &lt; 1024 ports.</p>
<p>Yes, that really is port 23 &#8211; telnet.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zomo.co.uk/2009/08/ilo-port-forwards/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenSSH&#8217;s SOCKS forwarding</title>
		<link>http://www.zomo.co.uk/2009/01/opensshs-socks-forwarding/</link>
		<comments>http://www.zomo.co.uk/2009/01/opensshs-socks-forwarding/#comments</comments>
		<pubDate>Sun, 18 Jan 2009 16:32:21 +0000</pubDate>
		<dc:creator>lemon</dc:creator>
				<category><![CDATA[stash]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.zomo.co.uk/?p=126</guid>
		<description><![CDATA[It&#8217;s always great to discover a feature in a tool you use everyday. Someone pointed out to me that, in addition to local and remote port forwarding, OpenSSH also offers what it calls dynamic application-level port forwarding. Put more simply, OpenSSH can act as a local SOCKS proxy punting the traffic out the remote end [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s always great to discover a feature in a tool you use everyday. Someone pointed out to me that, in addition to local and remote port forwarding, OpenSSH also offers what it calls dynamic application-level port forwarding. Put more simply, OpenSSH can act as a local SOCKS proxy punting the traffic out the remote end of the connection:</p>
<pre style="padding-left: 30px;">ssh -Dlocalhost:1080 -C host.example.com</pre>
<p>You can now aim your browser&#8217;s SOCKS settting at localhost:1080. Bonus points for using a locally-hosted PAC file to determine which traffic is routed via the proxy:</p>
<pre>function FindProxyForURL(url, host) {
  if (shExpMatch(host, "*.example.com"))
    return "SOCKS 127.0.0.1:1080"
  else
    return "DIRECT";
}</pre>
<p>For getting sight of servers behind a firewall without remote proxies (hello <a href="http://www.privoxy.org/">Privoxy</a>) and continual browser fiddling this is ideal. Thanks Murb!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zomo.co.uk/2009/01/opensshs-socks-forwarding/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DIY Avocent / Cyclades DB9/RJ45 serial console adapters</title>
		<link>http://www.zomo.co.uk/2008/04/diy-avocent-cyclades-db9rj45-serial-console-adapters/</link>
		<comments>http://www.zomo.co.uk/2008/04/diy-avocent-cyclades-db9rj45-serial-console-adapters/#comments</comments>
		<pubDate>Sun, 20 Apr 2008 16:58:27 +0000</pubDate>
		<dc:creator>lemon</dc:creator>
				<category><![CDATA[all]]></category>
		<category><![CDATA[stash]]></category>

		<guid isPermaLink="false">http://tech.zomo.co.uk/?p=32</guid>
		<description><![CDATA[These are quite pricey if you buy them pre-made. Depending on how fast you can make them up you can save money.
The self-wire kits I found have the RJ45 connections fixed but let you decide the DB9 pin assigments. The Avocent needs a crossover which means the wiring isn&#8217;t one to one. It&#8217;s detailed here.
So [...]]]></description>
			<content:encoded><![CDATA[<p>These are quite pricey if you buy them pre-made. Depending on how fast you can make them up you can save money.</p>
<p>The self-wire kits I found have the RJ45 connections fixed but let you decide the DB9 pin assigments. The Avocent needs a crossover which means the wiring isn&#8217;t one to one. It&#8217;s detailed <a href="http://pinouts.ru/SerialPortsCables/cyclades_cabling_pinout.shtml">here</a>.</p>
<p>So I don&#8217;t lose it again:</p>
<table>
<tr>
<th>Colour</th>
<th>RJ45</th>
<th>DB9</th>
</tr>
<tr>
<td>Blue</td>
<td>1</td>
<td>8</td>
</tr>
<tr>
<td>Orange</td>
<td>2</td>
<td>1&amp;6</td>
</tr>
<tr>
<td>Black</td>
<td>3</td>
<td>2</td>
</tr>
<tr>
<td>Red</td>
<td>4</td>
<td>5</td>
</tr>
<tr>
<td>Green</td>
<td>5</td>
<td>7</td>
</tr>
<tr>
<td>Yellow</td>
<td>6</td>
<td>3</td>
</tr>
<tr>
<td>Brown &amp; White</td>
<td>7&amp;8</td>
<td>4</td>
</tr>
</table>
<p>DB9 pin 9 is unused. No idea how standard the colour / RJ45 assignment is. The merging of brown and white wires, and the splitting of the orange into two pins is the fudge: admittedly I thought I was building straight-through connectors when I set out!</p>
<p><img src="http://www.datalinkcabling.co.uk/images/productImages/SmallReadytowireinMaleofFemaleDtypesimage.jpg" alt="Assembly" /><ins datetime="2008-04-20T16:58:44+00:00"></ins></p>
]]></content:encoded>
			<wfw:commentRss>http://www.zomo.co.uk/2008/04/diy-avocent-cyclades-db9rj45-serial-console-adapters/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Truncated and borked Thunderbird attachments</title>
		<link>http://www.zomo.co.uk/2008/02/truncated-and-borked-thunderbird-attachments/</link>
		<comments>http://www.zomo.co.uk/2008/02/truncated-and-borked-thunderbird-attachments/#comments</comments>
		<pubDate>Fri, 08 Feb 2008 09:34:40 +0000</pubDate>
		<dc:creator>lemon</dc:creator>
				<category><![CDATA[all]]></category>
		<category><![CDATA[stash]]></category>

		<guid isPermaLink="false">http://tech.zomo.co.uk/?p=31</guid>
		<description><![CDATA[Fixed thus: 
mail.server.default.fetch_by_chunks to false
From here. Unsure if the break is local or on the mailserver, a reasonably normal Courier IMAP deal.
]]></description>
			<content:encoded><![CDATA[<p>Fixed thus: </p>
<p><code>mail.server.default.fetch_by_chunks</code> to <code>false</code></p>
<p>From <a href="http://groups.google.com/group/Gmail-POP-and-Forwarding/browse_thread/thread/afbb5dfec3b07e1a">here</a>. Unsure if the break is local or on the mailserver, a reasonably normal Courier IMAP deal.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zomo.co.uk/2008/02/truncated-and-borked-thunderbird-attachments/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD amd64 Adaptec 39320 SCSI</title>
		<link>http://www.zomo.co.uk/2006/08/freebsd-amd64-adaptec-scsi/</link>
		<comments>http://www.zomo.co.uk/2006/08/freebsd-amd64-adaptec-scsi/#comments</comments>
		<pubDate>Fri, 25 Aug 2006 08:42:54 +0000</pubDate>
		<dc:creator>lemon</dc:creator>
				<category><![CDATA[all]]></category>
		<category><![CDATA[stash]]></category>

		<guid isPermaLink="false">http://tech.zomo.co.uk/?p=22</guid>
		<description><![CDATA[This:
ahd0: &#60;adaptec (Dell OEM) 39320 Ultra320 SCSI adapter&#62; port 0xdc00-0xdcff,0xd800-0xd8ff mem 0xfe7fe000-0xfe7fffff irq 50 at device 7.0 on pci3
plus
Aug 25 10:22:52 mantis386 kernel: ahd0: Recovery Initiated - Card was not paused
Aug 25 10:22:52 mantis386 kernel: >>>>>>>>>>>>>>>>>> Dump Card State Begins < ]]></description>
			<content:encoded><![CDATA[<p>This:</p>
<p><code>ahd0: &lt;adaptec (Dell OEM) 39320 Ultra320 SCSI adapter&gt; port 0xdc00-0xdcff,0xd800-0xd8ff mem 0xfe7fe000-0xfe7fffff irq 50 at device 7.0 on pci3</code></p>
<p>plus</p>
<blockquote><p><code>Aug 25 10:22:52 mantis386 kernel: ahd0: Recovery Initiated - Card was not paused<br />
Aug 25 10:22:52 mantis386 kernel: >>>>>>>>>>>>>>>>>> Dump Card State Begins < <<<<<<<<<<<<<<<<<br />
Aug 25 10:22:52 mantis386 kernel: ahd0: Dumping Card State at program address 0x22 Mode 0x33<br />
Aug 25 10:22:52 mantis386 kernel: INTSTAT[0x0] SELOID[0x0] SELID[0x0] HS_MAILBOX[0x0]<br />
Aug 25 10:22:52 mantis386 kernel: INTCTL[0xc0]:(SWTMINTEN|SWTMINTMASK) SEQINTSTAT[0x10]:(SEQ_SWTMRTO)<br />
Aug 25 10:22:52 mantis386 kernel: SAVED_MODE[0x11] DFFSTAT[0x33]:(CURRFIFO_NONE|FIFO0FREE|FIFO1FREE)<br />
Aug 25 10:22:52 mantis386 kernel: SCSISIGI[0x27]:(P_DATAOUT_DT|ACKI|REQI|BSYI) SCSIPHASE[0x0]<br />
Aug 25 10:22:52 mantis386 kernel: SCSIBUS[0x16] LASTPHASE[0x1]:(P_DATAOUT|P_BUSFREE)<br />
Aug 25 10:22:52 mantis386 kernel: SCSISEQ0[0x40]:(ENSELO) SCSISEQ1[0x12]:(ENAUTOATNP|ENRSELI)<br />
Aug 25 10:22:52 mantis386 kernel: SEQCTL0[0x0] SEQINTCTL[0x0] SEQ_FLAGS[0x0] SEQ_FLAGS2[0x0]<br />
Aug 25 10:22:52 mantis386 kernel: QFREEZE_COUNT[0x49] KERNEL_QFREEZE_COUNT[0x49] MK_MESSAGE_SCB[0x55]<br />
Aug 25 10:22:52 mantis386 kernel: MK_MESSAGE_SCSIID[0x7] SSTAT0[0x10]:(SELINGO) SSTAT1[0x8]:(BUSFREE)<br />
Aug 25 10:22:52 mantis386 kernel: SSTAT2[0x0] SSTAT3[0x0] PERRDIAG[0x0] SIMODE1[0xa4]:(ENSCSIPERR|ENSCSIRST|ENSELTIMO)<br />
Aug 25 10:22:52 mantis386 kernel: LQISTAT0[0x0] LQISTAT1[0x0] LQISTAT2[0x80]:(PACKETIZED)<br />
Aug 25 10:22:52 mantis386 kernel: LQOSTAT0[0x0] LQOSTAT1[0x0] LQOSTAT2[0xc0]<br />
Aug 25 10:22:52 mantis386 kernel:<br />
Aug 25 10:22:52 mantis386 kernel: SCB Count = 256 CMDS_PENDING = 97 LASTSCB 0x5a CURRSCB 0x55 NEXTSCB 0x54<br />
Aug 25 10:22:52 mantis386 kernel: qinstart = 32195 qinfifonext = 32195<br />
Aug 25 10:22:52 mantis386 kernel: QINFIFO:<br />
Aug 25 10:22:52 mantis386 kernel: WAITING_TID_QUEUES:<br />
Aug 25 10:22:52 mantis386 kernel: 0 ( 0x5 0x2e 0x15 0x42 0x5b 0x67 0x2a 0x6c 0x71 0x34 0x13 0x68 0x1 0x53 0x73 0x6d 0x3 0x70 0x32 0x11 0x49 0<br />
x47 0x45 0x7b 0x31 0x6f 0x64 0x1f 0x35 0x19 0x7c 0x0 0x5c 0x50 0x4c 0x7 0x1c 0x4a 0x59 0x4b 0x7e 0x3b 0x1d 0x4e 0x2b 0x17 0x66 0x6b 0x30 0x60<br />
 0x75 0x25 0x38 0x1a 0x39 0x2d 0x8 0x6 0x58 0x12 0xd 0x46 0x7d 0x6a 0x7f 0x41 0x36 0x62 0x78 0x2f 0x79 0x74 0x7a 0x24 0x5d 0x44 0x5a 0x55 0x5<br />
4 0x37 0x48 0x4f 0x40 0x2c 0xf 0x43 0x61 0x76 0x52 0x3a 0x29 0xb 0xc 0x77 0x57 0x63 0x69 )<br />
Aug 25 10:22:52 mantis386 kernel: Pending list:<br />
</code></code></p></blockquote>
<p>equals</p>
<p><code>camcontrol tags da0 -N 64</code>
<p>Sigh.</p>
<p><a href="http://lists.freebsd.org/pipermail/freebsd-stable/2005-August/017855.html">Lazyweb told me how.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.zomo.co.uk/2006/08/freebsd-amd64-adaptec-scsi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lazy checking website&#8217;s SSL certs</title>
		<link>http://www.zomo.co.uk/2006/05/lazy-checking-websites-ssl-certs/</link>
		<comments>http://www.zomo.co.uk/2006/05/lazy-checking-websites-ssl-certs/#comments</comments>
		<pubDate>Thu, 11 May 2006 13:46:45 +0000</pubDate>
		<dc:creator>lemon</dc:creator>
				<category><![CDATA[all]]></category>
		<category><![CDATA[stash]]></category>

		<guid isPermaLink="false">http://tech.zomo.co.uk/?p=18</guid>
		<description><![CDATA[I wanted to avoid RSI checking the browser&#8217;s padlock on every site I&#8217;d just updated a SSL cert for:
[lemon@core ~ ] 0 $ for z in 4 5 6 7 8 9 10 11 12 ; do echo 'GET /' &#124; openssl s_client -connect devgateway${z}.foo.co.uk:443 2>&#038;1 &#124; openssl x509 -text &#124; grep -i 'Not Before' [...]]]></description>
			<content:encoded><![CDATA[<p>I wanted to avoid RSI checking the browser&#8217;s padlock on every site I&#8217;d just updated a SSL cert for:</p>
<blockquote><p><code>[lemon@core ~ ] 0 $ for z in 4 5 6 7 8 9 10 11 12 ; do echo 'GET /' | openssl s_client -connect devgateway${z}.foo.co.uk:443 2>&#038;1 | openssl x509 -text | grep -i 'Not Before' ; done<br />
            Not Before: May  9 11:24:00 2006 GMT<br />
            Not Before: May  9 11:54:05 2006 GMT<br />
            Not Before: May  9 11:54:05 2006 GMT<br />
            Not Before: May  9 11:24:00 2006 GMT<br />
            Not Before: May  9 11:24:01 2006 GMT<br />
            Not Before: May  9 11:24:01 2006 GMT<br />
            Not Before: May  9 11:54:06 2006 GMT<br />
            Not Before: May  9 11:24:01 2006 GMT<br />
            Not Before: May  9 11:24:01 2006 GMT<br />
</code>
</p></blockquote>
<p>Ugly, but it works. the <code>ssl_client(1)</code> man page contains this apology:</p>
<blockquote><p><code><strong>BUGS</strong><br />
       Because this program has a lot of options and also because some of the<br />
       techniques used are rather old, the C source of s_client is rather hard<br />
       to read and not a model of how things should be done. A typical SSL<br />
       client program would be much simpler.<br />
</code></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.zomo.co.uk/2006/05/lazy-checking-websites-ssl-certs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>stash: fixup DOS line termination</title>
		<link>http://www.zomo.co.uk/2005/10/stash-fixup-dos-line-termination/</link>
		<comments>http://www.zomo.co.uk/2005/10/stash-fixup-dos-line-termination/#comments</comments>
		<pubDate>Wed, 26 Oct 2005 09:59:51 +0000</pubDate>
		<dc:creator>lemon</dc:creator>
				<category><![CDATA[all]]></category>
		<category><![CDATA[stash]]></category>

		<guid isPermaLink="false">http://tech.zomo.co.uk/?p=8</guid>
		<description><![CDATA[Inevitable evil: developer drops off a load of content with DOS line endings, flutzing up editor screens with ^M.
$ find /some/path -type f -exec perl -pi -e'y/\015//d;' \{\} \;
It&#8217;d be nicer to used xargs(1) instead of find(1)&#8217;s own -exec flag &#8211; way more efficient. However, chances are that if there&#8217;s borked line endings in a [...]]]></description>
			<content:encoded><![CDATA[<p>Inevitable evil: developer drops off a load of content with DOS line endings, flutzing up editor screens with ^M.</p>
<p><code>$ find /some/path -type f -exec perl -pi -e'y/\015//d;' \{\} \;</code></p>
<p>It&#8217;d be nicer to used <code>xargs(1)</code> instead of <code>find(1)</code>&#8217;s own -exec flag &#8211; way more efficient. However, chances are that if there&#8217;s borked line endings in a file tree then there&#8217;s probably also filenames with whitespace&#8230;</p>
<p>Not editing binary files would also be a bonus!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zomo.co.uk/2005/10/stash-fixup-dos-line-termination/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
