snippets of blackwings life

Back to Asia

After some long break in posting here due to some major workload (or better: overload), I finally get back to blogging – Cause it is time for another trip/vacation again :)

Tomorrow, on 24th of March I will board a flight from Frankfurt via Dubai to Bangkok using a pretty cheap 400€ Emirates flight. After taking some AirAsia connection to Chiang Mai I plan to travel far up northern Thailand into the Golden Triangle visiting even Myanmar… I plan to take some boat trip down the Mekong to get to Luang Prabang and finally to Vientianne. On April 14th I will catch a flight to Kuala Lumpur, but actually, I will spend the last week in Singapore and Bangkok, visiting some friends of my Singapore 2006/2007 adventure.

My flight back to Germany will be on April 21st – So there is 4 weeks of vacation. Stay tuned, frequent updates will be posted!

Update: As there were frequent requests: Packing list (german)

New flat

The great HallKitchenFinally we got it – After searching for some months, I found a new home in Erlangen together with Florian, a fellow student from my semester. Having lived in the HaWo for 5 years now, it is time to get into something new. Of course, I enjoyed the time in the dormitory, especially in my flat-share, but with finishing my diploma I have to move out anyway – And being one of the “oldest” people in this 400people dorm, I feel ready to do so… Most of all: I’m starving for a living room, a balcony and more space to stuff all my junk :)

Sebastians new roomEnzi in his new roomAnyway, searching a flat was quite time consuming, because the market is almost empty. Of course you could ask a real-estate guy, but they will charge you a fortune. Our solution was Gewobau, who finally got us a nice offer: A 74 square meter flat with a nice view and so on. We were quite lucky, because the family, previously living there gave us a good offer to get their fitted kitchen for a good price – And the best part: I has a gas stove! The balcony has a pretty nice view onto the so called “Brucker Seela” heading straightly South.

View from the balconyBut before moving in (which is planned for the end of September anyway), there is a lot of work to do. The wooden parquet in Enzi’s and my room need a kind of complete refurbishment, most walls need to be repapered and painted… But anyway – Besides all that I’m happy with it :)

Completely recreational weekend

SummerAfter some gap having no time to write another posting, I’m back – willing to write a little more the next few weeks. I had been quite busy the last few weeks with my ongoing diploma thesis and the surrounding stuff such as summerfests and so on. Anyway, my thesis is going quite well – at least most of the experiments are working and result are satisfying…

On the wayThis weekend, summer came back to Germany after some rainy and pretty cold weeks in the beginning of July. So again: Time for doing stuff outside. My former flat-mate Florian called me on Thursday in order to check out my plans for the weekend because his girlfriend (also a former flat-mate of mine) came over from Spain. So we decided to spent Saturday together for some relaxing bicycle tour alongside the Ludwigskanal. The “Ludwigscanal” is a Perfect viewman-made canal which links the rivers Danube and Main making a track from Kelheim over Neumarkt in der Oberpfalz, Nuremberg and Bamberg. This canal is nowadays not used as a commercial waterway, but is a popular track for cycling tours. We did just a pretty short track from Burgthann to Schwarzenbruck having a scenic view of several Sluices and untouched nature. It’s no secret that there are several beer gardens alongside the canal… All in all: This place is absolutely perfect to get away from stressful and loud cities. You will get nature and silence. Just relax :)

Posing...When I woke up this morning we already hit the 28°C, which is quite a lot for 10 in the morning… After some breakfast I decided to hit the Schlossgarten (the public garden behind the historic castle, that hosts my University’s administration). It was already quite crowded, but I found a quiet spot to read and chill out… Finally Alex, a friend of mine, and me decided to get out into Franconian Switzerland in order to go for some climbing. We chose the the Graischer Bleisteinwände and had a pretty relaxed session there… By the way: The picture is from a tour two weeks ago at the Zehnerstein in the well-known and famous Trubach-Valley.

All in all this weekend was pretty relaxing: Wonderful weather (YEAH! Summer is back!!!), refreshing time in nature and no hurry :)

filed in miscellaneous

My c-plugins for qmail-spp: rblchecks and greylist

