Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: exim: users

Fwd: Diagnosing autoreply Driver Problem

 

 

exim users RSS feed   Index | Next | Previous | View Threaded


exim at puremail

Oct 17, 2005, 12:11 PM

Post #1 of 4 (186 views)
Permalink
Fwd: Diagnosing autoreply Driver Problem

I haven't received any replies to this post yet.

To simplify the problem I have stripped down my transport and hard-wired
several values. Since I can see that the router is behaving properly I'm
just going to include my test transport...

puremail_autoreply_transport:
driver = autoreply
text = "This is the autoreply body"
to = $sender_address
from = noreply[at]puremail.com
subject = "Autoreply subject"

Can anyone see anything wrong with this setup? If not, then how can I
troubleshoot the problem?

Any advice is greatly appreciated. Thanks. - John R. S.

--
John R. Shearer
PUREmail, Inc.
http://www.puremail.com/
mailto:john[at]puremail.com
mobile:925-285-1356


> Subject: Diagnosing autoreply Driver Problem
> Date: Wednesday 12 October 2005 11:45
> From: "John R. Shearer" <exim[at]puremail.com>
> To: exim-users[at]exim.org
>
> I am having trouble getting the autoreply driver to work. I'm running Exim
> 4.50 under Debian 3.1 "Sarge".
>
> My router works as expected. In debug mode I can see that the router
> correctly determines whether or not the recipient should get autoreply
> processing. The "once" DBM file is successfully created in the recipient's
> home directory whenever I send an Email to the test recipient.
>
> When I send Email from a given sender the first time I get the following
> error in the Exim logs (because of the "once" file subsequent messages from
> the same sender do not receive an error as no autoreply is generated)...
>
> 2005-10-10 18:26:04 1EP8tt-0006XP-D8 <= nosuchuser[at]gmail.com
> H=tuna.puremail.com (test) [10.3.11.33] P=smtp S=188
> 2005-10-10 18:26:04 1EP8tt-0006XP-D8 == john[at]genius.net
> R=puremail_autoreply_router T=puremail_autoreply_transport defer (0): Failed
> to send message from puremail_autoreply_transport transport (1)
>
> I can't effectively debug this because the generation of autoreply message
> itself is handled under a different process than the initial incoming
> message, so no debug output is available. And yes, I have tried using valid
> sender Email addresses.
>
> Any thoughts as to how I can diagnose this? Is there any way to get debug
> output from the process that executes the autoreply?
>
> Thanks in advance. - John R. S.


ph10 at cus

Oct 18, 2005, 1:53 AM

Post #2 of 4 (184 views)
Permalink
Re: Fwd: Diagnosing autoreply Driver Problem [In reply to]

On Mon, 17 Oct 2005, John R. Shearer wrote:

> To simplify the problem I have stripped down my transport and hard-wired
> several values. Since I can see that the router is behaving properly I'm
> just going to include my test transport...
>
> puremail_autoreply_transport:
> driver = autoreply
> text = "This is the autoreply body"
> to = $sender_address
> from = noreply[at]puremail.com
> subject = "Autoreply subject"
>
> Can anyone see anything wrong with this setup? If not, then how can I
> troubleshoot the problem?

Looks reasonable. I didn't note your router, but if it didn't specify a
user, this transport will run as the exim user (in case that matters).

> > My router works as expected. In debug mode I can see that the router
> > correctly determines whether or not the recipient should get autoreply
> > processing. The "once" DBM file is successfully created in the recipient's
> > home directory whenever I send an Email to the test recipient.
> >
> > When I send Email from a given sender the first time I get the following
> > error in the Exim logs (because of the "once" file subsequent messages from
> > the same sender do not receive an error as no autoreply is generated)...
> >
> > 2005-10-10 18:26:04 1EP8tt-0006XP-D8 <= nosuchuser[at]gmail.com
> > H=tuna.puremail.com (test) [10.3.11.33] P=smtp S=188
> > 2005-10-10 18:26:04 1EP8tt-0006XP-D8 == john[at]genius.net
> > R=puremail_autoreply_router T=puremail_autoreply_transport defer (0): Failed
> > to send message from puremail_autoreply_transport transport (1)
> >
> > I can't effectively debug this because the generation of autoreply message
> > itself is handled under a different process than the initial incoming
> > message, so no debug output is available.

Hmm. That sounds odd. Usually if you run Exim in debug mode it will show
debugging output for the transports as well. Ah, but of course it won't
show you anything from the new Exim process that is *receiving* the
autoreply. I don't suppose there's anything in the log that helps there.

However, there's a clue in the "(1)", which is an errno value. 1 is
usually EPERM, a permission error. But the only file it will be trying
to access is the exim binary - in order to submit the new message. You
haven't made that inaccessible, have you?


--
Philip Hazel University of Cambridge Computing Service,
ph10[at]cus.cam.ac.uk Cambridge, England. Phone: +44 1223 334714.
Get the Exim 4 book: http://www.uit.co.uk/exim-book


