Random Hack: Identify services that use outdated libraries on Linux

With the GnuTLS bugfixes recently, I faced the issue to restart services that depended on it: After updating the library, daemons still run the old version until restarted. I think I've seen this automated in some distribution, but it's nice to know where those tools fetch their data. I also…

Random Hack: Calculations in GNU make

I built an efficient algorithm for decimal addition in GNU make last year. While I won't vouch for its production quality (on the other hand: why not?), it's too cute a hack to hide from the world. Unlike other implementations, this isn't using unary encoding, and as such doesn't suffer…

Adventures with Intel VT-d (IOMMU)

After spending a couple of weeks of implementing VT-d support in the Muen Kernel, it finally worked today: A device was passed through to a Linux guest while undesired accesses (initiated by the UEFI firmware's USB driver during hand-over) were blocked and reported. The last issue, which took a week…

Wahlrecht

Das deutsche Wahlrecht hat so seine Besonderheiten, zum Beispiel die 5%-Hürde. Diese "gute" Tradition wurde auch bei der Europawahl in Deutschland eingeführt, vom Bundesverfassungsgericht für diese Wahl für ungültig erklärt, um mit einer 3%-Hürde ersetzt zu werden, die dem Bundesverfassungsgericht wieder nicht gefallen hat. Das Urteil ist leider…

Gerrit/OpenID woes

I'm maintaining the gerrit instance on coreboot.org, and we encounter weird issues every now and then. Many of them are related to its OpenID implementation. We use OpenID to avoid having to maintain another database full of login credentials, and shifting the nastier parts of account management (like storing…

Tunneling svnserve through SSH the right way[tm]

I had to setup some SVN repositories in a quite restrictive network today: HTTP works through proxy, and SSH is available. Options: Setup web access (downside: harder to manage with write access) Use svn+ssh protocol (downside: spawns a separate server process that tries to use the repo) Use ssh…