From: xi Date: Sun, 6 Aug 2006 08:36:48 +0000 (+1000) Subject: Add a customheaders argument to prepstdreply X-Git-Tag: RELEASE_1_2_12_RC1~26 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2b4141315ea85b490c98292b443cd6ebcf211cf5;p=thirdparty%2Fmlmmj.git Add a customheaders argument to prepstdreply --- diff --git a/include/prepstdreply.h b/include/prepstdreply.h index b1368af9..7bc4e662 100644 --- a/include/prepstdreply.h +++ b/include/prepstdreply.h @@ -30,6 +30,6 @@ char *substitute_one(const char *line, const char *listaddr, const char *listdelim, size_t datacount, char **data); char *prepstdreply(const char *listdir, const char *filename, const char *from, const char *to, const char *replyto, size_t tokencount, - char **data); + char **data, char *customheaders); #endif /* PREPSTDREPLY_H */ diff --git a/src/mlmmj-bounce.c b/src/mlmmj-bounce.c index 09b18ead..b00e9b8f 100644 --- a/src/mlmmj-bounce.c +++ b/src/mlmmj-bounce.c @@ -139,7 +139,7 @@ void do_probe(const char *listdir, const char *mlmmjsend, const char *addr) maildata[1] = indexstr; queuefilename = prepstdreply(listdir, "bounce-probe", "$listowner$", - myaddr, NULL, 1, maildata); + myaddr, NULL, 1, maildata, NULL); MY_ASSERT(queuefilename); myfree(indexstr); diff --git a/src/mlmmj-process.c b/src/mlmmj-process.c index f48a97aa..f50dde22 100644 --- a/src/mlmmj-process.c +++ b/src/mlmmj-process.c @@ -122,7 +122,7 @@ void newmoderated(const char *listdir, const char *mailfilename, myfree(listfqdn); queuefilename = prepstdreply(listdir, "moderation", "$listowner$", - to, replyto, 2, maildata); + to, replyto, 2, maildata, NULL); if((queuefd = open(queuefilename, O_WRONLY|O_APPEND)) < 0) { log_error(LOG_ARGS, "Could not open '%s'", queuefilename); @@ -676,7 +676,7 @@ int main(int argc, char **argv) listfqdn); queuefilename = prepstdreply(listdir, "notintocc", "$listowner$", fromemails.emaillist[0], - NULL, 0, NULL); + NULL, 0, NULL, NULL); MY_ASSERT(queuefilename) myfree(listdelim); myfree(listname); @@ -729,7 +729,7 @@ int main(int argc, char **argv) "bounces-help@", listfqdn); queuefilename = prepstdreply(listdir, "subonlypost", "$listowner$", fromemails.emaillist[0], - NULL, 1, maildata); + NULL, 1, maildata, NULL); MY_ASSERT(queuefilename) myfree(listaddr); myfree(listdelim); @@ -778,7 +778,7 @@ int main(int argc, char **argv) queuefilename = prepstdreply(listdir, "access", "$listowner$", fromemails.emaillist[0], - NULL, 0, NULL); + NULL, 0, NULL, NULL); MY_ASSERT(queuefilename) myfree(listaddr); myfree(listdelim); diff --git a/src/mlmmj-sub.c b/src/mlmmj-sub.c index dbb6a5a7..94ac0656 100644 --- a/src/mlmmj-sub.c +++ b/src/mlmmj-sub.c @@ -146,7 +146,7 @@ void moderate_sub(const char *listdir, const char *listaddr, maildata[5] = moderators; queuefilename = prepstdreply(listdir, "submod-moderator", - "$listowner$", to, replyto, 3, maildata); + "$listowner$", to, replyto, 3, maildata, NULL); myfree(maildata[1]); @@ -181,7 +181,7 @@ void moderate_sub(const char *listdir, const char *listaddr, from = concatstr(4, listname, listdelim, "bounces-help@", listfqdn); queuefilename = prepstdreply(listdir, "submod-requester", "$listowner$", - subaddr, NULL, 0, NULL); + subaddr, NULL, 0, NULL, NULL); myfree(listname); myfree(listfqdn); @@ -225,7 +225,7 @@ void confirm_sub(const char *listdir, const char *listaddr, } queuefilename = prepstdreply(listdir, listtext, "$helpaddr$", - subaddr, NULL, 0, NULL); + subaddr, NULL, 0, NULL, NULL); MY_ASSERT(queuefilename); myfree(listtext); @@ -272,7 +272,7 @@ void notify_sub(const char *listdir, const char *listaddr, } queuefilename = prepstdreply(listdir, listtext, "$listowner$", - "$listowner$", NULL, 1, maildata); + "$listowner$", NULL, 1, maildata, NULL); MY_ASSERT(queuefilename) myfree(listtext); myfree(maildata[1]); @@ -359,7 +359,7 @@ void generate_subconfirm(const char *listdir, const char *listaddr, maildata[3] = mystrdup(confirmaddr); queuefilename = prepstdreply(listdir, listtext, "$helpaddr$", subaddr, - confirmaddr, 2, maildata); + confirmaddr, 2, maildata, NULL); myfree(maildata[1]); myfree(maildata[3]); @@ -410,7 +410,7 @@ void generate_subscribed(const char *listdir, const char *subaddr, myfree(listdelim); queuefilename = prepstdreply(listdir, "sub-subscribed", "$helpaddr$", - subaddr, NULL, 0, NULL); + subaddr, NULL, 0, NULL, NULL); MY_ASSERT(queuefilename); myfree(listaddr); diff --git a/src/mlmmj-unsub.c b/src/mlmmj-unsub.c index 66f801fb..34746dce 100644 --- a/src/mlmmj-unsub.c +++ b/src/mlmmj-unsub.c @@ -76,7 +76,7 @@ void confirm_unsub(const char *listdir, const char *listaddr, } queuefilename = prepstdreply(listdir, listtext, "$helpaddr$", - subaddr, NULL, 0, NULL); + subaddr, NULL, 0, NULL, NULL); MY_ASSERT(queuefilename); myfree(listtext); @@ -124,7 +124,7 @@ void notify_unsub(const char *listdir, const char *listaddr, } queuefilename = prepstdreply(listdir, listtext, "$listowner$", - "$listowner$", NULL, 1, maildata); + "$listowner$", NULL, 1, maildata, NULL); MY_ASSERT(queuefilename); myfree(listtext); myfree(maildata[1]); @@ -213,7 +213,7 @@ void generate_unsubconfirm(const char *listdir, const char *listaddr, maildata[3] = mystrdup(confirmaddr); queuefilename = prepstdreply(listdir, listtext, "$helpaddr$", subaddr, - confirmaddr, 2, maildata); + confirmaddr, 2, maildata, NULL); myfree(maildata[1]); myfree(maildata[3]); @@ -305,7 +305,7 @@ void generate_notsubscribed(const char *listdir, const char *subaddr, myfree(listdelim); queuefilename = prepstdreply(listdir, "unsub-notsubscribed", - "$helpaddr$", subaddr, NULL, 0, NULL); + "$helpaddr$", subaddr, NULL, 0, NULL, NULL); MY_ASSERT(queuefilename); myfree(listaddr); diff --git a/src/prepstdreply.c b/src/prepstdreply.c index e6e8e02d..aa5be310 100644 --- a/src/prepstdreply.c +++ b/src/prepstdreply.c @@ -153,7 +153,7 @@ concatandreturn: char *prepstdreply(const char *listdir, const char *filename, const char *from, const char *to, const char *replyto, size_t tokencount, - char **data) + char **data, char *customheaders) { int infd, outfd; char *listaddr, *listdelim, *myfrom, *tmp, *subject, *retstr = NULL; @@ -212,8 +212,8 @@ char *prepstdreply(const char *listdir, const char *filename, const char *from, return NULL; } - str = concatstr(9, "From: ", myfrom, "\nTo: ", myto, "\n", myreplyto, - mymsgid, mydate, subject); + str = concatstr(10, "From: ", myfrom, "\nTo: ", myto, "\n", myreplyto, + mymsgid, mydate, subject, customheaders); if(writen(outfd, str, strlen(str)) < 0) { log_error(LOG_ARGS, "Could not write std mail"); diff --git a/src/send_help.c b/src/send_help.c index d667afd0..aa721817 100644 --- a/src/send_help.c +++ b/src/send_help.c @@ -57,7 +57,7 @@ void send_help(const char *listdir, const char *emailaddr, myfree(listdelim); queuefilename = prepstdreply(listdir, "listhelp", "$listowner$", - emailaddr, NULL, 0, NULL); + emailaddr, NULL, 0, NULL, NULL); if(queuefilename == NULL) { log_error(LOG_ARGS, "Could not prepare help mail"); exit(EXIT_FAILURE); diff --git a/src/send_list.c b/src/send_list.c index 1c2c1416..e2280420 100644 --- a/src/send_list.c +++ b/src/send_list.c @@ -61,7 +61,7 @@ void send_list(const char *listdir, const char *emailaddr, myfree(listdelim); queuefilename = prepstdreply(listdir, "listsubs", "$listowner$", - emailaddr, NULL, 0, NULL); + emailaddr, NULL, 0, NULL, NULL); if(queuefilename == NULL) { log_error(LOG_ARGS, "Could not prepare sub list mail"); exit(EXIT_FAILURE);