msgid = extract_long(cmdbuf, 0);
headers_only = extract_int(cmdbuf, 1);
- CtdlOutputMsg(msgid, MT_CITADEL, headers_only, 1, 0, NULL, 0, NULL, NULL);
+ CtdlOutputMsg(msgid, MT_CITADEL, headers_only, 1, 0, NULL, 0, NULL, NULL, NULL);
return;
}
msgid = extract_long(cmdbuf, 0);
headers_only = extract_int(cmdbuf, 1);
- CtdlOutputMsg(msgid, MT_RFC822, headers_only, 1, 1, NULL, 0, NULL, NULL);
+ CtdlOutputMsg(msgid, MT_RFC822, headers_only, 1, 1, NULL, 0, NULL, NULL, NULL);
}
msgid = extract_long(cmdbuf, 0);
extract_token(section, cmdbuf, 1, '|', sizeof section);
- CtdlOutputMsg(msgid, MT_MIME, 0, 1, 0, (section[0] ? section : NULL) , 0, NULL, NULL);
+ CtdlOutputMsg(msgid, MT_MIME, 0, 1, 0, (section[0] ? section : NULL) , 0, NULL, NULL, NULL);
}
extract_token(desired_section, cmdbuf, 1, '|', sizeof desired_section);
safestrncpy(CC->download_desired_section, desired_section,
sizeof CC->download_desired_section);
- CtdlOutputMsg(msgid, MT_DOWNLOAD, 0, 1, 1, NULL, 0, NULL, NULL);
+ CtdlOutputMsg(msgid, MT_DOWNLOAD, 0, 1, 1, NULL, 0, NULL, NULL, NULL);
}
extract_token(desired_section, cmdbuf, 1, '|', sizeof desired_section);
safestrncpy(CC->download_desired_section, desired_section,
sizeof CC->download_desired_section);
- CtdlOutputMsg(msgid, MT_SPEW_SECTION, 0, 1, 1, NULL, 0, NULL, NULL);
+ CtdlOutputMsg(msgid, MT_SPEW_SECTION, 0, 1, 1, NULL, 0, NULL, NULL, NULL);
}
/*
CCC->redirect_buffer = NewStrBufPlain(NULL, SIZ);
CtdlOutputMsg(msgnum, MT_RFC822,
(need_body ? HEADERS_ALL : HEADERS_FAST),
- 0, 1, NULL, SUPPRESS_ENV_TO, NULL, NULL
+ 0, 1, NULL, SUPPRESS_ENV_TO, NULL, NULL, NULL
);
if (!need_body) IAPuts("\r\n"); /* extra trailing newline */
Imap->cached_rfc822 = CCC->redirect_buffer;
HEADERS_ALL,
0, 1, NULL,
SUPPRESS_ENV_TO,
- NULL, NULL);
+ NULL, NULL, NULL);
smi.meta_rfc822_length = StrLength(CCC->redirect_buffer);
FreeStrBuf(&CCC->redirect_buffer); /* TODO: WHEW, all this for just knowing the length???? */
CtdlOutputMsg(POP3->msgs[which_one - 1].msgnum,
MT_RFC822, HEADERS_ALL, 0, 1, NULL,
(ESC_DOT|SUPPRESS_ENV_TO),
- NULL, NULL);
+ NULL, NULL, NULL);
cprintf(".\r\n");
}
HEADERS_ALL,
0, 1, NULL,
SUPPRESS_ENV_TO,
- NULL, NULL);
+ NULL, NULL, NULL);
msgtext = CCC->redirect_buffer;
CCC->redirect_buffer = NULL;
0, 1, NULL,
(ESC_DOT|SUPPRESS_ENV_TO),
Author,
- Address);
+ Address,
+ NULL);
SendMsg = CCC->redirect_buffer;
CCC->redirect_buffer = NULL;
MT_RFC822,
HEADERS_ALL,
0, 1, NULL, 0,
- NULL, NULL);
+ NULL, NULL, NULL);
StrBufAppendBuf(BounceMB, CC->redirect_buffer, 0);
FreeStrBuf(&CC->redirect_buffer);
*
*/
int CtdlOutputMsg(long msg_num, /* message number (local) to fetch */
- int mode, /* how would you like that message? */
- int headers_only, /* eschew the message body? */
- int do_proto, /* do Citadel protocol responses? */
- int crlf, /* Use CRLF newlines instead of LF? */
- char *section, /* NULL or a message/rfc822 section */
- int flags, /* various flags; see msgbase.h */
- char **Author,
- char **Address
+ int mode, /* how would you like that message? */
+ int headers_only, /* eschew the message body? */
+ int do_proto, /* do Citadel protocol responses? */
+ int crlf, /* Use CRLF newlines instead of LF? */
+ char *section, /* NULL or a message/rfc822 section */
+ int flags, /* various flags; see msgbase.h */
+ char **Author,
+ char **Address,
+ char **MessageID
) {
struct CitContext *CCC = CC;
struct CtdlMessage *TheMessage = NULL;
long len;
CM_GetAsField(TheMessage, erFc822Addr, Address, &len);
}
+ if ((MessageID != NULL) && (*MessageID == NULL))
+ {
+ long len;
+ CM_GetAsField(TheMessage, emessageId, MessageID, &len);
+ }
CM_Free(TheMessage);
TheMessage = NULL;
long len;
CM_GetAsField(TheMessage, erFc822Addr, Address, &len);
}
+ if ((MessageID != NULL) && (*MessageID == NULL))
+ {
+ long len;
+ CM_GetAsField(TheMessage, emessageId, MessageID, &len);
+ }
CM_Free(TheMessage);
);
int CtdlOutputMsg(long msg_num, /* message number (local) to fetch */
- int mode, /* how would you like that message? */
- int headers_only, /* eschew the message body? */
- int do_proto, /* do Citadel protocol responses? */
- int crlf, /* 0=LF, 1=CRLF */
- char *section, /* output a message/rfc822 section */
- int flags, /* should the bessage be exported clean? */
- char **Author, /* if you want to know the author of the message... */
- char **Address /* if you want to know the sender address of the message... */
+ int mode, /* how would you like that message? */
+ int headers_only, /* eschew the message body? */
+ int do_proto, /* do Citadel protocol responses? */
+ int crlf, /* 0=LF, 1=CRLF */
+ char *section, /* output a message/rfc822 section */
+ int flags, /* should the bessage be exported clean? */
+ char **Author, /* if you want to know the author of the message... */
+ char **Address, /* if you want to know the sender address of the message... */
+ char **MessageID /* if you want to know the Message-ID of the message... */
);
/* Flags which may be passed to CtdlOutputMsg() and CtdlOutputPreLoadedMsg() */