From 8ad236adcc10792d107a19a6e8fc500b8a867bca Mon Sep 17 00:00:00 2001 From: Art Cancro Date: Wed, 25 Oct 2006 03:11:40 +0000 Subject: [PATCH] Correctly set Subject in vacation replies --- citadel/serv_sieve.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/citadel/serv_sieve.c b/citadel/serv_sieve.c index e1be346b3..276a58813 100644 --- a/citadel/serv_sieve.c +++ b/citadel/serv_sieve.c @@ -290,12 +290,20 @@ int ctdl_vacation(sieve2_context_t *s, void *my) int days = 1; const char *message; char *vacamsg_text = NULL; + char vacamsg_subject[1024]; lprintf(CTDL_DEBUG, "Action is VACATION\n"); message = sieve2_getvalue_string(s, "message"); if (message == NULL) return SIEVE2_ERROR_BADARGS; + if (sieve2_getvalue_string(s, "subject") != NULL) { + safestrncpy(vacamsg_subject, sieve2_getvalue_string(s, "subject"), sizeof vacamsg_subject); + } + else { + snprintf(vacamsg_subject, sizeof vacamsg_subject, "Re: %s", cs->subject); + } + days = sieve2_getvalue_int(s, "days"); if (days < 1) days = 1; if (days > MAX_VACATION) days = MAX_VACATION; @@ -331,7 +339,7 @@ int ctdl_vacation(sieve2_context_t *s, void *my) NULL, vacamsg_text, FMT_RFC822, - "Delivery status notification" + vacamsg_subject ); free(vacamsg_text); -- 2.39.2