Hello,
I am using qmail and lda configured such that lda should not have to do a lookup for delivery. I set my defaultdelivery like so:
|HOME=/home/mail/$USER /var/qmail/bin/preline -f /usr/local/libexec/dovecot/dovecot-lda
Given that the email address being delivered to is bob.miller@computerisms.com, I expect $USER to be equal to bob.miller and $HOME to expand to /home/mail/bob.miller/.
The problem is lda reports:
Debug:_Home_dir_not_found:_/home/mail/bob.miller@computerisms.com/
The whole system up to here uses only the bob.miller part, and I can't find where it keeps adding the domain part from.
I have tried changing all sorts of variables and config values to try and make it quit adding the domain part, but no matter what I change lda still tries to deliver the email address as username. The only measure of success I can report is that in some configurations mail delivers to /home/mail//.
Where exactly is dovecot getting this value?
Side question: I note in places throughout the wiki and internet variables such as $EXT, $USER, $DEST_USERNAME, and $FROM_ENVELOPE are used. I can find no documentation, beyond my own common sense anyway, to explain how/when these variables are expanded, and what I do find doesn't seem consistent to me. For example, on the CheckPassword page, $USER is implied to expand to Username, which could contain the domain or not. However on the lda/qmail page, the variable shown is $EXT@ $USER, which implies $USER will expand as only the domain part after the @ symbol and $EXT as everything before, yet changing the variable from $USER to $EXT in my defaultdelivery file has $HOME expand to /home/mail//. Where do I find the story on how these variables (as opposed to the % variables) work? (or more specifically, is there a $VAR I can use instead of $USER that will expand to just the part before the @?)
--
Computerisms
Bob Miller
867-334-7117 / 867-633-3760
http://computerisms.ca