作者itoc, 信區: itoc
標題[功能] rec_article.c 轉信的文章加入檔頭 X-Filename
時間03/08/17
作者: itoc (風調雨順,國泰民安) 看板: plan
標題: [功能] 轉信的文章加入檔頭 X-Filename
時間: Tue Jun 24 14:45:57 2003 Updated: 2005/11/25
在文章的內文前加入額外的檔頭資料 X-Filename
: global.h
: 看你有幾個檔頭,LINE_HEADER 這數字就寫幾
- #define LINE_HEADER 3 /* more.c bhttpd.c 檔頭有三列 */
+ #define LINE_HEADER 4 /* more.c bhttpd.c 檔頭有三列 */
: inntobbs.h
extern char *SUBJECT, *FROM, *SITE, *DATE, *PATH,
*GROUP, *MSGID, *CONTROL, *XFILENAME;
: inntobbs.c
enum HeaderValue /* 所有有用到的 header */
{
SUBJECT_H,
FROM_H,
SITE_H,
DATE_H,
PATH_H,
GROUP_H,
MSGID_H,
CONTROL_H,
+ XFILENAME_H,
LASTHEADER
};
static header_t headertable[LASTHEADER] =
{
"Subject", SUBJECT_H,
"From", FROM_H,
"Organization", SITE_H,
"Date", DATE_H,
"Path", PATH_H,
"Newsgroups", GROUP_H,
"Message-ID", MSGID_H,
"Control", CONTROL_H,
+ "X-Filename", XFILENAME_H,
};
char *BODY;
char *SUBJECT, *FROM, *SITE, *DATE, *PATH,
*GROUP, *MSGID, *CONTROL, *XFILENAME;
: innbbs.c:readlines() 收信站收入
SUBJECT = HEADER[SUBJECT_H];
FROM = HEADER[FROM_H];
SITE = HEADER[SITE_H];
DATE = HEADER[DATE_H];
POSTHOST = HEADER[POSTHOST_H1] ? HEADER[POSTHOST_H1] : HEADER[POSTHOST_H2];
PATH = HEADER[PATH_H];
GROUP = HEADER[GROUP_H];
MSGID = HEADER[MSGID_H];
CONTROL = HEADER[CONTROL_H];
+ XFILENAME = HEADER[XFILENAME_H];
}
: rec_article.c:bbspost_add()
fprintf(fp, "發信人: %.50s 看板: %s\n", FROM, board);
fprintf(fp, "標 題: %.70s\n", SUBJECT);
- fprintf(fp, "發信站: %.27s (%.40s)\n\n", SITE, DATE);
+ fprintf(fp, "發信站: %.27s (%.40s)\n", SITE, DATE);
+ if (XFILENAME)
+ fprintf(fp, "檔 名: %.70s\n", XFILENAME);
+ fprintf(fp, "\n");
: more.c:outs_header()
static int /* 1:是檔頭 */
outs_header(buf, header_len)
char *buf;
int header_len;
{
static const char header1[LINE_HEADER][LEN_AUTHOR1] =
{"作者", "標題", "時間", "檔名"};
static const char header2[LINE_HEADER][LEN_AUTHOR2] =
{"發信人", "標 題", "發信站", "檔 名"};
: bhttpd.c:txt2htm()
static void
txt2htm(fp)
FILE *fp;
{
int i;
char buf[ANSILINELEN], encodebuf[LSTRLEN];
static char header1[LINE_HEADER][LEN_AUTHOR1] =
{"作者", "標題", "時間", "檔名"};
static char header2[LINE_HEADER][LEN_AUTHOR2] =
{"發信人", "標 題", "發信站", "檔 名"};
char *headvalue, *pbrd, board[128];
--
□ 本文章由 itoc 從 itoc.Dorm-GD2.NCTU.edu.tw 發表精華選讀←離開[主題上]主題下(k)上篇(j)下篇S/a搜尋 G串列 TAB精華 ↑↓捲 Pg/Space翻