diff -rc pine4.43/pine/init.c pine4.43.fromheader/pine/init.c *** pine4.43/pine/init.c Tue Nov 27 15:46:01 2001 --- pine4.43.fromheader/pine/init.c Wed Jan 2 22:06:48 2002 *************** *** 2453,2458 **** --- 2453,2460 ---- 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}, {"use-sender-not-x-sender", F_USE_SENDER_NOT_X, h_config_use_sender_not_x, PREF_SEND}, diff -rc pine4.43/pine/pine.h pine4.43.fromheader/pine/pine.h *** pine4.43/pine/pine.h Tue Nov 27 16:12:13 2001 --- pine4.43.fromheader/pine/pine.h Wed Jan 2 22:08:12 2002 *************** *** 935,940 **** --- 935,941 ---- 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.43/pine/pine.hlp pine4.43.fromheader/pine/pine.hlp *** pine4.43/pine/pine.hlp Wed Nov 28 10:07:27 2001 --- pine4.43.fromheader/pine/pine.hlp Wed Jan 2 22:16:21 2002 *************** *** 18315,18320 **** --- 18315,18336 ---- <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.43/pine/send.c pine4.43.fromheader/pine/send.c *** pine4.43/pine/send.c Wed Jan 2 22:21:24 2002 --- pine4.43.fromheader/pine/send.c Wed Jan 2 22:27:41 2002 *************** *** 2021,2027 **** 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}, --- 2021,2027 ---- 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}, *************** *** 2123,2133 **** #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}, --- 2123,2135 ---- #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}, *************** *** 2257,2263 **** *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; --- 2259,2265 ---- *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; *************** *** 3319,3324 **** --- 3321,3331 ---- 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; *************** *** 3987,3993 **** 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. --- 3994,4002 ---- 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.