19 November 2009 |
by Patrick Vande Walle |
published in
Software
This morning, I fixed an annoyance in the Hellotxt plugin I use on this WordPress blog that would resend a notification to hellotxt.com every time one updates a post (to correct a typo for example).
I sent a tweet about this and, much to my surprise, I immediately received a series of direct messages on Twitter asking for the code. So here it is: hellotxt.php.txt , as well as the diff to the original file: hellotxtpress.php.diff
There are actually four changes:
- Added configuration option for URL shortener, so you can use your favourite URL shortener service. It defaults to mine.
- Added configuration option for post prefix. By default, it is “New Blog post: “
- Replace WP smart quotes by plain ones. This is to prevent that some microblogging sites print out the HTML entities value, instead of the quotes themselves. Copied straight from WP Laconica Tools.
- Don’t resend a post that was already submitted. The inspiration came from the WP Laconica Tools.
I will submit my changes to the plugin author, who may decide to incorporate them in a future release.
25 June 2009 |
by Patrick Vande Walle |
published in
DNS, ICANN, Software
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…
8 September 2008 |
by Patrick Vande Walle |
published in
Internet, Internet Engineering Task Force, Software
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.
16 August 2008 |
by Patrick Vande Walle |
published in
Internet, Software
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.
31 May 2008 |
by Patrick Vande Walle |
published in
Apple MacBook, Software
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.
20 May 2008 |
by Patrick Vande Walle |
published in
DNS, Software
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
17 May 2008 |
by Patrick Vande Walle |
published in
IPv6, Internet, Software
If you are connected to this blog using a IPv6 link, you will notice that near the top of the right column of the front page there is a message saying:
"Congratulations ! You're using IPv6 ! Your address is XXXXXXX"
In case you ask, the PHP code that performs this check is below:
if (substr_count($_SERVER['REMOTE_ADDR'],":") > 0 &&substr_count($_SERVER['REMOTE_ADDR'],".") == 0)
{
echo "Congratulations ! You're using IPv6 ! Your address is ";
echo $_SERVER['REMOTE_ADDR'];
echo '.';
}
else
{
echo "You're just using IPv4. Your address is ";
echo $_SERVER['REMOTE_ADDR'];
echo '.';
}
Update: Martin J. Levy suggested the following, more compact code:
function is_connected_ipv6()
{
return (substr_count($_SERVER['REMOTE_ADDR'], ":") > 0 && substr_count($_SERVER['REMOTE_ADDR'], ".") == 0);
}
echo is_connected_ipv6() ? "(via IPv6)" : "(via IPv4)";
17 May 2008 |
by Patrick Vande Walle |
published in
Internet, Real life, Software, Spam
I recently switched to a new position in my day job. I moved to another campus and office, where I found on my desk a computer with the default standard configuration. The default browser in this configuration is Internet Explorer 6.
I am still in a state of shock. Over the last four years in my previous position, I had been using Firefox as my main browser, mostly because of AdblockPlus, a remarkably efficient advertisement blocker.
With IE6, I have rediscovered how advertising on web sites can be distracting and invading. Suddenly, the pop-up windows, Flash animations and other nasties are there again. Unlike a paper magazine, when you only need to turn the page to ignore them, advertisements on web sites really prevent you to work until you close the pop-up window, stop the animation, turn off the volume, etc.
I guess one could say that Wladimir Palant, the developer of Adblock Plus, is one of the greatest benefactors to computer productivity over the last few years. Thanks, mate. Great job. I am forever grateful.
12 June 2007 |
by Patrick Vande Walle |
published in
Internet, Software
Apple has announced it is developing a Windows version of its Safari browser. The browser will be freely available for Windows in October 2007. This is good. Safari has demonstrated its many qualities on the Mac. It is a fast and reliable browser, maybe just lacking the range of extensions that Firefox has.
More competition in the Windows world is always welcome, if only to prevent overall market dominance from happening.
I tried Beta 3 of Safari for Windows this morning on my office computer. The good news first. I was pleasantly surprised by the speed at with it launched, compared to Firefox or Internet Explorer. According to Apple, it beats all the competitors for speed of HTML rendering, Javascript execution and launch times.
As is typical with beta versions, some things do not work yet.
- Importing Firefox bookmarks. I have not tried importing IE bookmarks
- Although Safari identified my company’s automatic proxy, the keychain module in the browser does not seem to work yet, so I had to enter a user name and password for each and every HTTP connection. You may have several for each page you want to display, so in this case it is very inconvenient.
- The user interface is typical MacOSX. This may be surprising for Windows users, especially in the preferences menu, where there is no “OK” or “Apply” button to confirm the changes you made.
Overall, Safari for Windows is very promising. I look forward for the next beta and the official release in October.
4 June 2007 |
by Patrick Vande Walle |
published in
DNS, IPv6, Internet, Software
We keep hearing in the ICANN and IETF crowds that DNSSEC is unavoidable and that it is the way to go. These are the same crowds saying that we should move to – or at least support – IPv6. In both cases, the prophets are not always those who actually do it. While www.isoc.org and www.ietf.org are running on a dual IPv4/IPv6 stack, much of the companies working within the IETF do not run dual stack web sites: Cisco, Microsoft, IBM, Sun, etc.
So, rather than telling others that they should run DNSSEC, I figured I should do my homework and run DNSSEC myself, without waiting for my TLDs to get signed.
The job is done, but it was no easy task. If you are looking for a simple button on a GUI to sign your DNS zones, move on. Currently, this is not for the faint of heart, which might explain the slow adoption path. Bind does include all the tools, but you first have to figure out how the damn thing works and use the right parameters.
I found a tool which made my life much easier. It is called ZKT. Once you have configured the header files to your environment and adapted your file directory structure to the requisites of ZKT, you can actually sign all your zones in one pass. It will call the necessary Bind tools with the right parameters. I have created a cron job that will periodically check which signatures need updating and change the zone files accordingly. Highly recommended.