Changing Track...

Posted by

It's been a while since my last anti-spam post. But I haven't been idle! I've been reading the DomainKeys Identified Mail (DKIM) RFC that was released in May this year.

This protocol is so similar to my own idea that I've decided to drop my idea and look more closely at DKIM more closely. The difference, I guess, is that my idea was a whole separate protocol, whereas DKIM is built on top of SMTP and MIME. The basic idea is that you put a signature for the message in the header, and the receiver can use DNS to query the domain of the sender for the public key to decrypt the header.

The end result is almost identical to my idea: when you receive a piece of mail at your server, you know that the domain of the "From" is taking responsibility for the message.

At first glance, that may not sound like a big deal. But it's what you do with that knowledge that makes sense. You see, the biggest problem with spam is that it is very processor intensive -- you have to scan every single email using Baysian filters, look up RBLs, internal blacklists/whitelists, etc. Anything you can do to ensure email can bypass those checks is a win.

In addition, anything you can do to ensure a mail is marked as spam more quickly (i.e. with less filtering and so on) the better as well.

And that's what DKIM allows. Like I said, it's what you build on top that matters.

Stay tuned for my ideas :)

Search stuffed in Vista?

Posted by

I've had this problem with my latest installation of Vista where the search wasn't finding anything. If I opened up "Indexing Options" from the control panel, it kept saying something ridiculous like "62 items indexed" - clearly I have more than 62 items to index!

Anyway, I figured out a work-around. From that "Indexing Options" window, click on Modify then Show all locations (you'll have to allow the UAC prompt). Next, uncheck everything, making a note of what you uncheck as you go.

From there, click OK to dismiss that dialog, then back in "Indexing Options" click Advanced and then rebuild. We you click OK again, you'll see it says "0 items indexed" and "Indexing complete" underneath that.

Good, you've "reset" the indexer, basically. Now, go back into Modify and re-check everything that was checked before. Click OK and you should see it start indexing again!

It'll take a little while for the index to build up but hopefully it doesn't get "stuck" anymore. Give it a couple of hours and you should see something like "62,343 items indexed" and "Indexing complete". If it gets stuck, it'll just always say "Indexing speed is reduced due to user activity"

Another funny thing I noticed is that it sometimes said "Indexing paused to conserve battery power" - even though this is a desktop computer and doesn't even have a battery! To fix this one, go into Control Panel and then "Power Options". Now, I had "High performance" checked there (and if you're a desktop computer, that's what you should have as well) so click on Change plan settings.

In this window, click on Change advanced power settings, then scroll down to Search and Indexing. I noticed on mine, it had Power Savings Mode set to Power Saver for some reason, so I just flicked it to High Performance and clicked OK. That solved that problem as well.

So there you have it, two problems solved in one day. Not bad :)

Ads by Goooooogle

Posted by

If you're not reading this via an RSS reader (does anybody read this via an RSS reader? :p) you might notice the ads on the left. This is just a little experiment of mine, so please don't be offended by my selling out.

Anyway, it doesn't count as "selling out" unless you actully, you know, get money.

I have noticed some funny ads already. I seem to get lots of ads for people named "Dean." There's only one "Dean" who counts, baby!

Parental Controls in Firefox

Posted by

Currently, Firefox does not honour the Parental Controls you've set up in Windows Vista - there's currently a bug in BugZilla on it.

Personally, I find some of the comments on that bug kind of funny. Some people seem to be morally opposed to Parental Controls, which I don't quite understand.

I don't understand why this "bug" needs to be addressed anyway. I understand that Firefox wants to be universally accepted, but it's not like you guys are stuck doing exactly what Microsoft wants.

Last I knew, Firefox wasn't owned by Microsoft, nor was it licensed to do everything in accordance with Microsoft's standards and security features.

Which is fair enough, but if you don't like parental controls, you don't need to turn them on. I imagine for a number of users, however, parental controls are a great feature. I'm not saying it's going to stop your 16-year-old computer-whiz son from downloading, e-hm unsavory images (that's what adequate supervision is for) but it'll certainly stop your young kids from accidentally navigating away from neopets.com or something.

Others believed that there's no point in implementing the feature because you can get around it anyway.

Trying to block downloads in firefox wouldn't really help anything with circumventing restrictions. If the user can view pages then he/she can pretty much download any file they want. Just blocking the download manager wouldn't help anything, one would just use a seperate download manager to download the files(wget or something like that would suffice and wouldn't need to be installed so even with all the restrictions a user would be able to use it)

But that ignores the fact that in order to use wget, you, um, need to download it in the first place...

I guess it's theoretically possible to download it onto a USB key from a non-parental-controlled computer (your mate's computer, for example) and run it from there on your parental-controlled computer, but that's assuming that the parent disabled downloading, but did not disable running arbitrary programs (which is like locking the front door while leaving a window open). Perhaps it was just a misunderstanding on the part of the commentor as to what parental controls actually lets you do.

My point, I guess, is that Firefox should just implement parental controls. There's really no reason why not (after all, if you really are morally opposed to the feature, just don't turn it on in the OS). Luckily, it seems, the detractors are in the minority and it's only inevitable that Firefox will have them. One of the good things about open source software is that it only takes one person to implement a feature, but it takes consensus to not implement one. And OSS is not known for reaching consensus very often :)

64-bit WebDev.WebServer.exe

Posted by

For reasons that I could never figure out, the "development ASP.NET" server, which is a great little program for testing ASP.NET websites runs in 32-bit mode only. I suppose that's because Visual Studio is 32-bit only, but seeing as how my ASP.NET server is 64-bit, I would have thought testing in the 64-bit mode would be useful as well (especially when you've got native components that need to be built separately for 32- or 64-bit).

However, with a bit of Reflector magic, I have managed to recompile the 32-bit only WebDev.WebServer.exe as a true MSIL executable and it can run in whatever "bitness" your OS is set to.

There are two components, the first is WebDev.WebServer.exe itself, which you can find in your Framework\v2.0.whatever\ folder, and the first is WebDev.WebHost.dll which is installed into the GAC. To get that, you need to use the command prompt, CD into C:\Windows\Assembly\GAC_32\WebDev.WebHost and so on from there.

Next, using Reflector, I exported the source files to a folder, opened it up in Visual Studio, recompiled it as a MSIL application (I had to fix up a couple of issues with references and the source that was generated) but other than that, it didn't take long before I had a brand new WebDev.WebServer.exe up and running.

Now, I don't know the legalities of me redistributing the files I created, so I'm not going to do that. The steps I described above are feature high-level, but if you follow them, it shouldn't be too difficult to generate your own version. If you have problems, leave a comment and I can expand my steps.

I guess the only draw back is that you don't have built-in support from Visual Studio for running your site (I've just set up a short-cut on my desktop which I run to start the server, then attach Visual Studio to it to debug).

However, the advantage to all of this is that I can now debug my 64-bit web apps without running them under IIS (which, on Vista with UAC means I don't need to run Visual Studio as an Administrator)