...stuff I do and things I like...

Tuesday, September 14 2010


Sooooooo I finally release BlueDrift a Bluetooth OBEX file-transfer sniffer that is based on the frontline bluetooth sniffer firmware for CSR bluecore-4 chips. The original slides from 2007 had the awesome title: More Fun with Blue Radio Waves. The project and it's name was inspired by of Driftnet.

You need the Frontline firmware image in order to turn your Bluetooth USB adapter into a sniffer. Don't ask me for this firmware, buy it!

Monday, September 06 2010

Android : IP Addr Widget

I've been playing with Android desktop widgets in the past days - so here is my first widget. IP Addr Widget: is a simple widget that displays the IP address of the current default route (the network interface that currently is in use). You can tap/click the widget to resolve the external/public IP address and FQDN of your phone.

I know there are about 10 other widgets that do the same. I just wrote it for practice. So enjoy!

Wednesday, June 02 2010

The Tor TCP DNS Daemon: update

Jake started to integrate my TTDNSD into Tor extras. This is super cool since I developed this little piece of software that allows you to do arbitrary DNS over Tor using TCP in January 2007.

Please test and give feedback to Jake or myself.


PS: this is a result of this years awesome PH-Neutral!

Friday, February 06 2009

Iodine 4 Android

Here is my iodine (DNS tunnel) package for Android. It includes the tun kernel module, the iodine client, and a shell script to make it all work. Have fun.

Get it from my Android section.

Monday, January 19 2009

Dmcrypt tools for OpenWrt

I don't know why there is no official dm_crypt/cryptsetup support on OpenWrt because if you search the web you will find many people trying to run cryptsetup on OpenWrt. Here is how I made it work (packages to download in the middle of this post).

Getting cryptsetup (userspace part of dm_crypt) to work on OpenWrt requires a whole bunch of tools and libraries these are: libuuid (part of e2fsprogs), libpopt, gettext, libdevmapper (part of lvm2). After one has build all those tools and libs cryptsetup builds nicely and just works. Also every time you run cryptsetup you will get a warning about the missing udevsettle binary but this is not a problem it works anyway. To save you from the hassle of getting cryptsetup to work all by yourself you can download the packages that are not part of OpenWrt from me here: dmcrypt-tools-openwrt.tgz (contains cryptsetup, lvm2, popt and gettext). I know gettext is available in some OpenWrt branches but not in trunk. Just unpack the archive in your OpenWrt package directory, run make menuconfig and select cryptsetup before building it by running make.

Now it would be nice to get cryptsetup into the OpenWrt SVN so that it will just be there in the future.

Why would I run cryptsetup on OpenWrt? Over the weekend I decided that I don't want to run a full blown Linux distribution on my NAS/backup box and rather run a small system. I chose OpenWrt because I'm familiar with it since I spent quite some time hacking on my NAS-4220b before deciding to go x86 for my NAS project.

Saturday, January 03 2009

dsniff for iPhone (jailbroken)

today I've build a dsniff package for the iPhone (if jailbroken). It took me a real long time to get it to work since I had to configure all the required libraries and dsniff to work on OS X, something I never did before. Dsniff basically is just a test package for me to get into the whole iPhone software business. Also it is a nice software package I like to have installed on all my devices (Nokia Maemo tablets and now iPhone).

The package is available from my iPhone page over here: http://www.mulliner.org/iphone/repository. I'll try to get included into the Cydia installer with my repository but until now you need to download the .deb file and run: dpkg -i dsniff.deb (on your iPhone). Happy sniffing!

Saturday, October 06 2007


I finally managed to update and upload sobexsrv. The new version is 1.0.1.

This version doesn't contain any new features but finally integrates some of the patches I got from various people. Thanks a lot! Besides these patches I just fixed a bunch of things. For a full list see the changelog.

In the next days I will make new .deb packages for various distributions.

Feedback is welcome as always.

Sunday, July 22 2007


I just uploaded ttdnsd. New in this version is support for running ttdnsd on your local computer (before you were only able to use it through a second computer or router). This new feature is made possible though a very simple LD_PRELOAD library that comes with ttdnsd v0.2. The setup is quite simple as you can see on the ttdnsd website.

Have fun with anonymous DNS over TOR.

Thursday, January 25 2007

ttdnsd : The TOR TCP DNS Daemon

ttdnsd is a small dns resolver for TOR which I wrote during the last two weeks. It basically bridges DNS from UDP to TCP to allow DNS requests using the TOR network. I know that there are other solutions for doing DNS over TOR but non of the solutions I know about are usable on small hardware like a router that runs OpenWRT. ttdnsd is made to run on this kind of hardware (about 600 lines of C).

Feel invited to comment and report bugs.

So now that I kicked out ttdnsd I can dedicate my weekend to my new toy (the N800) ;-)

Thursday, March 23 2006

ParanoiaOTP Source...

so here is the source to ParanoiaOTP I basically made it public because some one was asking for the code and since I did use the crypto stuff from GNU crypt I have to release the code (not that I wouldn't release the code otherwise but no body ever wanted it and I just didn't see the need). Have fun with what ever you do with it, and please don't send me hate mail about this. I simply didn't take licensing very serious when I wrote this program four years ago.

Monday, February 06 2006

