EIMS Support

OS X Mail issues
Mac OS X issues
Mac OS 9 issues
How do I secure my EIMS Server against relaying?
How do I have EIMS discard mail to a user, unknown users for a domain, etc.?
How do I stop my mail from bouncing with a mail loop error?
How do I set up EIMS as a backup MX?
How do I run EIMS and LetterRip on the same machine?
What are all those Incoming Mail X files for?
What is the Incoming Mail folder for?
EIMS and firewalls
My EIMS server is crashing.
Should I publish an SPF record for my doman?
The solution to my support issue is not here.

OS X Mail issues

OS X Mail on Mac OS X 10.4, 10.4.1, and 10.4.2 has problems with NTLM authentication. When adding a new account with OS X Mail it defaults to NTLM authentication, despite the fact both EIMS and OS X Mail support CRAM-MD5 authentication, which is a more secure standards based authentication mechanism. OS X Mail NTLM authentication doesn't work with EIMS, causing wrong password errors in the EIMS error log, and when using NTLM authentication with SMTP or IMAP, OS X Mail will crash horribly. This problem is fixed in OS X 10.4.3.

When using IMAP, OS X Mail does not appear to be compliant with section 7 of RFC 3501. As a result it will often ignore new mail that has arrived in a mailbox. This doesn't appear to be a problem with EIMS 3.3 and the version of Mail that comes with Mac OS X 10.5, as that version of Mail uses IMAP IDLE, which should largely hide this problem.

Problems have been reported with OS X Mail becoming stuck downloading mail. This problem is due to a bug in Mail where it becomes stuck processing particular types of messages. This problem is not related to EIMS, the same problem occurrs with Mail downloading a problematic message from other email server software. This problem should be fixed in the version of Mail that comes with Mac OS X 10.5.

Mac OS X Issues

EIMS versions earlier than 3.3.5 do not run reliably on Mac OS X 10.5 on machines with more than one processor/core due to a bug in PBReadAsync, file corrutpion and loss of email can result. This seems to be a regression to buggy behavior from OS X 10.2. This bug has been reported to Apple and has bug ID 5566491.

On Intel Macs with more than one processor/core running Mac OS X 10.4 there is a bug in some of the Carbon file system APIs under Rosetta where they don't operate reliably. This can result in file corruption and loss of email. This bug has been reported to Apple and has bug ID 5020645. This problem does not affect the Intel native version of EIMS, users of Intel Macs should upgrade to EIMS 3.3 and run the Intel native version.

Under Mac OS X on Macs with more than one processor/core, there is a bug in the Carbon PBGetFInfoAsync call that occasionally results in file types and creators of files being created by EIMS being incorrect. This bug typically manifests itself as an empty mailbox file, typically an outgoing mail queue, that causes "duplicate file name" errors when EIMS tries to deliver mail to it. Removing the file will clear the problem. This bug has been reported to Apple and has bug ID 5020757. EIMS 3.3.4 and later have a work-around for this bug.

Mac OS X Server has a password server already running on port 106 (although it is not compatible with the poppassd protocol so I have no idea why they are using that port). To run EIMS on OS X Server, you either need to stop the OS X Server password server from listening on port 106 (details are in the EIMS readme), stop EIMS from listening on port 106 by changing the port number in the Connection Settings, or turn off the EIMS password server by setting it to 0 connections in the Connection Settings.

SCSI drives on Mac OS X that are connected to a SCSI bus that is not internal only, and are not the boot drive, are mounted "nosuid" by OS X. Presumably this is in order to prevent external drives with suid files being plugged in to obtain unauthorized access to a machine. As EIMS Server X needs to be run suid to bind to TCP ports less than 1024, it can't typically be run from a SCSI drive. The simplest option available is to move the Mail Folder to the SCSI drive, then create a symlink to the Mail Folder and put that in the EIMS folder. It is also possible mount the SCSI drive with a "mount -uw /Volumes/Drive" to turn suid back on, and this could be put in a startup script, but may potentially open your computer up to being accessed from an external SCSI drive with the same volume name being plugged in.

On Mac OS X 10.4, it is a good idea to stop Spotlight from indexing files in the EIMS folder, otherwise it will do things like index the EIMS log files every time they change. You can do this by adding the EIMS folder to the Privacy tab in Spotlight in the System Preferences.

