Out going email problem solved

I spent many hours these last few months trying to get RT to send outgoing
mail. Turns out there is a little undocumented (at least as far as I can
find) feature/bug.

If

$CorrespondAddress = ‘RT::CorrespondAddress.not.set’;
$CommentAddress = ‘RT::CommentAddress.not.set’;

are not set, and no queue specific email address is given then outgoing mail
will not be sent. RT will give NO ERRORS and one could assume that the
mail has been sent. MTA logs will show zero activity, and there appears to
be a black hole.

While it is safe to assume that everyone will want to set these before
production, it doesn’t seem mandatory, especially for someone who is just
trying the program out and wants to test it, before tweaking all the setting
for production.

Can someone please document this in the manual, and add a note to the config
file settings.

“$CorrespondAddress and $CommentAddress are the default addresses that will
be listed in From: and
by a queue-specific
address.”

It needs to be noted that outgoing mail will not work without this being
set.

There have been at least 5 people that have mailed me about this problem
since I posted to the list multiple times about not being able to get
outgoing mail working.

Miles Scruggs

winmail.dat (4.15 KB)

I spent many hours these last few months trying to get RT to send outgoing
mail. Turns out there is a little undocumented (at least as far as I can
find) feature/bug.

If

$CorrespondAddress = ‘RT::CorrespondAddress.not.set’;
$CommentAddress = ‘RT::CommentAddress.not.set’;

are not set, and no queue specific email address is given then outgoing mail
will not be sent. RT will give NO ERRORS and one could assume that the
mail has been sent. MTA logs will show zero activity, and there appears to
be a black hole.

Really? what about the syslog? I know I’ve had an RT instance send me
mail from ‘RT::CommentAddress.not.set@host.domain’. What MTA are you
using? If you change that default to RT_CorrespondAddressNotSet does it
start working?

H

While it is safe to assume that everyone will want to set these before
production, it doesn’t seem mandatory, especially for someone who is just
trying the program out and wants to test it, before tweaking all the setting
for production.

It has been our intent that it should work (but have a wrong return
address) if those values are left alone. If some modern MTA has broken
that behaviour, I’ll fix the core so that it will still work.

There have been at least 5 people that have mailed me about this problem
since I posted to the list multiple times about not being able to get
outgoing mail working.

nod Thank you for getting to the bottom of this. It’s greatly
appreciated.

Miles Scruggs

http://www.bestpractical.com/rt – Trouble Ticketing. Free.

Really? what about the syslog? I know I’ve had an RT instance send me
mail from ‘RT::CommentAddress.not.set@host.domain’. What MTA are you
using? If you change that default to RT_CorrespondAddressNotSet does
it
start working?

I’m using qmail with smtp-auth, localhost and 127.* is set as
relayclient. There are no logs for MTA at all. I’m almost certain that
it doesn’t make it that far. Syslog on debug, just show that that the
mail has been sent.

Jul 15 12:31:31 mail RT: rt-3.0.3-2-4.4.10412219021808@domain.com #2/4

  • Scrip 4 (/usr/local/rt/lib/RT/Action/SendEmail.pm:91)

Jul 15 12:31:31 mail RT: rt-3.0.3-2-4.4.10412219021808@domain.com sent
T/Action/SendEmail.pm:296)
Jul 15 12:31:31 mail RT: rt-3.0.3-2-4.6.4404634517421@domain.com #2/4

Jul 15 12:31:31 mail RT: rt-3.0.3-2-4.9.50657546483001@domain.com sent
ction/SendEmail.pm:296)

Which by all appearances looks like mail is going out.

Now if I put

Set($CorrespondAddress , ‘RT_CorrespondAddressNotSet’);
Set($CommentAddress , ‘RT_CommentAddressNotSet’);

Mail will be sent with a bad from address just like you said.

Also I very minor thing, but on the queue’s page it says

"Correspondence Address:
(If left blank, will default to RT_CorrespondAddressNotSet "

the closing bracket is missing in the text only, but thought I would
point that one out.

nod Thank you for getting to the bottom of this. It’s greatly
appreciated.

No problem

Miles

Really? what about the syslog? I know I’ve had an RT instance send me
mail from ‘RT::CommentAddress.not.set@host.domain’. What MTA are you
using? If you change that default to RT_CorrespondAddressNotSet does
it
start working?

Incidentally, what’s your MTA configuration inside RT look like? are you
using ‘sendmail’ or ‘sendmailpipe’ ?

I’m using qmail with smtp-auth, localhost and 127.* is set as
relayclient. There are no logs for MTA at all. I’m almost certain that
it doesn’t make it that far. Syslog on debug, just show that that the
mail has been sent.

Jul 15 12:31:31 mail RT: rt-3.0.3-2-4.4.10412219021808@domain.com #2/4

  • Scrip 4 (/usr/local/rt/lib/RT/Action/SendEmail.pm:91)

Jul 15 12:31:31 mail RT: rt-3.0.3-2-4.4.10412219021808@domain.com sent
To: Cc: Bcc: some@domain.com (/usr/local/rt/lib/R
T/Action/SendEmail.pm:296)
Jul 15 12:31:31 mail RT: rt-3.0.3-2-4.6.4404634517421@domain.com #2/4

Jul 15 12:31:31 mail RT: rt-3.0.3-2-4.9.50657546483001@domain.com sent
To: Cc: abuse@domain.com Bcc: (/usr/local/rt/lib/RT/A
ction/SendEmail.pm:296)

Which by all appearances looks like mail is going out.

Now if I put

Set($CorrespondAddress , ‘RT_CorrespondAddressNotSet’);
Set($CommentAddress , ‘RT_CommentAddressNotSet’);

Mail will be sent with a bad from address just like you said.

Also I very minor thing, but on the queue’s page it says

"Correspondence Address:
(If left blank, will default to RT_CorrespondAddressNotSet "

the closing bracket is missing in the text only, but thought I would
point that one out.

nod Thank you for getting to the bottom of this. It’s greatly
appreciated.

No problem

Miles


rt-users mailing list
rt-users@lists.fsck.com
http://lists.fsck.com/mailman/listinfo/rt-users

Have you read the FAQ? The RT FAQ Manager lives at http://fsck.com/rtfm

http://www.bestpractical.com/rt – Trouble Ticketing. Free.

Incidentally, what’s your MTA configuration inside RT look like? are
you
using ‘sendmail’ or ‘sendmailpipe’ ?

Set($MailCommand , ‘sendmailpipe’);
Set($SendmailArguments , “-oi -t”);
Set($SendmailPath , “/usr/sbin/sendmail”);

But it doesn’t matter if I use sendmail or sendmailpipe as discussed in
my previous posts, I tried every sort of configuration to get it to work
(except the right one )

Miles Scruggs wrote:

I’m using qmail with smtp-auth, localhost and 127.* is set as
relayclient. There are no logs for MTA at all. I’m almost certain that
it doesn’t make it that far. Syslog on debug, just show that that the
mail has been sent.

I might be imagining it, but I seem to recall hearing somewhere
about an MTA not bothering to log anything if it met certain input
it didn’t like…

What if you telnet to the mail port yourself, mimicing your RT
scrips, and send mail from RT::AddressNotSet (or whatever)?

Phil Homewood, Systems Janitor, http://www.SnapGear.com
pdh@snapgear.com Ph: +61 7 3435 2810 Fx: +61 7 3891 3630
SnapGear - Custom Embedded Solutions and Security Appliances