Greg Earle writes:

The "vacation" module is creating standard-issue ".forward" files:

\earle, "|/usr/ucb/vacation earle"

(It's not putting a newline at the end of the line, however - is
  this relevant/important?)

"dotforward" seems to be getting invoked, because I'm getting
the local copy OK, but the part to be piped to the shell isn't
getting handled correctly - the result is that instead of
being handed off to "vacation", Courier thinks it's an e-mail
intended for "/usr/ucb/vacation earle"@my.do.main - so it
promptly forwards it up the line to the MX for my.do.main, which
of course says "can't send mail to programs" and barfs it back:

Mar 29 20:36:37 mailhost courierd: [ID 702911 mail.info] started,id=00056162.4068F954.00006E7C,from=<[EMAIL PROTECTED]>,mod ule=esmtp,host=my.do.main,addr=<"|/usr/ucb/vacation earle"@my.do.main>

Is there something that Courier is doing wrong, or should the
"vacation" module be writing this ".forward" file differently?

dotforward does not understand what to do with the quotes.

I whipped up a quick patch. Try it.


diff -U3 -r1.2 dotforward.c --- courier/dotforward.c 27 Nov 2000 02:02:24 -0000 1.2 +++ courier/dotforward.c 30 Mar 2004 23:27:48 -0000 @@ -127,6 +127,11 @@

                for (i=0; i<a->naddrs; i++)
                {
+                       if (a->addrs[i].tokens &&
+                           a->addrs[i].tokens->token == '"' &&
+                           a->addrs[i].tokens->next == NULL)
+                               a->addrs[i].tokens->token=0;
+
                        p=rfc822_getaddr(a, i);
                        if (!p)
                        {


Attachment: pgp00000.pgp
Description: PGP signature

Reply via email to