<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.2.2" -->
<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/"
	>

<channel>
	<title>Interrupt-Driven</title>
	<link>http://www.meerkoetter.org/wp</link>
	<description>Personal weblog of Frank Meerkötter</description>
	<pubDate>Sat, 29 Mar 2008 11:51:29 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2.2</generator>
	<language>en</language>
			<item>
		<title>OpenWrt Gemini 0.2</title>
		<link>http://www.meerkoetter.org/wp/2008/03/29/openwrt-gemini-02/</link>
		<comments>http://www.meerkoetter.org/wp/2008/03/29/openwrt-gemini-02/#comments</comments>
		<pubDate>Sat, 29 Mar 2008 11:51:29 +0000</pubDate>
		<dc:creator>frank</dc:creator>
		
		<category><![CDATA[OpenWrt]]></category>

		<category><![CDATA[NAS]]></category>

		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.meerkoetter.org/wp/2008/03/29/openwrt-gemini-02/</guid>
		<description><![CDATA[Paolo Scaffardi just released version 0.2 of his OpenWrt port for SL3516 based devices. The main change from the 0.1 release is that he switched to the OpenWrt trunk as base. The great benefit of this decision is that there are a lot more packages available (over 940 new packages). The pre-compiled firmware images worked [...]]]></description>
			<content:encoded><![CDATA[<p>Paolo Scaffardi just <a href="http://www.arsenio.net/blog/2008/03/28/more-than-944-new-packages-for-the-new-openwrt-for-gemini-platform/">released version 0.2</a> of his OpenWrt port for SL3516 based devices. The main change from the 0.1 release is that he switched to the OpenWrt trunk as base. The great benefit of this decision is that there are a lot more packages available (over 940 new packages). The pre-compiled firmware images worked without problems with my NAS4220 device. YMMV!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.meerkoetter.org/wp/2008/03/29/openwrt-gemini-02/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Webif^2 tutorial part 02</title>
		<link>http://www.meerkoetter.org/wp/2008/03/22/webif2-tutorial-part-02/</link>
		<comments>http://www.meerkoetter.org/wp/2008/03/22/webif2-tutorial-part-02/#comments</comments>
		<pubDate>Sat, 22 Mar 2008 14:18:21 +0000</pubDate>
		<dc:creator>frank</dc:creator>
		
		<category><![CDATA[Webif^2]]></category>

		<category><![CDATA[NAS]]></category>

		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.meerkoetter.org/wp/2008/03/22/webif2-tutorial-part-02/</guid>
		<description><![CDATA[Last time we created a simple &#8220;hello world&#8221; page. Not very useful. For our NAS box we need a way to input/select configuration data. Web interfaces implement user input using HTML forms. Webif^2 provides some features to make it easier to work with them.
The following example allows us to enter the name (text) and job [...]]]></description>
			<content:encoded><![CDATA[<p>Last time we created a simple &#8220;hello world&#8221; page. Not very useful. For our NAS box we need a way to input/select configuration data. Web interfaces implement user input using <a href="http://www.w3schools.com/html/html_forms.asp">HTML forms</a>. Webif^2 provides some features to make it easier to work with them.</p>
<p>The following example allows us to enter the name (text) and job description (selecting a predefined value) of the person you want to cheer. I start with my explanation at the end of the script.</p>
<p><img src="http://www.meerkoetter.org/wp/wp-content/uploads/image/cheers-form.png" alt="script output" /></p>
<p>On the lines 11 to 21 we use the function display_form to create the output you can see in the screen shot. display_form is at its heart an <a href="http://en.wikipedia.org/wiki/AWK">AWK</a> script. AWK works on a line by line basis so every line till the EOF marker will be processed on its own. Processing means that the lines are expanded into fragments that will make up the final form.</p>
<p>start_form/end_form are doing exactly what you expect them to do. What about line 13? display_form is not only generating a form, it also embeds the form elements together with other elements into a table. &#8220;field&#8221; will put the text following it into a cell of this table. Line 14 creates a drop down box. The following two lines add two options to this drop down box. By passing the value of the variable FORM_job we can preselect a particular option. This allows us to remember user input between script invocations (albeit only on the browser side).</p>
<p>The input field to enter the name is created on line 18. As the last step before finishing the form we add a submit button so we can send the form back to the server for processing (line 19). The action associated with the form will be the embedding page.</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="re3">#!/usr/bin/webif-page</span></div>
</li>
<li class="li1">
<div class="de1">&lt;?</div>
</li>
<li class="li1">
<div class="de1">. /usr/lib/webif/webif.<span class="kw2">sh</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li2">
<div class="de2">header <span class="st0">&quot;Test&quot;</span> <span class="st0">&quot;Cheers&quot;</span> <span class="st0">&quot;Cheers&quot;</span> <span class="st0">&#8221;</span> <span class="st0">&quot;$SCRIPT_NAME&quot;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">empty <span class="st0">&quot;$FORM_name&quot;</span> || empty <span class="st0">&quot;$FORM_job&quot;</span> || <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">echo</span> <span class="st0">&quot;cheers to $FORM_name the $FORM_job!&lt;/br&gt;&quot;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">display_form &lt;&lt;EOF</div>
</li>
<li class="li1">
<div class="de1">start_form|Who is to be cheered?</div>
</li>
<li class="li1">
<div class="de1">field|Job description</div>
</li>
<li class="li1">
<div class="de1">select|job|<span class="re1">$FORM_job</span></div>
</li>
<li class="li2">
<div class="de2">option|Code Simian|Code simian</div>
</li>
<li class="li1">
<div class="de1">option|Code Monkey|Code monkey</div>
</li>
<li class="li1">
<div class="de1">field|Name</div>
</li>
<li class="li1">
<div class="de1">text|name|<span class="re1">$name</span></div>
</li>
<li class="li1">
<div class="de1">submit|button_set_name|Set</div>
</li>
<li class="li2">
<div class="de2">end_form</div>
</li>
<li class="li1">
<div class="de1">EOF</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">footer</div>
</li>
<li class="li1">
<div class="de1">?&gt;</div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&lt;!&#8211;</div>
</li>
<li class="li1">
<div class="de1"><span class="re3">##WEBIF:name:Test:<span class="nu0">50</span>:Cheers</span></div>
</li>
<li class="li1">
<div class="de1">&#8211;&gt;</div>
</li>
</ol>
</div>
<p>To wrap up this tutorial we now only have to do something with the data submitted through the form. On line 07 we check if $FORM_name or $FORM_job are empty. If both of them contain a value we display a customized greeting message.<br />
Where do these variables come from? Haserl is parsing POST/GET requests and places form variables into the context of the script it currently exectues. The variables are always prefixed with &#8220;FORM_&#8221;.</p>
<p>This example wasn&#8217;t extensive of course. display_form provides a number of additional features to create radio buttons, check boxes, text areas, &#8230;. For a complete list you have to look up files/usr/lib/webif/form.awk.</p>
<p>The time we will extend this example to do some input validation.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.meerkoetter.org/wp/2008/03/22/webif2-tutorial-part-02/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Webif^2 tutorial part 01</title>
		<link>http://www.meerkoetter.org/wp/2008/03/21/webif2-tutorial-part-01/</link>
		<comments>http://www.meerkoetter.org/wp/2008/03/21/webif2-tutorial-part-01/#comments</comments>
		<pubDate>Fri, 21 Mar 2008 12:06:00 +0000</pubDate>
		<dc:creator>frank</dc:creator>
		
		<category><![CDATA[Webif^2]]></category>

		<category><![CDATA[NAS]]></category>

		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.meerkoetter.org/wp/2008/03/21/webif2-tutorial-part-01/</guid>
		<description><![CDATA[This article tries to explain how you can extend Webif^2 with your own functionality. I am myself new to Webif^2. The reason i am writing this article is to get acquainted enough with the code so i can decide if i would like to use it to create some NAS specific functionality. 
Webif^2 runs on [...]]]></description>
			<content:encoded><![CDATA[<p>This article tries to explain how you can extend <a href="http://x-wrt.org/">Webif^2</a> with your own functionality. I am myself new to Webif^2. The reason i am writing this article is to get acquainted enough with the code so i can decide if i would like to use it to create some NAS specific functionality. </p>
<p>Webif^2 runs on devices with some severe CPU and memory limits. Given that using one of the mainstream web development platforms was apparently off the table. Instead a combination of shell/awk and sed is used to generate dynamic content. Basically the way your father would have done it back in the days (given that there had been a web to develop for&#8230;) Having done some work with <a href="http://www.rubyonrails.org/">Ruby on Rails</a> recently i am not too excited by this prospect but lets see how it goes.</p>
<p>My first goal is to have some pages which are displaying friendly greeting messages. These pages should be grouped into a new category in the main menu. I assume that you have <a href="https://developer.berlios.de/svn/?group_id=7373">checked out</a> a copy of webif^2. All path references are relative to trunk/package/webif/.</p>
<p>Step1: Adding a new category.</p>
<p>files/www/cgi-bin/webif/.categories contains the entries of the main menu. We just add our entry here (&#8221;Test&#8221;).</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="re3">##WEBIF:category:Info</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re3">##WEBIF:category:Graphs</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re3">##WEBIF:category:Status</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re3">##WEBIF:category:Log</span></div>
</li>
<li class="li2">
<div class="de2"><span class="re3">##WEBIF:category:-</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re3">##WEBIF:category:System</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re3">##WEBIF:category:Network</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re3">##WEBIF:category:VPN</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re3">##WEBIF:category:Test</span></div>
</li>
<li class="li2">
<div class="de2"><span class="re3">##WEBIF:category:-</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re3">##WEBIF:category:Logout</span></div>
</li>
</ol>
</div>
<p>If you now reload your web browser you should see a new category &#8220;Test&#8221;. The next step will be to add content to this category.</p>
<p>Step2: Putting content into the new category.</p>
<p>I add the file test-hello.sh in files/www/cgi-bin/webif. The name of the file doesn&#8217;t matter but the convention seems to be to name it $(category)-$(name).sh.</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="re3">#!/usr/bin/webif-page</span></div>
</li>
<li class="li1">
<div class="de1">&lt;? </div>
</li>
<li class="li1">
<div class="de1">. /usr/lib/webif/webif.<span class="kw2">sh</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li2">
<div class="de2">header <span class="st0">&quot;Test&quot;</span> <span class="st0">&quot;Hello&quot;</span> <span class="st0">&quot;@TR&lt;&lt;Hello&gt;&gt;&quot;</span> <span class="st0">&#8221;</span> <span class="st0">&quot;$SCRIPT_NAME&quot;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">echo</span> <span class="st0">&quot;hello openWrt&quot;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">footer ?&gt;</div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&lt;!&#8211;</div>
</li>
<li class="li1">
<div class="de1"><span class="re3">##WEBIF:name:Test:<span class="nu0">0</span>:Hello</span></div>
</li>
<li class="li1">
<div class="de1">&#8211;&gt;</div>
</li>
</ol>
</div>
<p>Webif^2 uses an interpreter called <a href="http://haserl.sourceforge.net/cgi-bin/haserl/wiki/read?page=DocumentationStart">Haserl</a>. It will parse html files and execute the shell fragments it finds enclosed by &lt;? &#8230; ?&gt; (basically like it is done by php/jsp/&#8230;). The documentation for it can be found <a href="http://haserl.sourceforge.net/cgi-bin/haserl/wiki/read?page=0-8-0manpage">here</a>.</p>
<p>The first line tells the linux kernel which interpreter to use when trying to execute this file (webif-page is the actual haserl program). The lines 02 to 09 contain the actual program that will generate our page. 03  pulls in webif.sh which is a library containing the functions we will use. 05 calls the header function (found in webif.sh). It will generate the html header, the head section of page and also the main- and sub-menu. $SCRIPT_NAME is set by haserl. On line 07 we say &#8220;hello&#8221; to openWrt. The only thing left now is to finish the page. To accomplish this we call the footer function (also found in webif.sh). This function will generate the content you see in the bottom section (&#8221;Apply Changes&#8221;, &#8220;Clear Changes&#8221;, &#8230;). It will also close the HTML document.</p>
<p>The last three lines contain a strange HTML comment. Lets have a closer look. When the main menu is generated webif^2 scans all files in files/www/cgi-bin/webif/ having the .sh extensions, looking for this special marker. The marker tells it to put an entry &#8220;Hello&#8221; into the category &#8220;Test&#8221;. The number can be used to allow a non-alphabetical ordering of the entries. The entry with the lowest number comes first. It will also be the page being selected by default of you click on the category.</p>
<p>So far so good. Next time we try to use some forms.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.meerkoetter.org/wp/2008/03/21/webif2-tutorial-part-01/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Webif^2 on a NAS box</title>
		<link>http://www.meerkoetter.org/wp/2008/03/21/webif2-on-a-nas-box/</link>
		<comments>http://www.meerkoetter.org/wp/2008/03/21/webif2-on-a-nas-box/#comments</comments>
		<pubDate>Fri, 21 Mar 2008 10:39:47 +0000</pubDate>
		<dc:creator>frank</dc:creator>
		
		<category><![CDATA[Webif^2]]></category>

		<category><![CDATA[NAS]]></category>

		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.meerkoetter.org/wp/2008/03/21/webif2-on-a-nas-box/</guid>
		<description><![CDATA[Webif^2 aka. X-Wrt is a kick ass web interface used on OpenWrt systems. I really like it but as the main focus of OpenWrt is routers and related devices it is missing a lot of functionality which would be needed for a NAS box. Still its a good starting point. It has all the basic [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://x-wrt.org/">Webif^2</a> aka. X-Wrt is a <a href="http://wiki.x-wrt.org/index.php/White_Russian_Presentation">kick ass web interface</a> used on OpenWrt systems. I really like it but as the main focus of OpenWrt is routers and related devices it is missing a lot of functionality which would be needed for a NAS box. Still its a good starting point. It has all the basic functions you would also need for a NAS box. Another point to consider is that most NAS devices have USB so they can be very easily turned into an access point or router where all this standard Webif^2 features would be very handy.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.meerkoetter.org/wp/2008/03/21/webif2-on-a-nas-box/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Up and running!</title>
		<link>http://www.meerkoetter.org/wp/2008/03/13/up-and-running/</link>
		<comments>http://www.meerkoetter.org/wp/2008/03/13/up-and-running/#comments</comments>
		<pubDate>Thu, 13 Mar 2008 22:23:50 +0000</pubDate>
		<dc:creator>frank</dc:creator>
		
		<category><![CDATA[NAS]]></category>

		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.meerkoetter.org/wp/2008/03/13/up-and-running/</guid>
		<description><![CDATA[ I managed to build and install the 0.1 release of OpenWrt for SL3516 based devices. It needed some small tweaks to make it compile but nothing too serious. The only pitfall was that you need to change the gcc version from 4.2 (pre-selected) to 4.1.2. If you don&#8217;t do this there will be no [...]]]></description>
			<content:encoded><![CDATA[<p> I managed to build and install the 0.1 release of OpenWrt for SL3516 based devices. It needed some small tweaks to make it compile but nothing too serious. The only pitfall was that you need to change the gcc version from 4.2 (pre-selected) to 4.1.2. If you don&#8217;t do this there will be no init process at the and of the kernel boot. There is something wrong with the toolchain. The produced kernels are fine but the userspace programs are not working. Thanks to <a href="http://www.arsenio.net/blog/">Paolo Scaffardi</a> for the hint.</p>
<pre>
BusyBox v1.4.2 (2008-03-13 22:32:26 CET) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 KAMIKAZE (7.09) -----------------------------------
  * 10 oz Vodka       Shake well with ice and strain
  * 10 oz Triple sec  mixture into 10 shot glasses.
  * 10 oz lime juice  Salute!
 ---------------------------------------------------
root@OpenWrt:/# uname -a
Linux OpenWrt 2.6.15 #2 Tue Mar 11 22:54:29 CET 2008 armv4l unknown
root@OpenWrt:/#</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.meerkoetter.org/wp/2008/03/13/up-and-running/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Crippled Redboot</title>
		<link>http://www.meerkoetter.org/wp/2008/03/12/crippled-redboot/</link>
		<comments>http://www.meerkoetter.org/wp/2008/03/12/crippled-redboot/#comments</comments>
		<pubDate>Wed, 12 Mar 2008 21:58:22 +0000</pubDate>
		<dc:creator>frank</dc:creator>
		
		<category><![CDATA[NAS]]></category>

		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.meerkoetter.org/wp/2008/03/12/crippled-redboot/</guid>
		<description><![CDATA[From working with evaluation boards for the intel ixp4xx and ixp24xx i have some previous experience with Redboot and i always liked its power and flexibility. Given this i really don&#8217;t like the Redboot found on the NAS-4220 (and other SL351x based systems). It has been stripped of a lot of functionality i came to [...]]]></description>
			<content:encoded><![CDATA[<p>From working with evaluation boards for the intel <a href="http://www.intel.com/design/network/products/npfamily/ixp4xx.htm">ixp4xx</a> and <a href="http://www.intel.com/design/network/products/npfamily/ixp2xxx.htm">ixp24xx</a> i have some previous experience with Redboot and i always liked its power and flexibility. Given this i really don&#8217;t like the Redboot found on the NAS-4220 (and other SL351x based systems). It has been stripped of a lot of functionality i came to expect. StormLink, the vendor of the SL351x SOC, who also created the software distribution running on nearly all of these systems, has for instance removed the whole set of commands used to manipulate the internal flash (<a href="http://ecos.sourceware.org/docs-latest/redboot/flash-image-system.html">fis_*</a>). These commands have been replaced with some simple pre-canned choices. I guess the idea behind this was to make future software upgrades easier for them because all manufactures using their SOC and software can be expected to have the same flash layout?</p>
<p>[ Update: I have been wrong on this one. You can actually delete and create new flash partitions through the menu system&#8230; ]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.meerkoetter.org/wp/2008/03/12/crippled-redboot/feed/</wfw:commentRss>
		</item>
		<item>
		<title>dm_crypt on the NAS-4220</title>
		<link>http://www.meerkoetter.org/wp/2008/03/11/dm_crypt-on-the-nas-4220/</link>
		<comments>http://www.meerkoetter.org/wp/2008/03/11/dm_crypt-on-the-nas-4220/#comments</comments>
		<pubDate>Tue, 11 Mar 2008 20:42:29 +0000</pubDate>
		<dc:creator>frank</dc:creator>
		
		<category><![CDATA[NAS]]></category>

		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.meerkoetter.org/wp/2008/03/11/dm_crypt-on-the-nas-4220/</guid>
		<description><![CDATA[According to Harald Welte who had a look at the GPL sources released by RaidSonic, the hardware crypto acceleration is not integrated with dm_crypt. It supports only the older and now deprecated crypto loop system. That is bad news. Getting this done might prove to be some work.
]]></description>
			<content:encoded><![CDATA[<p>According to <a href="http://laforge.gnumonks.org/weblog/2008/01/20/#20080120-learning_about_nas_chipsets">Harald Welte</a> who had a look at the GPL sources released by RaidSonic, the hardware crypto acceleration is not integrated with dm_crypt. It supports only the older and now deprecated crypto loop system. That is bad news. Getting this done might prove to be some work.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.meerkoetter.org/wp/2008/03/11/dm_crypt-on-the-nas-4220/feed/</wfw:commentRss>
		</item>
		<item>
		<title>OpenWrt for SL3516 based devices</title>
		<link>http://www.meerkoetter.org/wp/2008/03/11/openwrt-for-sl3516-based-devices/</link>
		<comments>http://www.meerkoetter.org/wp/2008/03/11/openwrt-for-sl3516-based-devices/#comments</comments>
		<pubDate>Tue, 11 Mar 2008 20:26:57 +0000</pubDate>
		<dc:creator>frank</dc:creator>
		
		<category><![CDATA[NAS]]></category>

		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.meerkoetter.org/wp/2008/03/11/openwrt-for-sl3516-based-devices/</guid>
		<description><![CDATA[I was not the only one who thought that OpenWrt might be a good choice to create a better firmware image for the NAS-4220. This guy has already started a port based on the Kamikaze branch (OpenWrt stable). The project is in an early stage but i will give it a spin anyway.
]]></description>
			<content:encoded><![CDATA[<p>I was not the only one who thought that OpenWrt might be a good choice to create a better firmware image for the NAS-4220. <a href="http://www.arsenio.net/blog/">This guy</a> has already started a <a href="http://mrt.nas-central.org/index.php/OpenWRT_Kamikaze_7.09">port</a> based on the Kamikaze branch (OpenWrt stable). The project is in an early stage but i will give it a spin anyway.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.meerkoetter.org/wp/2008/03/11/openwrt-for-sl3516-based-devices/feed/</wfw:commentRss>
		</item>
		<item>
		<title>OpenWrt</title>
		<link>http://www.meerkoetter.org/wp/2008/03/10/openwrt/</link>
		<comments>http://www.meerkoetter.org/wp/2008/03/10/openwrt/#comments</comments>
		<pubDate>Mon, 10 Mar 2008 20:37:06 +0000</pubDate>
		<dc:creator>frank</dc:creator>
		
		<category><![CDATA[NAS]]></category>

		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.meerkoetter.org/wp/2008/03/10/openwrt/</guid>
		<description><![CDATA[I&#8217;ve been wondering which system to use for building a custom firmware for the NAS-4220. I&#8217;ve worked with ptxdist and buildroot in the past so i was inclined to simply use buildroot. On the other hand i have heard a lot of good stuff about the OpenWrt project. It was originally started to provide custom [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been wondering which system to use for building a custom firmware for the NAS-4220. I&#8217;ve worked with <a href="http://www.pengutronix.de/software/ptxdist/index_en.html">ptxdist</a> and <a href="http://buildroot.uclibc.org/">buildroot</a> in the past so i was inclined to simply use buildroot. On the other hand i have heard a lot of good stuff about the <a href="http://openwrt.org/">OpenWrt project</a>. It was originally started to provide custom linux firmwares for the Netgear <a href="http://en.wikipedia.org/wiki/Linksys_WRT54G_series">WRT54 devices</a> but has expanded into other areas in the recent years. After reading <a href="http://downloads.openwrt.org/people/florian/fosdem/presentation.pdf">these slides</a> from FOSDEM08 and having a first look at the code i guess i will give OpenWrt a shot.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.meerkoetter.org/wp/2008/03/10/openwrt/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Sausalito</title>
		<link>http://www.meerkoetter.org/wp/2008/03/10/sausalito/</link>
		<comments>http://www.meerkoetter.org/wp/2008/03/10/sausalito/#comments</comments>
		<pubDate>Mon, 10 Mar 2008 12:28:32 +0000</pubDate>
		<dc:creator>frank</dc:creator>
		
		<category><![CDATA[NAS]]></category>

		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.meerkoetter.org/wp/2008/03/10/sausalito/</guid>
		<description><![CDATA[The NAS-4220 is using internally something called Sausalito. Spending some time with google reveals that this is a web-based (only?) system management system originally developed for the Cobalt RaQ. After Sun terminated the Cobalt Raq product line the software was put out under the BSD license.
The developer documentation can be found here. Beware, lots of [...]]]></description>
			<content:encoded><![CDATA[<p>The NAS-4220 is using internally something called Sausalito. Spending some time with google reveals that this is a web-based (only?) system management system originally developed for the <a href="http://en.wikipedia.org/wiki/Cobalt_RaQ">Cobalt RaQ</a>. After Sun terminated the Cobalt Raq product line the software was put out under the BSD license.</p>
<p>The developer documentation can be found <a href="ftp://ftp.cobalt.com/pub/developer/TechNotes/SSDK.pdf">here</a>. Beware, lots of unknown acronyms. A cheat sheet can be found <a href="http://bluequartz.org/docs/terms-e.html">here.</a></p>
<p>I wonder if there are other products using this software.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.meerkoetter.org/wp/2008/03/10/sausalito/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
