dlostboy (at) lostinfo (dot) com 

Home | Journal | Multimedia | Files | Other | Links | About

      FreeBSD with Cyrus, fixing the SASL problem

Cyrus frequently uses SASL (saslauthd) to authenticate pop3/imap connections. The problem we had with it was that after you started getting upwards of 10,000 connections a day, the memory usage by the 4 default processes it starts was getting WAY out of hand. The machine would start swapping (causing BIND to die) even though it had 2GB of RAM in it after a few hours. We initially started with writing something to restart saslauthd every 4 hours but even this proved to sometimes not be often enough. Finally we found a solution in the cyrus list. Apparently it's the forking that causes the memory leak.

Put this line in your /etc/rc.conf to fix the problem:

	sasl_saslauthd_flags="-a pam -n0"
	
In production, we've had no slowdowns due to this configuration.. Boy it'd be nice if they'd just fix it instead. (It's easy for me to say that since I don't code much)

 

  ©2000, ©2001 LostInformation