* [PATCH v2 0/2] delivered-to for reply address guessing
@ 2012-05-24 5:15 Jani Nikula
2012-05-24 5:15 ` [PATCH v2 1/2] cli: also use Delivered-To header to figure out the reply from address Jani Nikula
2012-05-24 5:15 ` [PATCH v2 2/2] test: add tests for notmuch reply From guessing Jani Nikula
0 siblings, 2 replies; 4+ messages in thread
From: Jani Nikula @ 2012-05-24 5:15 UTC (permalink / raw)
To: notmuch
id:"21a946917c5c8dd63295b7c87b7c2d1ebcb6e71e.1336746160.git.jani@nikula.org"
rebased against current master. No changes since v1.
BR,
Jani.
Jani Nikula (2):
cli: also use Delivered-To header to figure out the reply from
address
test: add tests for notmuch reply From guessing
notmuch-reply.c | 11 ++++++++---
test/reply | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 63 insertions(+), 3 deletions(-)
--
1.7.9.5
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v2 1/2] cli: also use Delivered-To header to figure out the reply from address
2012-05-24 5:15 [PATCH v2 0/2] delivered-to for reply address guessing Jani Nikula
@ 2012-05-24 5:15 ` Jani Nikula
2012-05-25 1:04 ` David Bremner
2012-05-24 5:15 ` [PATCH v2 2/2] test: add tests for notmuch reply From guessing Jani Nikula
1 sibling, 1 reply; 4+ messages in thread
From: Jani Nikula @ 2012-05-24 5:15 UTC (permalink / raw)
To: notmuch
Add another fallback header Delivered-To for guessing the user's from
address for notmuch reply before using the Received
headers. Apparently some MTAs use Delivered-To instead of
X-Original-To (which already exists as a fallback).
Reported-by: Michael Hudson-Doyle <michael.hudson@canonical.com>
Signed-off-by: Jani Nikula <jani@nikula.org>
---
notmuch-reply.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/notmuch-reply.c b/notmuch-reply.c
index 51cb6de..0f92a2e 100644
--- a/notmuch-reply.c
+++ b/notmuch-reply.c
@@ -384,7 +384,11 @@ guess_from_received_header (notmuch_config_t *config, notmuch_message_t *message
const char *delim=". \t";
size_t i;
- const char *to_headers[] = {"Envelope-to", "X-Original-To"};
+ const char *to_headers[] = {
+ "Envelope-to",
+ "X-Original-To",
+ "Delivered-To",
+ };
/* sadly, there is no standard way to find out to which email
* address a mail was delivered - what is in the headers depends
@@ -395,8 +399,9 @@ guess_from_received_header (notmuch_config_t *config, notmuch_message_t *message
* the To: or Cc: header. From here we try the following in order:
* 1) check for an Envelope-to: header
* 2) check for an X-Original-To: header
- * 3) check for a (for <email@add.res>) clause in Received: headers
- * 4) check for the domain part of known email addresses in the
+ * 3) check for a Delivered-To: header
+ * 4) check for a (for <email@add.res>) clause in Received: headers
+ * 5) check for the domain part of known email addresses in the
* 'by' part of Received headers
* If none of these work, we give up and return NULL
*/
--
1.7.9.5
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH v2 2/2] test: add tests for notmuch reply From guessing
2012-05-24 5:15 [PATCH v2 0/2] delivered-to for reply address guessing Jani Nikula
2012-05-24 5:15 ` [PATCH v2 1/2] cli: also use Delivered-To header to figure out the reply from address Jani Nikula
@ 2012-05-24 5:15 ` Jani Nikula
1 sibling, 0 replies; 4+ messages in thread
From: Jani Nikula @ 2012-05-24 5:15 UTC (permalink / raw)
To: notmuch
Add tests for picking up user's From address from fallback headers
Envelope-To, X-Original-To, and Delivered-To.
Signed-off-by: Jani Nikula <jani@nikula.org>
---
test/reply | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 55 insertions(+)
diff --git a/test/reply b/test/reply
index 00f4bea..ee5d361 100755
--- a/test/reply
+++ b/test/reply
@@ -138,4 +138,59 @@ References: <${gen_msg_id}>
On Tue, 05 Jan 2010 15:43:56 -0000, Notmuch Test Suite <test_suite@notmuchmail.org> wrote:
> 200-byte header"
+
+test_begin_subtest "From guessing: Envelope-To"
+add_message '[from]="Sender <sender@example.com>"' \
+ '[to]="Recipient <recipient@example.com>"' \
+ '[subject]="From guessing"' \
+ '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \
+ '[body]="From guessing"' \
+ '[header]="Envelope-To: test_suite_other@notmuchmail.org"'
+
+output=$(notmuch reply id:${gen_msg_id})
+test_expect_equal "$output" "From: Notmuch Test Suite <test_suite_other@notmuchmail.org>
+Subject: Re: From guessing
+To: Sender <sender@example.com>, Recipient <recipient@example.com>
+In-Reply-To: <${gen_msg_id}>
+References: <${gen_msg_id}>
+
+On Tue, 05 Jan 2010 15:43:56 -0000, Sender <sender@example.com> wrote:
+> From guessing"
+
+test_begin_subtest "From guessing: X-Original-To"
+add_message '[from]="Sender <sender@example.com>"' \
+ '[to]="Recipient <recipient@example.com>"' \
+ '[subject]="From guessing"' \
+ '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \
+ '[body]="From guessing"' \
+ '[header]="X-Original-To: test_suite@otherdomain.org"'
+
+output=$(notmuch reply id:${gen_msg_id})
+test_expect_equal "$output" "From: Notmuch Test Suite <test_suite@otherdomain.org>
+Subject: Re: From guessing
+To: Sender <sender@example.com>, Recipient <recipient@example.com>
+In-Reply-To: <${gen_msg_id}>
+References: <${gen_msg_id}>
+
+On Tue, 05 Jan 2010 15:43:56 -0000, Sender <sender@example.com> wrote:
+> From guessing"
+
+test_begin_subtest "From guessing: Delivered-To"
+add_message '[from]="Sender <sender@example.com>"' \
+ '[to]="Recipient <recipient@example.com>"' \
+ '[subject]="From guessing"' \
+ '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \
+ '[body]="From guessing"' \
+ '[header]="Delivered-To: test_suite_other@notmuchmail.org"'
+
+output=$(notmuch reply id:${gen_msg_id})
+test_expect_equal "$output" "From: Notmuch Test Suite <test_suite_other@notmuchmail.org>
+Subject: Re: From guessing
+To: Sender <sender@example.com>, Recipient <recipient@example.com>
+In-Reply-To: <${gen_msg_id}>
+References: <${gen_msg_id}>
+
+On Tue, 05 Jan 2010 15:43:56 -0000, Sender <sender@example.com> wrote:
+> From guessing"
+
test_done
--
1.7.9.5
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v2 1/2] cli: also use Delivered-To header to figure out the reply from address
2012-05-24 5:15 ` [PATCH v2 1/2] cli: also use Delivered-To header to figure out the reply from address Jani Nikula
@ 2012-05-25 1:04 ` David Bremner
0 siblings, 0 replies; 4+ messages in thread
From: David Bremner @ 2012-05-25 1:04 UTC (permalink / raw)
To: Jani Nikula, notmuch
Jani Nikula <jani@nikula.org> writes:
> Add another fallback header Delivered-To for guessing the user's from
> address for notmuch reply before using the Received
> headers. Apparently some MTAs use Delivered-To instead of
> X-Original-To (which already exists as a fallback).
series pushed to master.
d
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2012-05-25 1:04 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-05-24 5:15 [PATCH v2 0/2] delivered-to for reply address guessing Jani Nikula
2012-05-24 5:15 ` [PATCH v2 1/2] cli: also use Delivered-To header to figure out the reply from address Jani Nikula
2012-05-25 1:04 ` David Bremner
2012-05-24 5:15 ` [PATCH v2 2/2] test: add tests for notmuch reply From guessing Jani Nikula
Code repositories for project(s) associated with this public inbox
https://yhetil.org/notmuch.git/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).