Category Archives: Software

New Top Level Domains and software implications

Share

Many software applications rely on validation routines to check the validity of domain names. By validation, I mean here to test the string submitted by the user and see if it matches a pre-defined pattern. A typical example are web forms that need to validate e-mail addresses.

This is by no means a new issue. It first appeared with the introduction of the .info TLD. Before that TLDs were only two or three letters long, and many validation routines could not cope with the 4 letters of .info. At the time, ICANN had developed a testing tool which allowed developers to test if their code took into account the requirement for 4 letters. Still, you find today on the Internet tons of library routines that do not support 4 or more letter TLDs.

Some of these routines also rely on a hard-coded list of TLDs. Even today, I sometimes find that some web sites cannot deal with my .eu domain, which was introduced 4 years ago.There are hundreds of thousands of these routines written in Javascript, PHP, Perl, ColdFusion, ASP and just about any programming or scripting language you can think of.

» Read more…

Soon in a mail box near you: Internationalized e-mail addresses

Share

The EAI working group of the IETF has finished (part of) its work on the interationalization of e-mail addresses. This, together with Internationalized Domain Names (IDN) will make it possible to send e-mail messages to non-7 bit ASCII addresses e.g.  måtte@københavn.dk or 中国@中国.中国 .

There are 3 RFCs, covering changes to the SMTP protocol, e-mail message format and delivery Status Notifications.

http://www.rfc-editor.org/rfc/rfc5335.txt
http://www.rfc-editor.org/rfc/rfc5336.txt
http://www.rfc-editor.org/rfc/rfc5337.txt

They still have the “Experimental” status, meaning they are not yet a standard. How long this will take to see them in actual products is difficult to guess.  Software vendors tend to look at market demand before implementing new features . Hence, it is time to pressure your favourite e-mail client vendor. Tell them you need that. For Microsoft Outlook, you could try here. For Apple Mail, there. For Mozilla Thunderbird, still somewhere else.

Traceroute on steroids

Share

Over the years, the venerable traceroute command has become a less useful tool, due to the fact there may be  some devices like load balancers along the way from your computer to the other.

Enter Paris-Traceroute, which tries to be smarter. In addition, it can also do traceroutes in UDP and TCP, in addition to ICMP, which is often blocked by firewalls.

It has currently been tested and confirmed to run on Linux and NetBSD. I can confirm it also compiles and works on MacOSX, but needs to be run as root. For the Redhat and CentOS crowds out there, I am currently build a RPM.

Hacking Mozilla Thunderbird

Share

A while ago, I replaced the official Mozilla build of Thunderbird I had on my Mac with an optimized-for-Intel build I found here.

Taking the process one step further, I compiled it myself from source. This allowed me to change one thing that annoyed me in the application. Thunderbird puts subject lines between brackets when you forward a message. It is not a configurable option. This is hard-coded into the application in the file nsMsgCompose.cpp (lines 2017 and 2018) and in mimedrft.cpp (line 1350).

One other annoyance I had with Thunderbird on MacOSX is that it displayed the date in MM/DD/YY format, rather than the DD/MM/YY format we use in Europe. This happened regardless of the date settings on the Mac, and irrespective of the official build I used.  Bingo this time. Recompiling Thunderbird solved this issue. My guess is that the application takes the defaults of the platform being used for compiling, rather than the run-time defaults.

Finally, my Thunderbird.app is now 31Mb, rather than 52Mb for the official build. As a result, it starts and runs visibly faster.

Unbound: a new open source DNS server

Share

From the press release: Unbound – a new open source alternative to the BIND domain name system (DNS) server– makes its worldwide debut today with the worldwide public release of Unbound 1.0 at http://unbound.net.

Released to open source developers by NLnet Labs, Verisign, Inc. (NASDAQ: VRSN), Nominet, and Kirei, Unbound is a validating, recursive, and caching DNS server designed as a high performance alternative for BIND (Berkeley Internet Name Domain). Unbound will be supported by NLnet Labs.

It is good news for the Internet as a whole there is another alternative to the venerable Bind. With a 75% market share, this means an exploit in Bind might cause serious trouble for a lot of people. With more alternatives, we mitigate the risk.

I have not tried it yet and certainly my experience on this small site will certainly not be representative. If you want to give it a try, download the source from http://unbound.net

I built RPMs for RHEL5 / CentOS 5 (WARNING Totally untested ! use at your own risk)

unbound-1.0.0-1.i386.rpm
unbound-1.0.0-1.src.rpm

See also the static page with more details for geeks.

Update: I have been using this RPM over the last two hours in lieu of Bind for local resolving and can report it works as intended