⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 received.c

📁 linux下qmail的源码 本人加了一些注释
💻 C
字号:
#include "fmt.h"#include "qmail.h"#include "now.h"#include "datetime.h"#include "date822fmt.h"#include "received.h"static int issafe(ch) char ch;{  if (ch == '.') return 1;  if (ch == '@') return 1;  if (ch == '%') return 1;  if (ch == '+') return 1;  if (ch == '/') return 1;  if (ch == '=') return 1;  if (ch == ':') return 1;  if (ch == '-') return 1;  if ((ch >= 'a') && (ch <= 'z')) return 1;  if ((ch >= 'A') && (ch <= 'Z')) return 1;  if ((ch >= '0') && (ch <= '9')) return 1;  return 0;}void safeput(qqt,s)struct qmail *qqt;char *s;{  char ch;  while (ch = *s++) {    if (!issafe(ch)) ch = '?';    qmail_put(qqt,&ch,1);  }}static char buf[DATE822FMT];/* "Received: from relay1.uu.net (HELO uunet.uu.net) (7@192.48.96.5)\n" *//* "  by silverton.berkeley.edu with SMTP; 26 Sep 1995 04:46:54 -0000\n" */void received(qqt,protocol,local,remoteip,remotehost,remoteinfo,helo)struct qmail *qqt;char *protocol;char *local;char *remoteip;char *remotehost;char *remoteinfo;char *helo;{  struct datetime dt;  qmail_puts(qqt,"Received: from ");  safeput(qqt,remotehost);  if (helo) {    qmail_puts(qqt," (HELO ");    safeput(qqt,helo);    qmail_puts(qqt,")");  }  qmail_puts(qqt," (");  if (remoteinfo) {    safeput(qqt,remoteinfo);    qmail_puts(qqt,"@");  }  safeput(qqt,remoteip);  qmail_puts(qqt,")\n  by ");  safeput(qqt,local);  qmail_puts(qqt," with ");  qmail_puts(qqt,protocol);  qmail_puts(qqt,"; ");  datetime_tai(&dt,now());  qmail_put(qqt,buf,date822fmt(buf,&dt));}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -