forked from pool/alpine
112 lines
4.7 KiB
Diff
112 lines
4.7 KiB
Diff
|
diff -rc alpine-2.10/alpine/reply.c alpine-2.10.unverified/alpine/reply.c
|
||
|
*** alpine-2.10/alpine/reply.c 2013-01-11 11:19:33.000000000 -0700
|
||
|
--- alpine-2.10.unverified/alpine/reply.c 2013-01-11 16:20:11.000000000 -0700
|
||
|
***************
|
||
|
*** 1165,1173 ****
|
||
|
}
|
||
|
else if(!outgoing->newsgroups)
|
||
|
outgoing->newsgroups = cpystr(env->newsgroups);
|
||
|
- if(!IS_NEWS(ps_global->mail_stream))
|
||
|
- q_status_message(SM_ORDER, 2, 3,
|
||
|
- _("Replying to message that MAY or MAY NOT have been posted to newsgroup"));
|
||
|
}
|
||
|
|
||
|
return(ret);
|
||
|
--- 1165,1170 ----
|
||
|
diff -rc alpine-2.10/imap/src/c-client/imap4r1.c alpine-2.10.unverified/imap/src/c-client/imap4r1.c
|
||
|
*** alpine-2.10/imap/src/c-client/imap4r1.c 2011-01-09 21:00:20.000000000 -0700
|
||
|
--- alpine-2.10.unverified/imap/src/c-client/imap4r1.c 2013-01-11 16:20:11.000000000 -0700
|
||
|
***************
|
||
|
*** 4527,4532 ****
|
||
|
--- 4527,4533 ----
|
||
|
if (*env) { /* need to merge this header into envelope? */
|
||
|
if (!(*env)->newsgroups) { /* need Newsgroups? */
|
||
|
(*env)->newsgroups = nenv->newsgroups;
|
||
|
+ (*env)->ngpathexists = nenv->ngpathexists;
|
||
|
nenv->newsgroups = NIL;
|
||
|
}
|
||
|
if (!(*env)->followup_to) { /* need Followup-To? */
|
||
|
***************
|
||
|
*** 4581,4586 ****
|
||
|
--- 4582,4588 ----
|
||
|
if (oenv) { /* need to merge old envelope? */
|
||
|
(*env)->newsgroups = oenv->newsgroups;
|
||
|
oenv->newsgroups = NIL;
|
||
|
+ (*env)->ngpathexists = oenv->ngpathexists;
|
||
|
(*env)->followup_to = oenv->followup_to;
|
||
|
oenv->followup_to = NIL;
|
||
|
(*env)->references = oenv->references;
|
||
|
diff -rc alpine-2.10/imap/src/c-client/mail.h alpine-2.10.unverified/imap/src/c-client/mail.h
|
||
|
*** alpine-2.10/imap/src/c-client/mail.h 2013-01-11 15:21:34.000000000 -0700
|
||
|
--- alpine-2.10.unverified/imap/src/c-client/mail.h 2013-01-11 16:20:11.000000000 -0700
|
||
|
***************
|
||
|
*** 685,690 ****
|
||
|
--- 685,691 ----
|
||
|
/* Message envelope */
|
||
|
|
||
|
typedef struct mail_envelope {
|
||
|
+ unsigned int ngpathexists : 1; /* newsgroups may be bogus */
|
||
|
unsigned int incomplete : 1; /* envelope may be incomplete */
|
||
|
unsigned int imapenvonly : 1; /* envelope only has IMAP envelope */
|
||
|
char *remail; /* remail header if any */
|
||
|
diff -rc alpine-2.10/imap/src/c-client/rfc822.c alpine-2.10.unverified/imap/src/c-client/rfc822.c
|
||
|
*** alpine-2.10/imap/src/c-client/rfc822.c 2011-01-09 21:00:20.000000000 -0700
|
||
|
--- alpine-2.10.unverified/imap/src/c-client/rfc822.c 2013-01-11 16:20:11.000000000 -0700
|
||
|
***************
|
||
|
*** 128,133 ****
|
||
|
--- 128,134 ----
|
||
|
ENVELOPE *env = (*en = mail_newenvelope ());
|
||
|
BODY *body = bdy ? (*bdy = mail_newbody ()) : NIL;
|
||
|
long MIMEp = -1; /* flag that MIME semantics are in effect */
|
||
|
+ long PathP = NIL; /* flag that a Path: was seen */
|
||
|
parseline_t pl = (parseline_t) mail_parameters (NIL,GET_PARSELINE,NIL);
|
||
|
if (!host) host = BADHOST; /* make sure that host is non-null */
|
||
|
while (i && *s != '\n') { /* until end of header */
|
||
|
***************
|
||
|
*** 230,235 ****
|
||
|
--- 231,239 ----
|
||
|
*t++ = '\0';
|
||
|
}
|
||
|
break;
|
||
|
+ case 'P': /* possible Path: */
|
||
|
+ if (!strcmp (tmp+1,"ATH")) env->ngpathexists = T;
|
||
|
+ break;
|
||
|
case 'R': /* possible Reply-To: */
|
||
|
if (!strcmp (tmp+1,"EPLY-TO"))
|
||
|
rfc822_parse_adrlist (&env->reply_to,d,host);
|
||
|
diff -rc alpine-2.10/pith/mailview.c alpine-2.10.unverified/pith/mailview.c
|
||
|
*** alpine-2.10/pith/mailview.c 2013-01-11 11:26:43.000000000 -0700
|
||
|
--- alpine-2.10.unverified/pith/mailview.c 2013-01-11 16:20:11.000000000 -0700
|
||
|
***************
|
||
|
*** 2379,2386 ****
|
||
|
format_addr_string(s, n, sect, "Return-Path: ", e->return_path,
|
||
|
flags, oacs, pc);
|
||
|
|
||
|
! if((which & FE_NEWSGROUPS) && e->newsgroups)
|
||
|
format_newsgroup_string("Newsgroups: ", e->newsgroups, flags, pc);
|
||
|
|
||
|
if((which & FE_FOLLOWUPTO) && e->followup_to)
|
||
|
format_newsgroup_string("Followup-To: ", e->followup_to, flags, pc);
|
||
|
--- 2379,2399 ----
|
||
|
format_addr_string(s, n, sect, "Return-Path: ", e->return_path,
|
||
|
flags, oacs, pc);
|
||
|
|
||
|
! if((which & FE_NEWSGROUPS) && e->newsgroups){
|
||
|
! int bogus = NIL;
|
||
|
format_newsgroup_string("Newsgroups: ", e->newsgroups, flags, pc);
|
||
|
+ if (!e->ngpathexists && e->message_id &&
|
||
|
+ strncmp (e->message_id,"<alpine.",8) &&
|
||
|
+ strncmp (e->message_id,"<Pine.",6) &&
|
||
|
+ strncmp (e->message_id,"<MS-C.",6) &&
|
||
|
+ strncmp (e->message_id,"<MailManager.",13) &&
|
||
|
+ strncmp (e->message_id,"<EasyMail.",11) &&
|
||
|
+ strncmp (e->message_id,"<ML-",4)) bogus = T;
|
||
|
+
|
||
|
+ if(bogus)
|
||
|
+ q_status_message(SM_ORDER, 0, 3,
|
||
|
+ "Unverified Newsgroup header -- Message MAY or MAY NOT have been posted");
|
||
|
+ }
|
||
|
|
||
|
if((which & FE_FOLLOWUPTO) && e->followup_to)
|
||
|
format_newsgroup_string("Followup-To: ", e->followup_to, flags, pc);
|