In order to fight spam, methods such as using a dns-based realtime blacklist or greylisting have been proven effective.

I use qmail with the very useful qmail-spp patch-set, that adds plugin capabilities to qmail-smtpd. Instead of just adding more and more chained commands to the run; file of tcpserver, you just specify a small plugin that is executed by qmail-smtpd when a certain smtp command is issued. In fact, this method is way nicer than forking many programs in a row… My run-line for the smtpd grew constantly, due to addition of rblsmtpd, qgreylist, … and I started to really dislike the increasingly huge memory footprint of a single smtp session. So I started searching for a rbl and greylisting plugin for qmail-spp – preferably in c, because forking several perl-instances per smtp session is just overkill. What I found was:

  • greylisting-spp by Peter Conrad. His website indicated, that he claims greylisting-spp to be alpha-quality, so I kept away from using it (After writing my own greylisting solution and putting him into cc, he said that it is actually quite stable – but the website did not indicate it *argh*).
  • ra-plugins by Roberto Alsina. Great collection of plugins – including a rblchecks one. But unfortunately his implementation lacks whitelisting support.

Because of this I did some own implementation – rather small and in c. To be honest, both greylisting and rblchecks are based on existing ideas / implementations. I suggest the following usage in the [mail] section of qmail-spp:

Update: People keep asking me per mail, what kind of blacklists and so on I use: I use the and as blacklist and whitelist common mailservers such as, etc.

rblchecks.c – Check TCPREMOTEIP against a list of white- / blacklists.

Based on rblchecks.c of ra-plugins written by Roberto Alsina. Features & behavior of this plugin as follows (are README, and Makefile will be added at a later point).

  • If SKIP_RBL is set, plugin exits without doing anything (so following plugins in the chain will be executed)
  • The bstring library is used. So please have its header files present.
  • If TCPREMOTEIP is listed in one of the servers specified in the RWLSERVERS environment variable, plugin exits with A answer code. Please use tcp.smtp to specify the RWLSERVERS. Multiple servers can be supplied using : as separator.
  • If TCPREMOTEIP is listed in RBLSERVERS, plugin will exit with error 541 and qmail-smtpd will quit the smtp session.
  • Be sure to set a DNS timeout via resolv.conf In a future version, there will be an timeout handling within this plugin.
  • Plugin will give diagnostic messages via STDERR, so that qmail-spp will pass them to the logging system of qmail.
  • In case a IPv6 connection is found ($PROTO=TCP6) the plugin exits with a note – because IPv6 is not (yet?) subject to realtime blacklists.

greylist.c – Perform greylisting on TCPREMOTEIP.

