If you want something fixed soon, you gotta fix it yourself.

I lot of people don’t care about MSN Messenger. Especially those Americans who mostly use AOL Instant Messenger. But here in Canada, everyone uses MSN. I need it to contact all my friends, and maybe even more importantly my coworkers.

At work we have a corporate firewall which only allows outgoing traffic on HTTP port 80. This is okay because MSN has an HTTP method, which allows you to connect from anywhere. Recently the HTTP method stopped working with Pidgin. You could connect and see all your friends that are online, but if you tried to send a message it would report a connection error. A lot of people use Pidgin, but not all of those people use MSN with Pidgin, and out of those people most use the non-HTTP method, so they are fine too. But for the rest of us, this sucks. You can’t talk to anyone, and apparently a lot of people were very affected by this as you can see in the Pidgin bug tracker, and on the Ubuntu Forums.

This morning I was finally fed up. So I spent a few hours researching the MSN protocol, reading the Pidgin source code and capturing packets from the official Microsoft Windows Live Messenger client using Wireshark. After about four hours of insanely fun network reverse engineering, I had a fix.

I thought this as gonna be difficult, I would have to learn all the Pidgin code, and it might take days to figure out the newest changes in the proprietary MSN protocol. But it only took a few hours. Usually I would just sit back and wait for the Pidgin developers to fix it, because it’s their domain. Luckily this time I didn’t. I took a shot and it paid off big time!

I encourage all of you to dive head first into something you know nothing about and see if you can make a difference (especially those people who keep asking me about Jokosher bugs :) ). That’s what free software is all about.

Comments are closed.