<?xml version="1.0" encoding="iso-8859-1"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		
		<title>steffenpingel.de</title>
		<link>http://steffenpingel.de/</link>
		<description>Steffen Pingel's Homepage</description>
		<language>en</language>
		<image>
			<title>steffenpingel.de</title>
			<url>http://steffenpingel.de/EXT:tt_news/ext_icon.gif</url>
			<link>http://steffenpingel.de/</link>
			<width></width>
			<height></height>
			<description>Steffen Pingel's Homepage</description>
		</image>
		<generator>TYPO3 - get.content.right</generator>
		<docs>http://blogs.law.harvard.edu/tech/rss</docs>
		
		
		
		<lastBuildDate>Mon, 12 Nov 2007 03:14:00 +0100</lastBuildDate>
		
		
		<item>
			<title>Using OpenVPN with CAcert certificates</title>
			<link>http://steffenpingel.de/news/archive/using-openvpn-with-cacert-certificates/?tx_ttnews%5BbackPid%5D=2&#38;cHash=a9c11bb6b12e3dae15c264af467ac395</link>
			<description>The goal was to setup a server that allowed authenticated users access to a VPN. Here are the...</description>
			<content:encoded><![CDATA[<p class="bodytext">The goal was to setup a server that allowed authenticated users access to a VPN. Here are the important bits from server configuration:</p>
<p class="csc-frame-frame1">port 1194<br />proto udp<br />dev tun<br /><br />dh dh1024.pem<br /> server 10.8.0.0 255.255.255.0<br /> ifconfig-pool-persist ipp.txt<br /> comp-lzo<br /><br />ca /etc/ssl/certs/cacert.crt<br />cert /etc/ssl/certs/my.crt<br />key /etc/ssl/private/my.key<br /><br />plugin /usr/lib/openvpn/openvpn-auth-pam.so common-auth<br />client-cert-not-required</p>
<p class="bodytext">The root.crt file contains the CAcert.org root certificate. The server certificate that has to be signed through CAcert.org is stored in my.crt and the private portion in my.key. The last two lines enable password authentication for clien</p>
<p class="bodytext">The client configuration is straight forward:</p>
<p class="csc-frame-frame1">client<br />dev tun<br />proto udp<br />comp-lzo<br /><br />remote [server hostname] 1194<br />resolv-retry infinite<br />ca /etc/ssl/certs/cacert.crt<br /><br />auth-user-pass<br />tls-remote &quot;/CN=[certificate common name]...&quot;<br />tls-exit</p>
<p class="bodytext">During the first attempts to connect I repeatedly ran into error messages about failed certificate authentication on the client:</p>
<p class="csc-frame-frame1"><a href="http://www.CAcert.org/CN=CAcert_Class_3_Root" target="_blank" >VERIFY ERROR: depth=1, error=unable to get issuer certificate: /O=CAcert_Inc./OU=http://www.CAcert.org/CN=CAcert_Class_3_Root</a><br />TLS_ERROR: BIO read tls_read_plaintext error: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed</p>
<p class="bodytext">It turned out that the CAcert class 3 certificate is signed with the CAcert class 1 certificate and both need to be stored in root.crt:</p>
<p class="csc-frame-frame1">cat root.crt class3.crt &gt; /etc/ssl/certs/cacert.crt</p>
<p class="bodytext">By default clients will only see the VPN server. In order to have them also see the rest of the network IP forwarding needs to be enabled on the server a NAT rule needs to be added:</p>
<p class="csc-frame-frame1">iptables -t nat -I POSTROUTING -s 10.8.0.0/24 -j SNAT --to [IP]</p>
<p class="bodytext">&nbsp;</p>]]></content:encoded>
			<category>Linux</category>
			
			<author>steffenp@gmx.de</author>
			<pubDate>Mon, 12 Nov 2007 03:14:00 +0100</pubDate>
			
		</item>
		
		<item>
			<title>Linux (Debian) on a Lenovo Thinkpad X61s</title>
			<link>http://steffenpingel.de/news/archive/linux-debian-on-a-lenovo-thinkpad-x61s/?tx_ttnews%5BbackPid%5D=2&#38;cHash=f98317a49ddd420f993cfd6dcef22641</link>
			<description>Most of the hardware on the Lenovo Thinkpad X61s works with the Debian standard kernel. The few...</description>
			<content:encoded><![CDATA[<p class="bodytext">Most of the hardware on the Lenovo Thinkpad X61s works with the Debian standard kernel. The few things that require a bit of tweaking are described here.</p>
<h2>&nbsp;</h2>
<h3>Supported Hardware Components</h3><ul><li>CPU: Intel LV7500 Core2 Duo, 1.6 Ghz. </li><li>Chipset: Intel Corporation 82801H (ICH8 Family)</li><li>Graphics: Intel Corporation Mobile Integrated Graphics Controller (rev 0c)</li><li>Harddrive: SATA 160 GB (see notes below)</li><li>Sound: Intel HDA, AD1984 codec (see notes below)</li><li>Network: Intel Corporation 1000 MBit</li><li>Bluetooth: Broadcom Corp BCM2045B<br /> </li><li>WLan: Intel 4965 a/b/g/n (see notes below)</li><li>SD-Card/MMC reader</li><li>Thinkpad Hotkeys (see notes below)</li></ul><h3>Untested</h3><ul><li> Firewire</li></ul><h2>Installing Debian GNU/Linux</h2>
<h3>Resizing the Windows Vista partition without a DVD drive</h3>
<p class="bodytext">In order to install Linux without deleting the pre-installed Vista I resized the Vista partition. If booting from an external CD/DVD drive is not an option it is also possible to create a bootable USB stick to resize the pre-installed Windows Vista partition. I used install-mbr from the mbr package (using ms-sys did not work for me) to create a <a href="http://www.sysresccd.org/Sysresccd-manual-en_How_to_install_SystemRescueCd_on_an_USB-stick" title="Opens external link in new window" target="_blank" class="external-link-new-window" >bootable SystemResuceCd distribution</a> on a spare USB stick. It ships with gparted which is capable of resizing NTFS partitions.</p>
<p class="bodytext">The first partition contains the rescue system and should be left untouched whereas the second partition is the Windows Vista partition which can be shrunken. It contained about 20 GB of data with the default factory setup. Please note that resizing the partition will break the Vista boot. See below how to fix it.</p>
<h4>Fixing the Windows Vista boot record</h4>
<p class="bodytext">After the Vista partition is resized Vista will no longer boot. This can either be fixed with by using system repair from a Vista install CD or by using this workaround:</p><ol><li>Boot into the rescue system by pressing the ThinkVantage button on startup</li><li>Select Open Web Browser</li><li>Type X:\Windows\System32\cmd.exe as the URL</li><li>Select Open to get a console</li><li>Type bootrec /rebuildbcd</li></ol><p class="bodytext">I also tried 'bootsect /fixboot' and 'bootrec /fixmbr' without success but these commands might be required as well. There is also bcdedit to modify the Vista boot sequence.</p>
<h3>GRUB</h3>
<p class="bodytext">I installed grub as the boot loader in the master boot record (MBR) to either boot Linux or Vista.</p>
<h2>Configuration</h2>
<h3>Sound</h3>
<p class="bodytext">If you are using Linux 2.6.22 or earlier (or Alsa 1.0.14) the sound card is not supported properly, see <a href="https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/122560" title="Opens external link in new window" target="_blank" class="external-link-new-window" >this bug report</a> for more information. Using the python script attached to the bug report with the Alsa kernel driver worked for me.</p>
<p class="bodytext">A better solution is to upgrade to Linux 2.6.23 that includes the hda-intel Alsa driver which works without requiring any tweaks.</p>
<h3>WLan</h3>
<p class="bodytext">After installing the kernel the <a href="http://intellinuxwireless.org/?p=iwlwifi" title="Opens external link in new window" target="_blank" class="external-link-new-window" >mac80211 and iwlwifi driver</a> needs to be installed.&nbsp; I have tested the wireless card in b and g mode using using an access point and WPA2. As of version 1.1.21 the <a href="http://bughost.org/bugzilla/show_bug.cgi?id=1209" title="Opens external link in new window" target="_blank" class="external-link-new-window" >wireless led does not</a> work.</p>
<h3>Hotkeys</h3>
<p class="bodytext">Compared to other Thinkpad models the X61s handles more function keys in software. I installed powersaved and modified <a href="http://steffenpingel.de/files/scripts/thinkpad_acpi_events" title="Opens external link in new window" target="_blank" class="external-link-new-window" >/usr/lib/powersave/scripts/thinkpad_acpi_events</a> to handle the backlight keys (Fn+Home and Fn+End). See <a href="http://www.linuxdiyf.com/viewarticle.php?id=65716" title="Opens external link in new window" target="_blank" class="external-link-new-window" >this page for more details</a>. The page also has instructions on how get the volume keys to work by using a modified X11 Xmodmap and KDE input actions.</p>
<h3>Bluetooth</h3>
<p class="bodytext">The UHCI driver that is part of the standard kernel works. The card can be enabled/disabled using these commands when the acpi-thinkpad module is loaded (see Hotkeys section):</p>
<p class="csc-frame-frame1">echo enabled/disabled &gt; /proc/acpi/ibm/bluetooth</p>
<h3>Suspend</h3>
<p class="bodytext">Powersaved refused to enable Suspend-to-RAM and Suspend-to-Disk forcing these changes to /etc/powersafe/sleep:</p>
<p class="csc-frame-frame1">DISABLE_USER_SUSPEND2RAM=&quot;no&quot;<br />SUSPEND2RAM_FORCE=&quot;yes&quot;<br />DISABLE_USER_STANDBY=&quot;no&quot;</p>]]></content:encoded>
			<category>KDE</category>
			<category>Linux</category>
			
			<author>steffenp@gmx.de</author>
			<pubDate>Fri, 03 Aug 2007 17:17:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title>Getting stack traces from exception objects in Eclipse debug mode</title>
			<link>http://steffenpingel.de/news/archive/getting-stack-traces-from-exception-objects-in-eclipse-debug-mode/?tx_ttnews%5BbackPid%5D=2&#38;cHash=2e0a64df20c922cd35db7a614c80d388</link>
			<description>Eclipse allows custom formatters for variables displayed in the Debug view. This great feature can...</description>
			<content:encoded><![CDATA[<p class="bodytext">Eclipse allows custom formatters for variables displayed in the Debug view. This great feature can be used to print stack traces from exception objects:</p>
<p class="bodytext"> <code> java.io.ByteArrayOutputStream out = new java.io.ByteArrayOutputStream(); this.printStackTrace(new java.io.PrintStream(out));<br />return new String(out.toByteArray());</code></p>
<p class="bodytext"><a href="fileadmin/2007/07/detail-formatter.png" title="Initiates file download" class="download" ><img src="fileadmin/2007/07/detail-formatter.png" border="1" height="234" width="380" alt="" /></a></p>
<p class="bodytext">&nbsp;</p>]]></content:encoded>
			<category>Eclipse</category>
			
			<author>steffenp@gmx.de</author>
			<pubDate>Tue, 03 Jul 2007 17:34:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title>Fixing Ctrl-X B in Eclipse 3.3M4</title>
			<link>http://steffenpingel.de/news/archive/fixing-ctrl-x-b-in-eclipse-33m4/?tx_ttnews%5BbackPid%5D=2&#38;cHash=1c51700ec0046838c8ddb00d885b19ec</link>
			<description>Unfortunately Eclipse 3.3M3 broke the key-binding for 'Quick Switch Editor'. I stumbled across...</description>
			<content:encoded><![CDATA[<p class="bodytext">Unfortunately Eclipse 3.3M3 broke the key-binding for 'Quick Switch Editor'. I stumbled across 'Quick Access' (Window -&gt; Navigation) the other day by pressing Ctrl-E in a Mylar editor. It seems a bit slower but it offers a little bit more functionality and lists previous choices right at the top and most important it works.</p>
<p class="align-center">&nbsp;<a href="fileadmin/2007/01/eclipse-keys.png" title="Initiates file download" class="download" ><img src="uploads/RTEmagicC_eclipse-keys.png.png" border="0" height="139" width="150" alt="" /></a>&nbsp; <a href="fileadmin/2007/01/quick-access.png" title="Initiates file download" class="download" ><img src="uploads/RTEmagicC_quick-access.png.png" border="0" height="200" width="150" alt="" /></a>&nbsp;</p>]]></content:encoded>
			<category>Eclipse</category>
			
			<author>steffenp@gmx.de</author>
			<pubDate>Wed, 17 Jan 2007 01:28:40 +0100</pubDate>
			
		</item>
		
		<item>
			<title>Using sipgate.de with Twinkle</title>
			<link>http://steffenpingel.de/news/archive/using-sipgatede-with-twinkle/?tx_ttnews%5BbackPid%5D=2&#38;cHash=31063ff923cfd6215303a015b58e550a</link>
			<description>After failing to get Ekiga or Kphone working with sipgate.de I have finally found a VOIP...</description>
			<content:encoded><![CDATA[<p class="bodytext">After failing to get Ekiga or Kphone working with sipgate.de I have finally found a VOIP application for Linux that works with sipgate.de. <a href="http://www.twinklephone.com/">Twinkle</a> can be installed with apt-get in Debian/unstable and is straight forward to setup. Making outgoing calls worked right away whereas receiving calls required some hacking. Read on for my configuration settings and a patch to make incoming calls work with sipgate.de.</p>
<p class="bodytext">After changing the kernel configuration connections to the STUN server and calls failed intermittently. Removing the <code>ip_nat_sip</code> kernel module resolved the problems.  </p>
<h3><strong>Settings</strong></h3><ol> 	<li>The sipgate.de phone number is used for the user and authentication name:<br /><br /><div><a href="fileadmin/2007/01/sipgate-user.png" title="Initiates file download" class="download" ><img src="uploads/RTEmagicC_sipgate-user_01.png.png" style="width: 300px; height: 233px;" alt="" /><br /><br /></a></div></li><li>The SIP server is sipgate.de:<br /><br /><a href="fileadmin/2007/01/sipgate-server.png" title="Initiates file download" class="download" ><img src="uploads/RTEmagicC_sipgate-server_03.png.png" style="width: 300px; height: 233px;" alt="" /><br /><br /></a></li><li>RFC 2833 DTMF signaling seems to be unsupported by sipgate.de but Out-of-band mode works:<br /><br /><a href="fileadmin/2007/01/sipgate-dtmf.png" title="Initiates file download" class="download" ><img src="uploads/RTEmagicC_sipgate-dtmf_01.png.png" style="width: 300px; height: 233px;" alt="" /></a><br /><br /><div></div> <p> <a href="http://blog.steffenpingel.de/wp-content/uploads/2007/01/sipgate-dtmf.png" title="DTMF settings"></a> 	</p></li><li>Connecting to the internet through a NAT router requires <a href="http://stun.sipgate.de:10000" target="_blank" >stun.sipgate.de:10000</a> as a STUN server:<br /><br /><a href="fileadmin/2007/01/sipgate-nat.png" title="Initiates file download" class="download" ><img src="uploads/RTEmagicC_sipgate-nat_03.png.png" style="width: 300px; height: 233px;" alt="" /></a><br /><br /><div></div> <p> <a href="http://blog.steffenpingel.de/wp-content/uploads/2007/01/sipgate-nat.png" title="NAT settings"></a> </p></li></ol><p class="bodytext"><strong>Incoming calls</strong></p>
<p class="bodytext"><strong></strong>Unfortunately Twinkle rejected all incoming calls with 404 Not found since it could not match the user ids transmitted in invite messages. Sipgate.de strangely appends sipgate.net instead of sipgate.de as the domain prefix: 'INVITE sip:1234567@sipgate.net SIP/2.0'. In case of using a proxy the user id is composed of the id, domain and proxy ip: 'INVITE sip:1234567_sipgate_de@217.10.79.9:5060 SIP/2.0'. Twinkle expects '1234567@sipgate.de' and rejects the call.</p>
<p class="bodytext">Here is a patch that works around this by modifying t_phone_user::match() to accept any incoming call (a similar patch is available at <a href="https://steffenpingel.de/?id=" title="Opens external link in new window" target="_blank" class="external-link-new-window" >Twinkle's homepage</a>):<br /> </p>
<p class="bodytext"> --- twinkle-1.0~beta/src/phone_user.cpp 2006-12-28 11:28:26.000000000 -0500<br /> +++ twinkle-1.0~beta-patched/src/phone_user.cpp 2007-01-14 16:54:10.000000000 -0500<br /> @@ -1010,7 +1010,8 @@<br /> return true;<br /> }<br /> - return false;<br /> + //return false;<br /> + return true;<br /> }<br /> bool t_phone_user::match(StunMessage *r, t_tuid tuid) const {</p>
<p class="bodytext">&nbsp;</p>]]></content:encoded>
			<category>KDE</category>
			<category>Linux</category>
			
			<author>steffenp@gmx.de</author>
			<pubDate>Tue, 16 Jan 2007 03:49:18 +0100</pubDate>
			
		</item>
		
		<item>
			<title>Howto run OpenWRT on a Fritz!Box 7170 in a chroot environment</title>
			<link>http://steffenpingel.de/news/archive/howto-run-openwrt-on-a-fritzbox-7170-in-a-chroot-environment/?tx_ttnews%5BbackPid%5D=2&#38;cHash=fd18ff7a5d12ff8956a618158c08f0a7</link>
			<description>I recently got an AVM Fritz!Box and I was curious how much effort it would take to extend the Linux...</description>
			<content:encoded><![CDATA[<p class="bodytext">I recently got an AVM Fritz!Box and I was curious how much effort it would take to extend the Linux system running on the box. I had no incentive to replace the original firmware by a completely different image since it does wonderful things such as VoIP and features a great web interface. There are a few modified images that are based on the original firmware floating on the net but I was looking for a less invasive way and would not want to rely on someone updating the firmware image each time AVM released an update. </p>
<p class="bodytext">The solution I came up with basically runs a second Linux distribution in a chroot environment on top of the one installed on the box. I chose <a href="http://openwrt.org" target="_blank" >OpenWrt</a> for its Debian like ease of use, the numerous packages that are available and for its sparing use of system ressources. The distribution fits easily on a 32 MB USB stick and is straight forward to install.<a id="more-44"></a></p>
<p class="bodytext">Please be aware that you may <b>void your warranty</b> modifying the Fritz!Box. <b>Use these instruction at your own risk!</b> </p>
<h3>Getting OpenWrt</h3>
<p class="bodytext">On the first attempt I downloaded the <a href="http://downloads.openwrt.org/people/nbd/ar7/OpenWrt-ImageBuilder-Linux-i686.tar.bz2" target="_blank" >OpenWrt image builder</a> and ran <code>make</code>. This will create a file <code>build_mipsel/linux-2.4-ar7/root.tar.gz</code> which contains a complete OpenWrt base system that can be used as a chroot environment.</p>
<p class="bodytext">On the second attempt I got brave and used buildroot-ng from the OpenWrt svn to build the image. The advantage lies in the possibility to customize the image. Busybox which is used by OpenWrt and combines most unix system utilities in a single binary needs to be configured during compile time. Particularly the list of tools contained in the busybox binary has to be chosen then. The OpenWrt busybox binary is fairly complete (as is the one running on the Fritz!Box) but it lacks a few utilities such as adduser and swapon that I wanted to have. </p>
<p class="bodytext">Building the root image from source takes only a few steps provided that your work station has the necessary build tools installed (see <a href="http://openwrt.org" target="_blank" >openwrt.org</a> for documentation):</p>
<pre>svn co https://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt<br />cd openwrt<br />make menuconfig<br />  * Target Images -&gt; tgz<br />  * Base system -&gt; busybox -&gt; Configuration<br />make</pre>
<p class="bodytext">The generated image is located in <code>bin/openwrt-rootfs.tgz</code>.</p>
<h3>Starting the chroot environment</h3>
<p class="bodytext">The Fritz!Box kernel does not have support for ext2 which is needed to mount the partition that will contains the OpenWrt chroot environment. Since the kernel is able to load modules that can be fixed but a FAT16 partition is needed to do that boot strap. This partition is automatically mounted by the box when the usb stick is attached and contains:</p><ul> <li>ext2 module (ext2.o)</li> <li>chroot executable (chroot)</li> <li>start and stop scripts (start-chroot.sh, stop-chroot.sh)</li> </ul><p class="bodytext">The startup script loads the module and mounts the required file systems:</p>
<pre>#!/bin/sh -e<br /><br />SELF=/var/media/ftp/MassStorageDevice-Partition-0-1<br />ROOT=/var/chroot<br /><br />mkdir $ROOT<br /><br />insmod $SELF/ext2.o || true<br /><br />mount /dev/scsi/host0/bus0/target0/lun0/part6 $ROOT<br />mount -t devfs none $ROOT/dev<br />mount -t proc none $ROOT/proc<br />mount -t usbdevfs none $ROOT/proc/bus/usb<br /><br />$SELF/chroot $ROOT /bin/sh /etc/init.d/chroot start</pre>
<p class="bodytext">The chroot executable and ext2 module can be obtained here:</p>
<pre>wget <a href="http://www.spblinux.de/fbox/ext2.o" target="_blank" >www.spblinux.de/fbox/ext2.o</a><br />wget <a href="http://www.spblinux.de/fbox/chroot" target="_blank" >www.spblinux.de/fbox/chroot</a></pre>
<h3>Putting it all together</h3>
<p class="bodytext">I created 3 partitions on the USB stick. The FAT16 partition for boot strapping, a swap partition and the ext2 root partition that contains the OpenWrt system:</p>
<pre># fdisk -l /dev/sda<br /><br />Disk /dev/sda: 32 MB, 32112640 bytes<br />2 heads, 32 sectors/track, 980 cylinders<br />Units = cylinders of 64 * 512 = 32768 bytes<br /><br />   Device Boot      Start         End      Blocks   Id  System<br />/dev/sda1               1          31         976    6  FAT16<br />/dev/sda2              32         980       30368    5  Extended<br />/dev/sda5              32         519       15600   82  Linux swap / Solaris<br />/dev/sda6             520         980       14736   83  Linux</pre>
<p class="bodytext"><b>The scripts used in these instructions expect exactly that disk layout</b>. </p>
<p class="bodytext">Extract <a href="http://steffenpingel.de/files/fritz/scripts.tar.gz" title="Opens external link in new window" target="_blank" class="external-link-new-window" >scripts.tar.gz</a> to /dev/sda1 and <a href="http://steffenpingel.de/files/fritz/root.tar.gz" title="Opens external link in new window" target="_blank" class="external-link-new-window" >root.tar.gz</a> to /dev/sda6.</p>
<p class="bodytext">The root image has a few modifications compared to the one from the OpenWrt ImageBuilder:</p><ul> <li>Busybox commands (run <code>busybox</code> for full list): adduser, addgroup, hostname, swapon, swapoff…</li> <li>Pre-installed packages (run <code>ipkg list_installed</code> for full list): strace, tcpdump, samba, bind-host…</li> <li>These files have been edited: <ul> <li><code>/etc/init.d/chroot</code>: commands run on startup</li> <li><code>/etc/hosts</code>: fritz has been added</li> <li><code>/etc/ipkg.conf</code>: <code><a href="http://downloads.openwrt.org/people/nbd/ar7/packages" target="_blank" >downloads.openwrt.org/people/nbd/ar7/packages</a></code> has been added as a source</li> <li><code>/etc/passwd</code>: an empty password has been set for root</li> <li><code>/etc/resolv.conf</code>: 127.0.0.1 has been set as nameserver</li> <li><code>/etc/samba/smb.conf</code>: samba configuration with user security</li> </ul></li> </ul><h3>Starting the chroot environment</h3>
<p class="bodytext">With the latest firmware AVM offers a convenient way to access the Fritz!Box. Just dial <code>#96*7*</code> from a phone directly connected to the box to start a telnet daemon (the daemon can be deactivated by dialing <code>#96*8*</code>).</p>
<p class="bodytext">Connect the USB stick to your Fritz!Box and telnet the box. The first partition on the stick should have been mounted to /var/media/ftp/MassStorageDevice-Partition-0-1. You can check that by running <code>mount</code>.</p>
<p class="bodytext">Start the chroot environment with this command:</p>
<pre>/var/media/ftp/MassStorageDevice-Partition-0-1/start-chroot.sh</pre>
<p class="bodytext">Use <code>ps ax</code> to check if dropbear, the ssh daemon, is running. Now have fun logging into your Fritz!Box using ssh! </p>
<pre>$ ssh root@192.168.11.254<br />root@192.168.11.254's password:<br />sh: /usr/X11R6/bin/xauth: not found<br /><br /><br />BusyBox v1.2.1 (2006.08.27-01:41+0000) Built-in shell (ash)<br />Enter 'help' for a list of built-in commands.<br /><br />  _______                     ________        __<br /> |       |.-----.-----.-----.|  |  |  |.----.|  |_<br /> |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|<br /> |_______||   __|_____|__|__||________||__|  |____|<br />          |__| W I R E L E S S   F R E E D O M<br /> KAMIKAZE (bleeding edge, r4681) -------------------<br />  * 10 oz Vodka       Shake well with ice and strain<br />  * 10 oz Triple sec  mixture into 10 shot glasses.<br />  * 10 oz lime juice  Salute!<br /> ---------------------------------------------------<br />root@fritz:~#</pre>
<p class="bodytext">The root password <b>is empty by default</b>. Make sure you change it using <code>passwd</code>.</p>
<p class="bodytext">In order to initialize the chroot environment when the Fritz!Box is restarted I modified the <code>/var/flash/debug.cfg</code> file which is run by <code>/etc/init.d/rc.S</code> (<b>never</b> use vi to edit files in /var/flash, always use nvi, cp, echo…):</p>
<pre>echo &quot;[ -f /var/media/ftp/MassStorageDevice-Partition-0-1/start-chroot.sh ] &amp;&amp; . /var/media/ftp/MassStorageDevice-Partition-0-1/start-chroot.sh&quot; &gt; /var/flash/debug.cfg</pre>
<h3>More fun</h3><ul> <li>Run <tt>ipkg list</tt> for a list of available OpenWrt packages</li> <li>Run Samba to share files in your local network</li> <li><a href="http://www.wehavemorefun.de/fritzbox/Fli4l-Fritz!Box_VPN" target="_blank" >Run OpenVPN</a> for remote access to your local network</li> <li>Edit <code>/etc/init.d/chroot</code> to modify the commands that are run on startup</li> </ul>]]></content:encoded>
			<category>Linux</category>
			
			<author>steffenp@gmx.de</author>
			<pubDate>Mon, 28 Aug 2006 03:12:55 +0200</pubDate>
			
		</item>
		
		<item>
			<title>Displaying image galleries in Wordpress posts</title>
			<link>http://steffenpingel.de/news/archive/displaying-image-galleries-in-wordpress-posts/?tx_ttnews%5BbackPid%5D=2&#38;cHash=a64e6712b9b7a20f70465f02bd9d5721</link>
			<description>After evaluating quite a few of the image gallery plug-ins for Wordpress I ended up using...</description>
			<content:encoded><![CDATA[<p class="bodytext">After evaluating quite a few of the image gallery plug-ins for Wordpress I ended up using <a href="http://www.matthias-koch.de/wordpress/photoshow.html" title="Opens external link in new window" target="_blank" class="external-link-new-window" >Photoshow</a>. It has good documentation and a great user interface which makes it really easy to use. It even displays a progress bar when generating thumb nails. The only quirk was that the directory and url in the configuration page needed a <strong>trailing slash</strong>. Otherwise no galleries would show up on the management page.</p>
<p class="bodytext">See <a href="http://blog.steffenpingel.de/2006/07/28/mit-dem-rad-in-paris/" title="Opens external link in new window" target="_blank" class="external-link-new-window" >this post</a> for Photoshow in action.</p>]]></content:encoded>
			<category>Wordpress</category>
			
			<author>steffenp@gmx.de</author>
			<pubDate>Sun, 30 Jul 2006 20:28:42 +0200</pubDate>
			
		</item>
		
		<item>
			<title>Time Tracking patch for Trac 0.9.6 released</title>
			<link>http://steffenpingel.de/news/archive/time-tracking-patch-for-trac-096-released/?tx_ttnews%5BbackPid%5D=2&#38;cHash=e40ac4066dc5e9fb323be7735fee3fee</link>
			<description>Today I uploaded an updated version of the Time Tracking patch. The patch has been improved...</description>
			<content:encoded><![CDATA[<p class="bodytext">Today I uploaded an updated version of the <a href="http://trac.edgewall.org/wiki/TimeTracking" title="Opens external link in new window" target="_blank" class="external-link-new-window" >Time Tracking patch</a>. The patch has been improved significantly due to contributions by Magnus Sandberg. The following changes have been made:</p><ul><li>The milestone page now show time tracking progress bars for &quot;Ticket status by x&quot;</li><li>The commit hook can now handle different spent/remaining values for multiple tickets</li><li>Tooltips have been added to the time tracking progress bars</li></ul><p class="bodytext">&nbsp;</p>
<p class="bodytext">&nbsp;</p>]]></content:encoded>
			<category>Trac</category>
			
			<author>steffenp@gmx.de</author>
			<pubDate>Sat, 29 Jul 2006 21:20:31 +0200</pubDate>
			
		</item>
		
		<item>
			<title>Watching WMV movies in Konqueror</title>
			<link>http://steffenpingel.de/news/archive/watching-wmv-movies-in-konqueror/?tx_ttnews%5BbackPid%5D=2&#38;cHash=be23a8364b967efb3b5fd9e355a43f33</link>
			<description>Konqueror would not play wmv videos with the mime type application/x-mplayer2 on my Debian system...</description>
			<content:encoded><![CDATA[<p class="bodytext">Konqueror would not play wmv videos with the mime type application/x-mplayer2 on my Debian system so I manually added the mime type to konqueror’s file associations which fixed the problem.</p>
<p class="bodytext">Here is a screenshot of the configuration dialog:</p>
<p class="align-center"><a href="fileadmin/2006/07/wmv-files.png" title="Initiates file download" class="download" ><img src="uploads/RTEmagicC_wmv-files_01.png.png" style="width: 300px; height: 223px;" alt="" /></a>&nbsp;</p>]]></content:encoded>
			<category>Linux</category>
			<category>KDE</category>
			
			<author>steffenp@gmx.de</author>
			<pubDate>Tue, 18 Jul 2006 21:39:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title>First &quot;official&quot; release of the Trac connector</title>
			<link>http://steffenpingel.de/news/archive/first-official-release-of-the-trac-connector/?tx_ttnews%5BbackPid%5D=2&#38;cHash=a0d57772e06a190ea6304b6a9b692955</link>
			<description>A preview release of the Mylar Trac Connector has been uploaded to the Mylar dev update site...</description>
			<content:encoded><![CDATA[<p class="bodytext">A preview release of the Mylar Trac Connector has been uploaded to the <a href="http://www.eclipse.org/mylar/dl.php" title="Opens external link in new window" target="_blank" class="external-link-new-window" >Mylar dev update site</a> (Eclipse 3.2 only): <tt>download.eclipse.org/technology/mylar/update-site/dev</tt>. Please uninstall any releases installed from the update site at steffenpingel.de/update prior to installing the Trac Connector from the Mylar update site.</p>
<p class="align-center"><img src="uploads/RTEmagicC_update-manager_05.png.png" style="width: 300px; height: 314px;" alt="" />&nbsp;</p>]]></content:encoded>
			<category>Eclipse</category>
			<category>Trac</category>
			<category>Java</category>
			
			<author>steffenp@gmx.de</author>
			<pubDate>Tue, 18 Jul 2006 03:52:32 +0200</pubDate>
			
		</item>
		
	</channel>
</rss>