This plugin was inspired by qgreylist by Jon Atkins. This implementation does a IP based greylisting – Sender and Receiver addresses are not taken into account! Right now there is just the c-file. Documentation as in README will follow.

  • If SKIP_GREY is set, plugin exits without doing anything (so following plugins in the chain will be executed)
  • Greylist creates an empty file named by TCPREMOTEHOST in the specified BASEDIR (default is /var/qmail/greylist) when a host is first seen.
  • A host, that is seen the first time gets a temporary 451 error.
  • After a minimum waiting time set via GL_MIN_REJECT (default is 300s) a SMTP session is accepted.
  • If host comes back before GL_MIN_REJECT, it gets an 451 again.
  • Once a session was successful, the entry has a lifetime of GL_ACCEPT_GOOD (default is 32 days).
  • If a host does not come back after GL_MAX_WAIT (default is one day), the entry is subject to cleanup.
  • On every subsequent SMTP session of TCPREMOTEHOST the file-access-time of the corresponding file is updated to the current time.
  • The modification time of the file corresponds to the time, when the host was first seen, while the access time refers to the time when it has been seen for the last time.
  • Be sure to have enough inodes in the specified BASEDIR! For high-volume servers you might consider using a ramdisk. But even for a server with about 15000 mails per hour, there was no slowdown. Best results have been seen on ext3 with htree, xfs and reiserfs. (I personally use a ramdisk with reiserfs on it. Do NOT use ramfs/tmpfs!
  • BASEDIR must be read-/writetable for the qmail-smtp user (usually qmaild)
  • Concept is also valid (and working!) for IPv6.
  • A clean-up cronjob for the BASEDIR is suggested. Just cleanup files, that have not been seen again within GL_ACCEPT_GOOD (now > atime + accept good) or that exceed GL_MAX_WAIT (now > atime +maxwait and atime == utime). A simple perl-oneliner does that:
    perl -e "my $time = time(); for my $file ( </var/qmail/greylist/*> ) { my ( $atime, $mtime ) = (stat $file)[8,9]; if ( ( ( $atime == $mtime ) and ( $atime < $time - 300 ) ) or ( $atime < $time - 2764800 ) ) { unlink $file or print "unlink $file failed"; } }"

skip-if-relayclient.c and skip-if-smtpauthuser.c – Simple plugins that stop further qmail-spp processing if RELAYCLIENT or SMTPAUTHUSER

The use of creating a kind of if-then-else handling in qmail-spp made me write these trivial little programs. So get them in front of your tool-chain in order to stop further plugins from being executed when you have a trusted sender!

  • If SMTPAUTHUSER or RELAYCLIENT are set, plugin exits using the A answer code (no further plugins in the chain will be executed)

Book recommendation

Besides all the tour-blogging of my Singapore related stuff, it is worth mentioning that I found a lot of time during the last weeks to just sit down and read – Something that was pretty wiped-out during the busy last semesters in university. Probably you understand: After getting slammed by reading scientific stuff, sitting in the library and learning/reading, I was not really motivated to take a book and read for relaxing. So, here is my recommendation:

Planet Germany Eric T. Hansen, Dec 2006, in German
Book cover I got this book as Christmas present from my girlfriend – and she did a really good suggestion: This book is really a pleasure to read! The author itself grew up in Hawaii, but studied in Germany and is living there for about 20 years now. He is working as professional journalist now – And you can easily see that. Facts have been accurately collected and presented in a clear manner. Full of nice side-stories the author points out many typical German behaviors and critically analyzes the German’s habits. Most times you start laughing about the introductive story in a chapter, but when he clearly presents funny facts you actually start thinking. Topics like “Why do Germans always complain about anything?” or the topics about the German national identity are really interesting to read. This book is full of indirect provocation, social critics and interesting views – Presented by someone who is truly a proud American and who lived among these Germans, that always pretend to get americanized. Definitively worth reading!

Update: My girlfriend added, that this book was actually suggested to her by shutdown.

Looking back on 2006

Bangla Road at New Year 2006/2007 2006 is over – and it was a rather interesting year.
Probably one of the best years of my life, but this is closely related to my girlfriend. Many projects were really successful in 2006 and I could complete a lot of things. I got nice opportunities to get around a little and meet people from other background… So I took some time to recall the events that were important and impressive for me – and this list got quite long…

Climbing at Rodenstein Climbing in the so called Franconian Switzerland was one of my key sports improvements last year – got together with shutdown to many places and climbing nice sites all around. Although I’m not really deep into soccer, I rather liked the WorldCup. Mostly because for just 4 weeks most people forgot about common problems and just did a nice party together. I especially enjoyed watching the games at university – Like at my chair or the summerfest of Chemical Enginering! The visits to Hannover Messe and Achema were very impressive. I saw much impressive technology – Actually the “Messeparty” in Hannover together with some friends was one of the best parties in 2006. The best thing was: For both events we stayed overnight: So we had enough time to dig into details!

Mirijam and me at Schlossgartenfest 2006 Bergkirchweih 2006: The biggest party of the year. Had been on there at 8 of 10 days. Most times just drinking nothing, but just enjoying the athmosphere. Nice was the gathering there with people of CCC. The Schlossgartenfest was my favorite social gathering last year – Being nicely dressed I had the honor to accompany my girlfriend… It was pretty nice to show of the dancing skills, we got in the advanced course of university sports. Besides that, I really enjoyed going to the Erlanger Poetfest in August – Listening to odd lyrical creations in an nicely illuminated atmosphere is an interesting experience.

Best hacking event in 2006 was PH-Neutral in May. I had the chance to meet a lot of relaxed people and watch interesting talks. Nice party and some relaxing time to chill out in Berlin. The (hacking) camp ICMP3 was the most relaxing event this year – Met many people, enjoyed cooking together and finally had enough time to sit down and dig into some stuff. A camp like this is rather better than a big one: Cause it’s less administrative work involved!

Jeronimus Monestary and CathederalI passed my last exams for reaching my university degree. My Studienarbeit was also quite a success – It kept me busy between April and August. The Projectcourse of Chemical Engineering was the biggest team experience I had in 2006: All the people of my academic year trying to solve the problem of a Silane-Waste recovery producing pure HCL – With all the drawbacks like missing thermodynamical data, literature and so on. This was a real challenge and it went out pretty good. A really great academic experience was the High Pressure Chemical Engineering (Intensive) Course in Lissabon. Luckily a good friend of mine (Florian) and me had the chance to get this course. We met so many nice people from all over Europe. Of course we had time for sightseeing: Lissabon and its surrounding area is really impressive. Probably I will get back to Portugal soon! Just for fun I went to the Jahrestagung of Dechema/GVC: It turned out to be a good choice. I caught many interesting details not only about scientific progress, but more how the community works: You meet people and drink beer – And there the real conference is going on. The talks are just to pretend, that there is something big going on!!1
Downtown Singapore at Night Finally there is the biggest thing in the last few years: In November I left Germany for altogether about 5 month in order to do my academic attachment (internship) at Sulzer Chemtech in Singapore. Just browse around the last entries: It’s not important to say, how impressive and forming this is. Besides my girlfriend this is the best thing that ever happened to me.

filed in miscellaneous

Laptop broken

IBM x40 with white line... Yesterday was quite shocking – When I got home from from I switched on my Laptop as usual. But, there was a big vertical white line in the middle of the display. Sometimes its smaller, sometimes its broader….This really annoyed me, so I checked for the IBM support via their Electronic Service Calls Webinterface. Luckily I got an IBM Laptop having 3 years of worldwide warranty! This is quite good, cause without a Laptop… Uh, I’m trapped. Cause telephone, chat, E-Mail… It all relays on this thing.Actually this morning the IBM support of Singapore called me back, instructing me what to do: It’s really easy, cause I just have to drop off the Laptop in an Singapore Post-Office! And after 2-3 workings days it will be back, they said. Usually even faster. So on Monday I’ll drop off my Laptop at an SingPost point and see how fast they can fix it.

Update: It took them just less than 4 days. I collected the Laptop at lunch break at Thursday after handing it in at Monday at 18:00. Thumbs up!

crypto raid

In the last days I finally converted my fileserver at home to the dm-crypt / LUKS infrastructure of the Linux-Kernel in order to replace the old crypto-loop infrastructure which was running for some time.
I also used this to cleanup my bitbucket and enlarge my md-raid5.

Actually I was quite impressed by the speed when I set-up a the md5 raid and added the LUKS container using blowfish-cbc-essiv:sha256 and started to copy my data to this… On my old Athlon 1000 I got about 15mb/s writing performance, which is quite impressing!

after 5 years…

stufe-z-2006 Last saturday the long-planned meeting of my highschool class took place – so THIS was a reason to get on some multi-hour train-trip home. It’s already 5 years since highschool graduation (german: abitur)…
We met in Boppard-Windhausen, had some barbecue and actually stayed there til the early morning’s sunrise. It was quite interesting to hear what all the folks did in the last years – we don’t see each other quite often. Surprinsingly about 2/3 of all the people were there. But it was astonishing, that – consindering the outfit – noone except 2 or 3 people really changed.

So finally I spent some weekend with my parents and got back to Erlangen on Monday. By train. And it sucked. I got home 1hour and 37min later than originally planned. Train sucks. I finally decided to get a car again.

On the train-ride shutdown- called me from his bike-trip from Erlangen to Sweden. He told me, that he just arrived in Lübeck. After 7 days! So about 120km average per day. Check his blog for details.

filed in miscellaneous


After many people complaining that I do not blog my “serious” stuff from daily life, I finally surrender.

Here it is… a tiny little blog about stuff that does not matter.

filed in miscellaneous

Powered by WordPress