From b76fe2e8c8ecb95cf27ddefc44467f2e2468f951 Mon Sep 17 00:00:00 2001 From: Barry Warsaw Date: Thu, 23 Sep 2010 09:37:32 -0400 Subject: Fix typo in scan_message(). (LP: #645897) --- src/mailman/app/docs/bounces.txt | 39 ++++++++++++++++++++++++++++++++++----- 1 file changed, 34 insertions(+), 5 deletions(-) (limited to 'src/mailman/app/docs') diff --git a/src/mailman/app/docs/bounces.txt b/src/mailman/app/docs/bounces.txt index 3d21ee423..f18569743 100644 --- a/src/mailman/app/docs/bounces.txt +++ b/src/mailman/app/docs/bounces.txt @@ -4,15 +4,13 @@ Bounces An important feature of Mailman is automatic bounce process. -XXX Many more converted tests go here. - Bounces, or message rejection ============================= -Mailman can also bounce messages back to the original sender. This is -essentially equivalent to rejecting the message with notification. Mailing -lists can bounce a message with an optional error message. +Mailman can bounce messages back to the original sender. This is essentially +equivalent to rejecting the message with notification. Mailing lists can +bounce a message with an optional error message. >>> mlist = create_list('_xtest@example.com') @@ -101,3 +99,34 @@ passed in as an instance of a ``RejectMessage`` exception. I sometimes say something important. --...-- + + +Scanning a message +================== + +When a message hits the ``-bounces`` address for a mailing list, it is scanned +to see if it we can dig out a set of addresses that have bounced. + + >>> msg = message_from_string("""\ + ... To: test-bounces@example.com + ... From: postmaster@example.org + ... Content-Type: multipart/report; report-type=delivery-status; + ... boundary="AAA" + ... + ... --AAA + ... Content-Type: message/delivery-status + ... + ... Action: failed + ... Status: 5.0.0 (recipient reached disk quota) + ... Original-Recipient: rfc822; aperson@example.net + ... Final-Recipient: rfc822; anne.person@example.net + ... + ... --AAA-- + ... """) + +The DSN bouncer will return the ``Original-Recipient:`` in preference to the +``Final-Recipient:``. + + >>> from mailman.app.bounces import scan_message + >>> print scan_message(mlist, msg) + set([u'aperson@example.net']) -- cgit v1.2.3-70-g09d2