BT Audit 0.1.1

so I just updated bt_audit my Bluetooth port scanner suite. I actually just applied a patch from Adam Laurie to disconnect the underlying ACL after each RFCOMM connection, I just added an option to switch in on and off.

Saturday, November 19 2005

sobexsrv v1.0.0

Here is a new version of sobexsrv, my secure scripting obex server. In version 1.0 (-preview3) everything is new!

A few new cool features are: multiple-client support, chroot jailing and internal mode

Wednesday, November 02 2005

btslides: use a Bluetooth headset to navigate slides

a long story, yesterday night while preparing a presentation (I had to give today) I had this idea of using my Bluetooth headset for navigating through my slides. Actually the idea is not new, there already is a Windows application to do this - but of course I wanted this for Linux. I actually just remembered how small the btsco code (thats the user land part of the bluetooth-alsa project) is and that it just reads AT commands. So it should be easy to hack something together. I went to work after finishing my presentation. It turned out to be a real fast and nice hack. After giving my presentation, using btslides, I wrote to the bluez-devel list to ask about integration...

Now here is epox-presenter-0.3.tar.gz with support for generic bluetooth headsets. The Epox-presenter was original written by Marcel Holtmann, the core maintainer of BlueZ.

The generic headset support is able to generate two different key press events. By default these are left and right for up and down. The key events can be changed to control different applications.

Please try, feedback is more then welcome!

Friday, October 28 2005

SOBEXSRV updated

I updated sobexsrv my scripting obex server for Linux, its now in version 0.1.2. The new stuff is: support for directories, file and directory deletion and logging (e.g. transfer log). Of course there were numerous bugs which got fixed (since I really use it myself I found like 10 bugs just while trying to use it on my lab box).

Download it here: sobexsrv-0.1.2.tar.gz

The next version will support multiple parallel clients among some other nice features.

Thursday, October 06 2005


is a serial multiplexer for wavecom modems

from the readme:
    wavecom modes have a multiplexing mode to send two streams over one serial line, one stream for commands (AT) and one for data (GPRS) the multiplexer will spawn two sockets one for each stream, the data socket will be dead until a GPRS connection is initiated

    command socket is: /var/run/wavecom_mplex_cmd

    data socket is: /var/run/wavecom_mplex_data

    this is part of the h63xx port Linux port!
download: mplexd-0.1.tar.gz

see MINICOM for howto use minicom with mplexd, GPRS has not been tested sofar (lame, I know)

for more infos see: www.handhelds.org/moin/moin.cgi/HpIpaqH6315

Tuesday, September 13 2005

sobexsrv - or the scripting OBEX server

is a Linux OBEX server with support for OPUSH put/get and OBEXFTP. The server is currently Bluetooth only and build ontop of openobex and BlueZ (of course).

The server handles only the basic OBEX operations and calls an external executable for all the application-logic (like OBEXFTP). The basic script included in the package can do OPUSH put/get and OBEXFTP.

I started this project some years ago (I wrote the first ten lines something like 2 years ago) and I finished it now within 2 weeks while traveling by train on the weekends :)

The code is in early development so watch out for bugs!

Download it here sobexsrv-0.1.tar.gz

Tuesday, August 23 2005

BlueZ for the PMA400

so I just uploaded my BlueZ package for the PMA400. The package just contains the BlueZ libs and utils that work with the 2.4 kernel running on the PMA.

Now I need to port some useful applications to the PMA :)

Friday, March 25 2005


I just hacked together a bunch of GKrellM plugins to display data gathered from the ibm-acpi driver. Data displayed is CPU, GPU, HDD, Mini-PCI, Battery temperature and the fan speed. Every value has it's own plugin, the display is very simple with no config. options.

Download it here: gkibm-acpi-0.1.tar.gz

Many thanks to Brad Davis for gkfreq, my code is totaly based on his plugin!

Tuesday, January 25 2005


so today is update day (not to confuse with patch day!). So I updated (bug-fixed) btfs my Bluetooth/OBEX file system. Somehow it was broken on 2.6.X, now it works! Also I removed/reseted the beta timeout of BlueSpam and BTClass. Also I removed some features (or disabilities) from BlueSpam (the Nokia device filter and the bluetooth device class filter). Have fun!

Wednesday, January 19 2005

More btChat!

btChat just became part of a university project of me. Therefor you can hope for some nice new features. Also a MacOS port should come out of this :-)

Wednesday, December 15 2004

btChat and GAIM 1.1 ready!

I just uploaded the new version of btChat. No new features, sorry! But I released a binary version of the btchat plugin for GAIM (>= 1.1.0), this means you don't need to compile GAIM by yourself anymore. This was possible thru a change in GAIM itself, thanks! I hope a few more people will try out btChat now since they don't have to ugly compile GAIM.

Thursday, December 09 2004

btChat with Gaim 1.1

I just started porting my btChat plugin to Gaim 1.1 also I will update the btChat daemon to compile with the current bluetooth (Bluez) library version. Lets see when it is ready...

Friday, November 12 2004

btfs 0.0.2

I just uploaded a updated version for btfs (Bluetooth FileSystemMapping). It now compiles with FUSE 1.9 and Kernel 2.6 ... ok it's a little late ... but nobody is using it anyway or at least nobody complained.