On Mac OS X 10.3.x, 10.4, 10.4.1, and 10.4.2, alias resolving fails after about 30,000 resolves. If you are using aliases with EIMS for mailboxes or folders in users accounts (eg: for IMAP shared folders/mailboxes), you should update to OS X 10.4.3, or update to EIMS 3.2.7 or later and replace the aliases with symlinks.

On Mac OS X 10.3, the icons for EIMS Server and EIMS Admin sometimes don't show. This bug is fixed in OS X 10.4. I have also been unable to reproduce this problem on systems where the initial OS X installation was 10.3.5 or later.

EIMS does not run reliably on OS X 10.2 with multiple processor machines due to a bug in PBReadAsync, file corruption and loss of email can result. This is fixed in OS X 10.3 and OS X 10.4.

Mac OS 9 Issues

Mac OS versions 8.6 and earlier are limited to 384 files open at any one time, fonts and system files are counted and will reduce the number of files available for applications. Mac OS 9.0 and later support 8169 files open at any one time. EIMS requires one open file per domain, plus files for logs, and any active connection will typically have an open file.

On Mac OS versions older than 8.5, there is no way for EIMS to get the addresses of name servers that were picked up via DHCP, so you must manually configure name servers in the TCP/IP control panel.

On Mac OS 9 and earlier there are some issues with the BTree manager which is used for Accounts Database files. BTree files are allocated in chunks that are between 1/32768 and 1/65535 of the size of the volume, which can make the Accounts Database files quite large. BTree files that are first created on volumes larger than 64GB may also be unable to grow larger than 3MB.

Due to a bug in the Open Transport DNR, EIMS 3.1.x and earlier can't tell the difference between a "no records of that type" and a "no response" for a DNS lookup. In rare situations (when the MX lookup for a domain times out but the A lookup works) this can result in mail being incorrectly sent to the A record for a domain. EIMS 3.2 and later has it's own DNR which does not have this problem.

A rare hang (about once every 3 months) on a Beige G3 was tracked down to the Iomega Driver. If you are not using the ZIP drive, I recommend disabling the Iomega Driver in the Extensions Manager control panel.

How do I secure my EIMS Server against relaying?

Relay security information has been moved to it's own page here.

How do I have EIMS discard mail to a user, unknown users, etc.?

The simplest way to do this is to forward the mail to an empty group, or replace the user with an empty group. For example, to have EIMS discard all mail for unknown users in a domain, create an empty group (call it /dev/null if you like), and in the domain settings set the forwarding for unknown users to forward to that group.

It is not recommended that you have EIMS discard mail for unknown users, as any incorrectly addressed mail will just disappear and the sender won't know they got the address wrong. You should only use this if you are running in to problems with spam or dictionary attacks.

How do I stop my mail from bouncing with a mail loop error?

Typically this happens when the domain you are getting the errors for has not been added as a domain or domain alias in EIMS. EIMS doesn't know that the message should be delivered locally, so tries to send it, then finds that the destination points back to itself. The other possible cause of this problem is DNS records that point to your EIMS server when they shouldn't be. To add the domain as a domain alias, open the domain in EIMS Admin, click on the triangle top left, enter the domain, and click add. To add the domain as a separate domain, go to the Domains window in EIMS Admin, and select New Domain from the Domains menu.

How do I set up EIMS as a backup MX?

For EIMS 3.2, connect with EIMS Admin, go to the Preferences, go to Backup MX Domains, then add the domains you need EIMS to be a backup MX for. Then add your server in the DNS as a backup MX for those domains.

For EIMS 3.1 and earlier, connect with EIMS Admin, go to the Preferences, go to Relay Restrictions, and select 2nd option, then add the domains you need EIMS to be a backup MX for. Then add your server in the DNS as a backup MX for those domains.

With EIMS 3.1 and earlier it is not possible to use your server as a backup MX while using the 1st or 3rd option in the Relay Restrictions. If you need this level of flexibility you should consider upgrading to EIMS 3.2.

How do I run EIMS and LetterRip on the same machine?

The best way to do this is to run LetterRip on a different port, and have EIMS route mail to LetterRip. This gives you the advantages of EIMS doing any spam and virus filtering on mail before it gets to LetterRip. On OS X you should also be able to avoid running LetterRip as root if you use a port number higher than 1024.

