- 论坛徽章:
- 0
|
我做内网sendmail服务器的时候,编译安装了sendmail8.12.9.tar.gz这个文件,没有做sasl。
在一切都作好以后,发信收信都没问题,我又在aliases文件里做了: user1:user1,root
就是在用户发信的时候,root在服务器上得到一份备份的邮件.这样做也成功了。可是用户发信用到
Bcc的时候,服务器上得到的邮件头里看不到Bcc ,maillog里也看不到,我想得到Bcc的消息,不
知道应该怎么办?
我尝试的方法如下:
1. 我将sendmail8.12.9.tar.gz释放以后,找到里面的两个文件,涉及到Bcc的行做了修改:
文件一:collect.c
/* have a valid recipient header -- delete Bcc: headers */
e->e_flags |= EF_DELETE_BCC;
}
else if (hvalue("bcc", e->e_header) == NULL)
{
/* no valid recipient headers */
register ADDRESS *q;
char *hdr = NULL;
/* create a recipient field */
switch (NoRecipientAction)
{
case NRA_ADD_APPARENTLY_TO:
hdr = "Apparently-To";
break;
case NRA_ADD_TO:
hdr = "To";
break;
case NRA_ADD_BCC:
加上了注释:// addheader("Bcc", " ", 0, e);
以前没有 break;
文件二:headers.c
if (bitset(H_BCC, h->h_flags))
{
/* Bcc: field -- either truncate or delete */
if (bitset(EF_DELETE_BCC, e->e_flags))
{
//if (tTd(34, 11))
加//都是修 //sm_dprintf(" (skipped -- bcc)\n");
改的被注释 }
else
{
/* no other recipient headers: truncate value */
//(void) sm_strlcpyn(obuf, sizeof obuf, 2,
// h->h_field, ":");
//putline(obuf, mci);
}
continue;
然后重新编译安装sendmail 。但都没有达到"出现Bcc"的效果!(c语言好的人可否帮我解释一下,谢谢!)
方法二:将m4生成的文件sendmail.cf里的一行:NoRecipientAction=add-to-undisclosed
注释去掉改成:NoRecipientAction=add-bcc 就是加个bcc头。
两种方法都没有做出"显示出Bcc" 的效果!我是没有办法了,查了大量的资料,FAQ也看了,很少
有关于Bcc的案例,不知道各位高手有没有成熟的做法和想法,谢谢帮忙! |
|