Older blog entries for pipeman (starting at number 0)

20 Oct 2004 (updated 20 Oct 2004 at 03:24 UTC) »

I thought I'd try to use this diary thing since I never seem to find a blog tool that I like.

Today's missing Firefox feature: I'd like to be able to disable proxy usage on a per protocol basis, much as I can do with specific subnets and hosts. This is because the main reason I'm using a proxy is that I'm using an unencrypted WLAN for my laptop, and I don't want people sneaking in on my dirty web surfing. So I have set up a SOCKS proxy on a landline-connected computer, with which my laptop communicates using OpenVPN 2.0 beta11. There is, however, a considerable network latency to the SOCKS server from my laptop, so when possible without compromising too much of my privacy, I'd like to bypass the proxy. And one such example is SSL encrypted web pages. Consequently, I'd like a checkbox or something next to each protocol field in the Firefox proxy setup saying "Don't proxy this protocol".

Speaking of OpenVPN, I'm quite impressed by the simplicity of setting it up. Of course, it took me a couple of hours before I finally realized (as always) that reading the manual would be a Good Idea. But even before that, I managed to get it up and running with self-signed certificates and all quite easily. It was just when I wanted to add a third computer to my VPN I actually had to learn something. Now, the configuration file for the clients are just about 8 rows, and it just works. Wonderful. Now lets hope it's actually secure, too.

Todays almost a free lunch: When at the Central Station in Stockholm yesterday, I had a spare half hour before the train departure, so I switched on the laptop only to notice that there were no less than three visible WLANs there. Not very surprising in itself, I guess: they were all commercial "hot spot" WLAN operators providing paid-for Internet access . As such, they of course wouldn't let me use their net without fishing up a credit card or otherwise buy access time. No free surf for me, thus. But I poked around on the networks and noticed that of the three different nets, two of them allowed both unrestricted DNS and ICMP pings (but not routing anything else). This should allow for some free wireless surfing using IP over DNS, and it seems as if there has been a release as late as june 2004, so the project doesn't seem entirely dead. I'd love to see a Windows implementation (at least on the client side), too, as no Linux distribution has yet to survive attempting to acccess my crappy PC-Card slot (they just freeze), and consequently I can't use WLAN in Linux. Perhaps you could merge it into the transport layer of OpenVPN, making it an alternative to the traditional TCP and UDP transports it offers today? I'll offer a beer to anyone who implements it. :-)

Today's missing Azureus feature: I'd like to be able to request that a specific piece # is downloaded as soon as possible - or, for that matter, to have a better method than the current "priority" selection to be able to force Azureus to download a specific file contained within a torrent more or less immediately. As it is now, is seems that if I tag a file with "high" priority, it often gets stuck at 99,9% for some reason, presumably missing only a piece or to. With the first suggestion, I could then figure out which pieces are missing and manually request that Azureus try to download them. However, at the moment there seem to be no way to find out the exact piece numbers.

Today's I-like-to-browse-my-logfiles: I checked out the latest stats for my web site, noticing that there has been 89 downloads of my silly little program Duper during the last seven days, although the web page has only gotten 82 hits. It is interesting, though, that there has been just under two hundred downloads since its release three weeks ago, although a "file duplicate finder" must be one of the most over-implemented utility software category on the web today, and I doubt that my attempt at it is among the better ones. Also, Duper requires Java, which I though was something that scared people off. Well, maybe not anymore. Even more surprising (to me, at least) is that there has been over one hundred downloads (138 to be exact) of the source tarballs, showing that at least half of the users were actually interested in the source code. Which, in the case of the latest version, won't even build (without the modified fast-md5 package, see the next paragraph).

Today's confession: I have been in violation of the LGPL. The binary (JWS) distribution of Duper comes with a modified version of a quite fast Java MD5 implementation. I wanted to ensure efficient use of memory-mapped IO, so I modified it slightly to work with ByteBuffers instead of a regular byte[]. I never completed the modifications though (I couldn't get the native library to work with the ByteBuffer mania, but the pure Java version worked alright and seemed fast enough), and I couldn't decide on how to ship the modifications without being forced to bundle my own "fast-md5" distribution, which also essentially is a fork. So I just closed my eyes to it all in order to get the thing out on the wild at all. Now, however, I just put up my own modified version of "MD5.java" from the fast-md5 package at http://dll.nu/duper/MD5.java. Presumably that should be enough, and anyway, I don't think anyone cares either way. :-)

Today's Firefox/Gecko annoyance slash finally: this bug has been bugging me for over a year (more?) and is still present in the pre-release of Firefox 1.0. According to bugzilla, it's been fixed now.

I seem to have a fetish for writing redundant software. When browsing my website stats, I also noticed that my seemingly redundant Gzip plugin for Fiddler is also receiving a small but persistent stream of visitors (of which about 40 looked at the (minimal) source code during the last week). But there has been only five downloads of the zip file. Yay.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!