作者PaulLiu.bbs@processor.tfcis.org (GrandPaul) 看板: plan
標題Re: [問題] 關於 RFC 2045 / RFC 2047
時間XEON (Tue, 01 Apr 2003 19:22:16 +0800 (CST)) Updated: 2003/08/16
※ -------------- mail 的部分 -------------- ※
: bmtad/Makefile 若是 FreeBSD 要改這個
freebsd:
! .... -L../lib -ldao -lcrypt -L/usr/local/lib -liconv -export ....
: bmtad/bmtad.c
- #define ANTI_NOTMYCHARSETMAIL
+ #undef ANTI_NOTMYCHARSETMAIL
...
...
+ static char charset[32];
static int
mta_mailer(ap)
Agent *ap;
...
...
+ mm_getcharset(data + 13, charset, sizeof(charset));
#ifdef ANTI_NOTMYCHARSETMAIL
: bmtad/bmtad.c
cc = mmdecode(data, decode, data);
if (cc > 0)
ap->used = (data - ap->data) + cc;
+ if (*charset)
+ str_conv(charset, MYCHARSET, data, cc);
: util/Makefile
freebsd:
.... -L../lib -ldao -lcrypt -L/usr/local/lib -liconv
: util/bbsmail.c
: util/brdmail.c 二個程式改法一樣
- #define ANTI_NOTMYCHARSETMAIL
+ #undef ANTI_NOTMYCHARSETMAIL
...
...
HDR mhdr;
! char buf[512], title[256], sender[256], fpath[64], charset[32],
*str, *ptr, *family, decode;
int fd, fx;
...
...
if (!memcmp(buf, "Content-Type: ", 14))
{
+ mm_getcharset(str, charset, sizeof(charset));
#ifdef ANTI_NOTMYCHARSETMAIL
...
...
while (fgets(buf, sizeof(buf), stdin) && buf[0])
{
if (decode)
{
fd = mmdecode(buf, decode, buf);
if (fd > 0)
buf[fd] = '\0';
+ if (*charset)
+ str_conv(charset, MYCHARSET, buf, fd);
}
fputs(buf, fp);
}
--
╭─ Origin ─╗ ���O���� processor.tfcis.org ~ κλμ ─┤
├ Author ╡ cnal.csie.nctu.edu.tw