diff -rc pine4.50/pine/init.c pine4.50.fromheader/pine/init.c *** pine4.50/pine/init.c Wed Nov 13 14:55:45 2002 --- pine4.50.fromheader/pine/init.c Wed Nov 20 19:16:44 2002 *************** *** 2433,2438 **** --- 2433,2440 ---- F_AUTO_FCC_ONLY, h_config_auto_fcc_only, PREF_SEND}, {"fcc-without-attachments", F_NO_FCC_ATTACH, h_config_no_fcc_attach, PREF_SEND}, + {"return-path-uses-domain-name", + F_USE_DOMAIN_NAME, h_config_use_domain, PREF_SEND}, {"mark-fcc-seen", F_MARK_FCC_SEEN, h_config_mark_fcc_seen, PREF_SEND}, {"use-sender-not-x-sender", diff -rc pine4.50/pine/pine.h pine4.50.fromheader/pine/pine.h *** pine4.50/pine/pine.h Wed Nov 20 10:19:44 2002 --- pine4.50.fromheader/pine/pine.h Wed Nov 20 19:16:44 2002 *************** *** 1053,1058 **** --- 1053,1059 ---- F_AUTO_REPLY_TO, F_VERBOSE_POST, F_FCC_ON_BOUNCE, + F_USE_DOMAIN_NAME, F_USE_SENDER_NOT_X, F_BLANK_KEYMENU, F_CUSTOM_PRINT, diff -rc pine4.50/pine/pine.hlp pine4.50.fromheader/pine/pine.hlp *** pine4.50/pine/pine.hlp Wed Nov 13 14:55:49 2002 --- pine4.50.fromheader/pine/pine.hlp Wed Nov 20 19:16:46 2002 *************** *** 19658,19663 **** --- 19658,19679 ---- <End of help on this topic> + ====== h_config_use_domain ===== + + + FEATURE: return-path-uses-domain-name + + +

FEATURE: return-path-uses-domain-name

+ + If you enable this configuration option Pine will use your domain name and your + username in that domain name to construct your Return-Path header, if not Pine + will use the address that you have set in the From: field to construct it. + +

+ <End of help on this topic> + + ====== h_config_use_sender_not_x ===== diff -rc pine4.50/pine/send.c pine4.50.fromheader/pine/send.c *** pine4.50/pine/send.c Wed Nov 20 14:51:49 2002 --- pine4.50.fromheader/pine/send.c Wed Nov 20 19:16:47 2002 *************** *** 2026,2032 **** static struct headerentry he_template[]={ {"From : ", "From", h_composer_from, 10, 0, NULL, build_address, NULL, NULL, addr_book_compose, "To AddrBk", NULL, ! 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, KS_TOADDRBOOK}, {"Reply-To: ", "Reply To", h_composer_reply_to, 10, 0, NULL, build_address, NULL, NULL, addr_book_compose, "To AddrBk", NULL, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, KS_TOADDRBOOK}, --- 2026,2032 ---- static struct headerentry he_template[]={ {"From : ", "From", h_composer_from, 10, 0, NULL, build_address, NULL, NULL, addr_book_compose, "To AddrBk", NULL, ! 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, KS_TOADDRBOOK}, {"Reply-To: ", "Reply To", h_composer_reply_to, 10, 0, NULL, build_address, NULL, NULL, addr_book_compose, "To AddrBk", NULL, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, KS_TOADDRBOOK}, *************** *** 2128,2138 **** #define N_OURREPLYTO 19 #define N_OURHDRS 20 #define N_SENDER 21 /* this is used in pine_send and pine_simple_send */ /* name::type::canedit::writehdr::localcopy::rcptto */ static PINEFIELD pf_template[] = { ! {"From", Address, 0, 1, 1, 0}, {"Reply-To", Address, 0, 1, 1, 0}, {"To", Address, 1, 1, 1, 1}, {"cc", Address, 1, 1, 1, 1}, --- 2128,2140 ---- #define N_OURREPLYTO 19 #define N_OURHDRS 20 #define N_SENDER 21 + #define CAN_EDIT(x) (!((x)->never_allow_changing_from) && \ + F_ON(F_ALLOW_CHANGING_FROM, (x))) /* this is used in pine_send and pine_simple_send */ /* name::type::canedit::writehdr::localcopy::rcptto */ static PINEFIELD pf_template[] = { ! {"From", Address, 1, 1, 1, 0}, {"Reply-To", Address, 0, 1, 1, 0}, {"To", Address, 1, 1, 1, 1}, {"cc", Address, 1, 1, 1, 1}, *************** *** 2269,2275 **** *p = *(p+4); pf->type = pf_template[i].type; ! pf->canedit = pf_template[i].canedit; pf->rcptto = pf_template[i].rcptto; pf->writehdr = pf_template[i].writehdr; pf->localcopy = pf_template[i].localcopy; --- 2271,2277 ---- *p = *(p+4); pf->type = pf_template[i].type; ! pf->canedit = (i == N_FROM) ? CAN_EDIT(ps_global) : pf_template[i].canedit; pf->rcptto = pf_template[i].rcptto; pf->writehdr = pf_template[i].writehdr; pf->localcopy = pf_template[i].localcopy; *************** *** 3373,3378 **** --- 3375,3385 ---- he->rich_header = 0; } } + if (F_ON(F_ALLOW_CHANGING_FROM, ps_global) && + !ps_global->never_allow_changing_from){ + he->display_it = 1; /* show it */ + he->rich_header = 0; + } he_from = he; break; *************** *** 4049,4055 **** if(outgoing->return_path) mail_free_address(&outgoing->return_path); ! outgoing->return_path = rfc822_cpy_adr(outgoing->from); /* * Don't ever believe the sender that is there. --- 4056,4064 ---- if(outgoing->return_path) mail_free_address(&outgoing->return_path); ! outgoing->return_path = F_ON(F_USE_DOMAIN_NAME,ps_global) ! ? rfc822_cpy_adr(generate_from()) ! : rfc822_cpy_adr(outgoing->from); /* * Don't ever believe the sender that is there.