To set EIMS to route mail to LetterRip, add an entry in the Backup MX Domains (EIMS 3.2) or the Relay Security (EIMS 3.1 and earlier) for the domain for LetterRip. Then add an entry in the Mail Routing for the domain for LetterRip, and set it to Route Via, where port is the port number LetterRip is running on.

What are all those Incoming Mail X files for?

There is one Incoming Mail X file for each incoming SMTP connection (and each SMTP Submit connection with EIMS 3.2) that you have allocated. These files hold messages that are received over SMTP until they are delivered to users mailboxes. EIMS doesn't delete these files when they are empty as it would just have to create them again when more mail arrived. When empty these files will be 24 bytes in size.

What is the Incoming Mail folder for?

The Incoming Mail folder can be used to process text files, and with the full version of EIMS 3.1 or later you can reprocess users mailbox files and outgoing mail queue files. If you set forwarding for a user, or change a domain and want to reprocess an outgoing mail queue, drop it in the Incoming Mail folder. Text files dropped in the Incoming Mail folder must be formatted as an email message (RFC 822/RFC 2822 format). Text files must have an STR resource ID 8192 with the sender address (will be used as the SMTP MAIL FROM address) and an STR# resource ID 8192 with the recipient addresses (will be used as the SMTP RCPT TO addresses). For best performance the text file should have CRLF as the line endings, and a BODY resource ID 8192 should be added. The BODY resource should contain a 4 byte value, '822 ' for an unspecified body type, '7BIT' for 7bit data, '8BIT' for 8bit data, and 'BINM' for binary data. EIMS will convert 8bit to 7bit with quoted printable encoding, and binary to 7bit with base64 encoding if the receiving server can not handle them. If the text file has CR for line endings, don't add a BODY resource. The Save as Files mail action and Mail Routing option saves text files like this with CRLF line endings and BODY resources. The Save as Text Files mail action has CR for line endings.

EIMS and firewalls.

If you are using a firewall with EIMS, make sure it is set to pass SMTP traffic to and from EIMS untouched. Firewalls typically offer no additional security when used with EIMS, but can cause problems with SMTP extensions. Typically these problems occur as SMTP connection timeouts, or an inability to use an SMTP extension such as SMTP Authentication. If you need to use a firewall with EIMS for some reason, make sure it is compliant with Internet Standard 10/RFC 1869 on SMTP Service Extensions and RFC 2979 on Firewall Requirements, even then it may still disable some SMTP extensions.

For Cisco firewalls with Mail Guard, you can disable it by adding the following to the configuration:
no fixup protocol smtp 25

Port numbers used by EIMS that you might need to open up on firewalls are:
25: SMTP
105: Ph
106: Password server
110: POP3
143: IMAP
389: LDAP
587: SMTP Submission
674: ACAP
4199: EIMS Admin

My EIMS server is crashing.

First, make sure your EIMS Server and all your filters are up to date. Then try and narrow the problem down, remove all the filters, and stop running any other software on the computer. You could also try moving EIMS to a separate computer, or doing a clean system install. If crashes still persist, please email a crash log to eims@eudora.co.nz. On OS X crash logs are automatically kept, they will be in ~/Library/Logs/CrashReporter (where ~ is your home directory), there will be a file named EIMS Server X crash.log, email that to eims@eudora.co.nz. On OS 9 install MacsBug, instead of a crash, MacsBug will come up, type stdlog and press return. This will produce a file called stdlog on the desktop, email that file to eims@eudora.co.nz with any other relevant information.

Should I publish an SPF record for my domain?


SPF was a failed experiment. Due to fundamental incompatibilities with existing Internet standards it was never widely adopted. There may be some sites still using it, but due to lack of standardization and disagreements about how the results of SPF verification should be used you can't predict what will happen if you publish an SPF record.

If you encounter an 800 pound gorilla beating the dead SPF horse, my recommendation is you run the other way as fast as you can.

The solution to my support issue is not here.

email eims@eudora.co.nz with details of your problem.





  EIMS Quick Start
  Email client configuration
  EIMS 3.3 Documentation
  Relay Security
  OS 9 to OS X


EIMS mailing lists


Last modified 28 October 2022. Copyright 1997-2022 Glenn Anderson.

Valid HTML 4.01!