Skip to Content.
Sympa Menu

en - Re: [sympa-users] Question on Looping (possible bug)?

Subject: The mailing list for listmasters using Sympa

List archive

Chronological Thread  
  • From: Amos <address@concealed>
  • To: "address@concealed >> address@concealed" <address@concealed>
  • Subject: Re: [sympa-users] Question on Looping (possible bug)?
  • Date: Fri, 23 Sep 2016 18:08:09 -0500

I was playing with this a bit.  This seems to resolve it, but not sure if I'm overlooking something.


--- ./bin/Sympa/Spindle/ProcessIncoming.pm._orig        2016-09-23 17:16:23.491372695 -0500
+++ ./bin/Sympa/Spindle/ProcessIncoming.pm      2016-09-23 18:05:39.300275750 -0500
@@ -227,15 +227,32 @@
         ? $message->{context}
         : undef;

+    ### XXX Added the following
+    my $host_address =
+              Conf::get_robot_conf($robot, 'email') . '@'
+            . Conf::get_robot_conf($robot, 'domain');
+
+    # Loop prevention.
+    foreach my $loop ($message->get_header('X-Loop')) {
+        $log->syslog('debug3', 'X-Loop: %s', $loop);
+        if ($loop and $loop eq $host_address) {
+            $log->syslog('err',
+                'Ignoring message which would cause a loop (X-Loop: %s)',
+                $loop);
+            return undef;
+        }
+    }
+    ### XXX Added the above
+
     my $list_address;
     if ($message->{'listtype'} and $message->{'listtype'} eq 'listmaster') {
         $list_address =
               Conf::get_robot_conf($robot, 'listmaster_email') . '@'
-            . Conf::get_robot_conf($robot, 'host');
+            . Conf::get_robot_conf($robot, 'domain');
     } elsif ($message->{'listtype'} and $message->{'listtype'} eq 'sympa') {
         $list_address =
               Conf::get_robot_conf($robot, 'email') . '@'
-            . Conf::get_robot_conf($robot, 'host');
+            . Conf::get_robot_conf($robot, 'domain');
     } else {
         unless (ref $list eq 'Sympa::List') {
             $log->syslog('err', 'List %s does not exist', $listname);
@@ -292,6 +309,7 @@
         }
     }

+    ### XXX Should this be moved up????
     # Loop prevention.
     foreach my $loop ($message->get_header('X-Loop')) {
         $log->syslog('debug3', 'X-Loop: %s', $loop);




On Fri, Sep 23, 2016 at 1:04 PM, Amos <address@concealed> wrote:
Perhaps something similar, but a bit different.  I'm seeing mail looping like crazy.


Received: by lists.ourdomain.edu (Postfix, from userid 153)
        id 96C4020C984; Fri, 23 Sep 2016 12:03:04 -0500 (CDT)
Message-ID: <address@concealed>
Date: Fri, 23 Sep 2016 12:03:04 -0500
From: "Sympa" <address@concealed>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Auto-Submitted: auto-replied
Content-Type: text/plain
Subject: List unknown
X-Mailer: Sympa 6.2.16


and the log keeps reporting:


sympa_msg[8325]: err main::#240 > Sympa::Spindle::spin#80 > Sympa::Spindle::ProcessIncoming::_twist#241 List sympa does not exist
bulk[81802]: notice Sympa::Mailer::store() Forked process 17120: /usr/sbin/sendmail -oi -odi -oem -f '<>' -- address@concealed


I'm surprised that the "X-Loop" header isn't causing it to get trapped.

Amos


On Thu, Mar 24, 2016 at 9:19 AM, David Verdin <address@concealed> wrote:
Dear all,

Yes, we faced this problem too.

We fixed it in the sources and the fix will be available in Sympa 6.2.15.

Cheers,

David

Le 24/03/2016 11:04, Serge Algarotti a écrit :
Hi

Le 23/03/2016 18:13, Matthew Caron (via sympa-users Mailing List) a écrit :
Hello all,

I'm having an interesting problem which I thought I'd share. Setup:

I think we had the same problem. It appeared when we went from the 6.2.12 version to 6.2.14 version.  We have come back to version 6.2.12.


Best regards


--
A bug in Sympa? Quick! To the bug tracker!
RENATER logo
 
David Verdin
Études et projets applicatifs
 
Tél : +33 2 23 23 69 71
Fax : +33 2 23 23 71 21
 
www.renater.fr
RENATER
263 Avenue du Gal Leclerc
35042 Rennes Cedex








Archive powered by MHonArc 2.6.19+.

Top of Page