Source code snippets...

As the domain name points out, I'm a wannabe hacker. Most of my ambitions end up in nothing, but I sometimes contribute little fixes to open source software or write funny or interesting code. If you find any errors or have suggestions to make, don't hesitate to mail me

Slapping a license on most of the stuff would be a gross overestimation of its value, so you're basically free to do with it whatever you want, as long as you don't hold me responsible.


cmssw_include_links.user.js - Greasemonkey script to improve the display of the CMSSW WebCVS by auto-linking include statements and Python import/load statements in the markup view.

CMSSW c/h Bookmarklet - Bookmarklet for header/source switching in the WebCVS mentioned above.

httpssh-20060923.tar.gz - A simple multiplexer that allows running an SSH-over-SSL listener and a HTTPS service on the same port (see blog post)

mod_xinerama-20080923.tar.gz - a Xinerama module for the ion3 window manager. Darcs repository:

http://wannabehacker.com/repos/mod_xinerama-3/

tunet-auth-0.0.1.tar.gz - a Perl script to automagically authenticate to TU Wien's wireless network. Requires the WWW::Curl module from CPAN.

bach-client-20080831.tar.gz - some Perl code for automated access to the web interface of Bank Austria

ba-ca.pl - a Perl script that converts CSV files from Bank Austria Creditanstalt's online banking web interface to QIF format for import in Gnucash. Features a nifty programmable item categorization to save you a lot of work when importing statements. Requires the Finance::QIF module from CPAN. This version uses Finance::QIF 2.0, which has a different API than Finance::QIF 1.0. The Finance::QIF 1.0 version is here.

decrypt-emp - EMusic is a music service which allows unlimited access to its catalog of MP3s for a monthly fee. When I subscribed to their service, downloading MP3 files worked from every web browser. Later, they tried to force people to use their 'Download Manager', a horrible piece of bloat with a broken Linux implementation. I got fed up and reverse engineered it, so here's a little perl script to replace it. This is version 1.2 that contains a few usability fixes, older versions are still available. Update: I don't maintain this any longer, the server name and URL scheme keep changing, and they're parseable from the file. Jeremy Jongsma took the code and added real XML parsing and a much nicer interface, see here.

uptimebonus-1.1 - a little hack that adds adjustable uptime to the Linux kernel. Version 1.1 is implemented as a kernel module only, so there's no need to recompile your kernel! Version 1.0 is also available, though there's absolutely no reason you would like to use it :)

largenum.c - a little program using the GMP library to calculate 2^100,000,000 and write it to stdout. Contains a nifty little idea on how to speed up the string conversion of large numbers. If you're just interested in the output, that's here(12.7MB :)).

ethercheck.perl - Perl script to parse incoming arpwatch messages and compare them to a list of known MAC addresses - basically allows you to get a notification whenever someone plugs a new network card into your network, without wading through tons of false positives from people replugging their notebooks.

identities.sl - another S-Lang script that allows you to specify different attributes (signature, host name, real name...) for different groups you post in. Updated 2003/01/23 to support replacement of some tokens (date/time, current group) in the settings. Also, brought up to date with slrn-0.9.7.4.

sigcolor.sl - an S-Lang script for use with the world's greatest news reader, which allows you to specify the color that is used to display your signature. For a historical view on the issue, check Alfie's page on slrn.

fac.c - a (stupid) example application of assembly language that works on both Linux and Win32 (x86).

westley-ansi.c - Brian Westley's entry to the 1988 IOCCC isn't ANSI-C compliant... I've ported it :)

turbo-plonk.sl - another S-Lang script to allow "thread killing" in slrn. It evaluates my real name filter over all headers in a group and adds a References: kill for every violator. Makes high-traffic, newbie-rich groups readable and could be semi-easily modified to kill Outlook articles. Warning: This produces huge score files. I recommend cleanscore.

dummy-shell.c - a dummy shell that only keeps the connection open after printing a welcome message. Used for SSH tunnel-only logins.