exim at puremail

Oct 21, 2005, 4:52 PM

Post #3 of 4 (182 views)
Permalink
Re: Fwd: Diagnosing autoreply Driver Problem [In reply to]

Philip:

Thank you for your reply.

>> To simplify the problem I have stripped down my transport and hard-wired
>> several values. Since I can see that the router is behaving properly I'm
>> just going to include my test transport...
>>
>> puremail_autoreply_transport:
>> driver = autoreply
>> text = "This is the autoreply body"
>> to = $sender_address
>> from = noreply[at]puremail.com
>> subject = "Autoreply subject"
>>
>> Can anyone see anything wrong with this setup? If not, then how can I
>> troubleshoot the problem?

> Looks reasonable. I didn't note your router, but if it didn't specify a
> user, this transport will run as the exim user (in case that matters).

I'm running the transport as www-data:www-data because all "local" mailboxes
are virtual; there are no real Unix user accounts. My router looks something
like this (let me know if you want the whole thing along with macros,
etc.)...

autoreply_forward_router:
domains = +puremail_domains
require_files = HOME_DIRECTORY/autoreply.txt
condition = [a very complex condition that queries MySQL]
driver = accept
transport = puremail_autoreply_transport
user = www-data
group = www-data
unseen = yes
verify = no

As I mentioned before a "once" file was created in the mailbox's home
directory (with appropriate permissions/ownership) when I used the "once"
directive in the transport, so we know that the transport was run under the
correct UID.

>>> My router works as expected. In debug mode I can see that the router
>>> correctly determines whether or not the recipient should get autoreply
>>> processing. The "once" DBM file is successfully created in the
recipient's
>>> home directory whenever I send an Email to the test recipient.
>>>
>>> When I send Email from a given sender the first time I get the following
>>> error in the Exim logs (because of the "once" file subsequent messages
from
>>> the same sender do not receive an error as no autoreply is generated)...
>>>
>>> 2005-10-10 18:26:04 1EP8tt-0006XP-D8 <= nosuchuser[at]gmail.com
>>> H=tuna.puremail.com (test) [10.3.11.33] P=smtp S=188
>>> 2005-10-10 18:26:04 1EP8tt-0006XP-D8 == john[at]genius.net
>>> R=puremail_autoreply_router T=puremail_autoreply_transport defer (0):
Failed
>>> to send message from puremail_autoreply_transport transport (1)
>>>
>>> I can't effectively debug this because the generation of autoreply message
>>> itself is handled under a different process than the initial incoming
>>> message, so no debug output is available.

> Hmm. That sounds odd. Usually if you run Exim in debug mode it will show
> debugging output for the transports as well. Ah, but of course it won't
> show you anything from the new Exim process that is *receiving* the
> autoreply. I don't suppose there's anything in the log that helps there.

The only log data available is what I've included above; not much detail
there. I'm not familiar with the mechanism that generates the reply message.
Could this error be getting returned from the Exim instance that transmits
the reply because it is being run as www-data instead of root?

> However, there's a clue in the "(1)", which is an errno value. 1 is
> usually EPERM, a permission error. But the only file it will be trying
> to access is the exim binary - in order to submit the new message. You
> haven't made that inaccessible, have you?

This being a Debian box the binary is called "exim4"; I soft-linked "exim" to
it for compatibility reasons...

lrwxrwxrwx 1 root root 5 Apr 15 2005 /usr/sbin/exim -> exim4
-rwsr-xr-x 1 root root 784152 May 27 01:10 /usr/sbin/exim4

This shouldn't cause any problems that I can see. I tested sending a message
with "exim -f noreply[at]puremail.com nosuchuser[at]gmail.com" and it transmitted
just fine, so there aren't any bugs in my config that prohibit delivering
mail to external address as www-data.

I know that the autoreply transport works for plenty of other folks. How can
I troubleshoot this to find out what's killing it in my environment?

I'm at my wits end. - John R. S.


--
## List details at http://www.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://www.exim.org/eximwiki/


ph10 at cus

Oct 31, 2005, 3:17 AM

Post #4 of 4 (168 views)
Permalink
Re: Fwd: Diagnosing autoreply Driver Problem [In reply to]

On Fri, 21 Oct 2005, John R. Shearer wrote:

> I know that the autoreply transport works for plenty of other folks. How can
> I troubleshoot this to find out what's killing it in my environment?

[I've been away.]
Have you tried running a test with the -d (debug) option? Does it help?

--
Philip Hazel University of Cambridge Computing Service,
ph10[at]cus.cam.ac.uk Cambridge, England. Phone: +44 1223 334714.
Get the Exim 4 book: http://www.uit.co.uk/exim-book

--
## List details at http://www.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://www.exim.org/eximwiki/

exim users RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact lists@gossamer-threads.com
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.