|
@@ -145,7 +145,10 @@ function SendMDN ( $mailbox, $passed_id, $message, $imapConnection) {
|
|
$content_type->properties['charset']=$default_charset;
|
|
$content_type->properties['charset']=$default_charset;
|
|
}
|
|
}
|
|
$rfc822_header->content_type = $content_type;
|
|
$rfc822_header->content_type = $content_type;
|
|
- $rfc822_header->to[] = $header->dnt;
|
|
|
|
|
|
+ if (!empty($header->dnt))
|
|
|
|
+ $rfc822_header->to[] = $header->dnt;
|
|
|
|
+ else
|
|
|
|
+ $rfc822_header->to[] = $header->dsn;
|
|
$rfc822_header->subject = _("Read:") . ' ' . decodeHeader($header->subject,true,false);
|
|
$rfc822_header->subject = _("Read:") . ' ' . decodeHeader($header->subject,true,false);
|
|
|
|
|
|
$idents = get_identities();
|
|
$idents = get_identities();
|
|
@@ -410,7 +413,9 @@ function formatEnvheader($aMailbox, $passed_id, $passed_ent_id, $message,
|
|
|
|
|
|
if ($default_use_mdn) {
|
|
if ($default_use_mdn) {
|
|
if ($mdn_user_support) {
|
|
if ($mdn_user_support) {
|
|
- if ($header->dnt) {
|
|
|
|
|
|
+ // We are generous to the sender because DSNs are commonly ignored by servers and
|
|
|
|
+ // technically offering a return receipt in the MUA for a DSN is overstepping the RFCs
|
|
|
|
+ if ($header->dnt || $header->dnt) {
|
|
$mdn_url = $PHP_SELF;
|
|
$mdn_url = $PHP_SELF;
|
|
$mdn_url = set_url_var($mdn_url, 'mailbox', urlencode($mailbox));
|
|
$mdn_url = set_url_var($mdn_url, 'mailbox', urlencode($mailbox));
|
|
$mdn_url = set_url_var($mdn_url, 'passed_id', $passed_id);
|
|
$mdn_url = set_url_var($mdn_url, 'passed_id', $passed_id);
|