Mailman file permissions

Written early in the afternoon in English • Tags: ,

Another long-standing nuisance resolved: the files in the Mailman package end up with incorrect permissions, resulting in a non-functional installation. Running check_perms -f will report the problem and fix the permissions. (See PR pkg/24041 for details.)

After some more learning about the machinery, I’ve committed a fix that makes sure files are installed correctly.

Killed by signal 11

Written in the mid-morning in English • Tags: ,

I’ve been getting segmentation violation deaths in the Postfix smtp client for quite some time. I don’t remember which upgrade introduced them — especially because the problem only exhibited itself on the busiest mail server I have, It handles between 50,000 and 100,000 transactions daily.

Yesterday I dug into the topic with the help of Google. Many of the threads discussing the “killed by signal 11” problem suggested removing TLS or SASL or both from Postfix, which was not an option for me. I also didn’t think they would be the problem, because both have been deployed before the errors started. (more…)

Now that the pkgsrc freeze is over I’ve committed a new package for postgrey 1.17 into the repository as mail/postgrey. I like using postgrey because it uses a regexp-based configuration for whitelisting and exceptions. I also feel it is easier to have db4-based storage on each mailhost, rather than having to deploy and maintain MySQL everywhere.

Greylisting deployed

Written at evening time in English • Tags: ,

Half a year ago I mentioned greylisting as an option to fight spam. A few months ago enabled greylisting and it made a huge difference in the amount of spam and viruses being forwarded to me. Now I finally got around to deploying postgrey on the Global Wire mail infrastructure.

Greylisting is so simple that it seems strange that it is as effective as it is. I’m certainly going to enjoy it as long as it keeps working. Unfortunately I don’t expect that to be more than a year…

For implementations of greylisting on different platforms, have a look at


Written in the wee hours in English • Tags:

I’ve been wanting to change the colors on this site a bit, and I finally got started by adding the header background. The photo is courtesy of Laura Selonen, a very good friend of mine. Looking at her pictures from her walks around the neighborhood has made me want to use my camera more.

Bitten by browser caching

Written in the wee hours in English • Tags: , ,


I ended up writing the bottom half of the previous article three times, thanks to not having been careful enough when upgrading WordPress. I had lost my fixes that send out the necessary headers to prevent the admin pages from being cached. I guess others don’t get bit by this because they don’t have ExpiresActive enabled on their web server.

Anyway, I’ve saved the changes in a patch file now, for future reference…

Export WordPress links as XBEL

Written in the wee hours in English • Tags: , ,

I wanted to see if I could have my WordPress links in the Firefox Bookmarks menu. I thought this should be possible, since it knows about RSS. From using reBlog I had learned about FeedCreator, which is a great package for quickly creating feeds. So I enhanced wp-links to support feeds.

However, I was to be disappointed — the links are in Firefox now, but they are all piled up together in a single huge menu. In the WordPress database the links are categorized, as can be seen on my links page. I was hoping Firefox would use the categories to create more subfolders.

I thought about another approach: XBEL. The format is simple enough to follow, so I added XBEL support to FeedCreator 1.7.2. This works perfectly with the Bookmarks Synchronizer plugin for Firefox. I’ve configured it to download a single subdirectory inside Bookmarks, and all my WordPress link categories show up as subdirectories inside it.

I’ve made some sample code available to show how I’m calling wp-links. The code won’t run as-is, as it calls some other libraries I’m using. It should be simple enough, though, to remove (or ignore) the “extra” stuff.

I’ve been looking at rsnapshot for a while now. Today I needed to implement backups over a slow Internet link, so I packaged rsnapshot to see if it would fit my needs.

Another weekend “computerized”

Written late in the evening in English

After 2 days of compiling, we have no more vulnerable packages installed once again. However, I was unable to recompile XFCE, due to xscreensaver not compiling due to the gle library not compiling: it thinks it cannot find the GLU library… (yet the pkgsrc framework says it is there…)

I was supposed to build a mail server this weekend, but that did not happen as I was spending time with the upgrades. However, I will try hard to get it done next weekend, as it would help with the stupidity (a DoS attack?) going on against our combined firewall and SMTP server. I think it keeps running out of memory at times, and dropping connections. By this I don’t mean just SMTP connections, but apparently IP flow states get lost if there is not enough memory, and suddenly I just see a “read error” from my ssh client on a remote network and lose the connection.

Paged browsing with WordPress

Written late at night in English • Tags:

I really like WordPress!

I had made some tweaks (e.g. setting the charset in Content-Type headers) and hadn’t really heard back on my emails to the developers. This made me a little worried about upgrading the code on my site. As I run code from CVS as opposed to a release, there might be major issues after running cvs update.

As it turns out, there were some conflicts, but they were mostly mechanical differences around the Content-Type header. One or two were related to patches I’ve written about before, but nothing major.

Since I hadn’t really thought about what the procedure would be, here’s a quick outline for any other “daredevils” diving into it:

  1. Fix any conflicts reported by cvs.
  2. Goto
  3. Click on the link in the “Upgrading” section (…/wp-admin/upgrade.php)
  4. Goto the admin section and enable any plugins you were using. (Oh, yes, you could make a note of them before you start the whole process…)
  5. If you use a custom URL scheme, cut & paste the .htaccess rules again — there are new rules to be added.
  6. Update your custom index.php (if you have one) by looking at the index.php from CVS.

In that last step you can also add calls to posts_nav_link() to enable paged browsing. This is a really great feature: no more huge pages when browsing a category. Also, from the index page it is now possible to browse entries as far back as you want, one nice size page at a time.

Since my blog is rather small, I had not worried about this until recently, and here is the solution already. Perfect!