其实就是一篇水文 版主别封我啊 hoho
可能有个别地方 比如一些 bug 啦 什么的还有些用 别的各个站长都会自己改的
而且我也没改彻底 要考试了 没办法啊:(
对比的是 FB2000v1.0909 (1287563 FB2000v1.0909.tar.gz)
bbssrc.orig 为解开后的目录
bbssrc 为修改后的目录
----->
diff -r -u bbssrc.orig/configure.inf bbssrc/configure.inf
--- bbssrc.orig/configure.inf Sat Sep 8 21:54:48 2001
+++ bbssrc/configure.inf Wed Dec 12 23:17:44 2001
@@ -2,9 +2,9 @@
This file is generate by configure $Revision: 1.1.1.1 $
######################################################
PERL=/usr/bin/perl
-BBS_ID=LonelyWood
-DOMAIN=tl.whu.edu.cn
-CNAME=寂寞森林
+BBS_ID=35net.BBS
+DOMAIN=bbs.35net.dhs.org
+CNAME=35# 虚拟世界
DEFAULTBD=sysop
BUILD_PLATFORM=linux
LIBCRYPT=DES
diff -r -u bbssrc.orig/include/bbs.h bbssrc/include/bbs.h
--- bbssrc.orig/include/bbs.h Sat Apr 21 15:48:18 2001
+++ bbssrc/include/bbs.h Fri Dec 14 21:20:29 2001
@@ -92,7 +92,7 @@
#define MAX_WELCOME 15 /* 欢迎画面数 */
#define MAX_GOODBYE 15 /* 离站画面数 */
#define MAX_ISSUE 15 /* 最大进站画面数 */
-#define MAX_DIGEST 1000 /* 最大文摘数 */
+#define MAX_DIGEST 3000 /* 最大文摘数 */
#define MAX_POSTRETRY 100
#define MORE_BUFSIZE 4096
@@ -167,7 +167,7 @@
#define MSG_SEPERATOR "\
———————————————————————————————————————"
#define MULTI_LOGINS 3 /* 同时可上站 ID 数 */
-#define DEF_VALUE "★★ 欢迎光临快意灌水站! ★★"
+#define DEF_VALUE "★★ 欢迎光临35# 虚拟世界站! ★★"
#define DEF_FILE "etc/whatdate"
#define ALL_PAGER 0x1
diff -r -u bbssrc.orig/include/functions.h bbssrc/include/functions.h
--- bbssrc.orig/include/functions.h Sat Apr 21 16:25:18 2001
+++ bbssrc/include/functions.h Fri Dec 14 21:27:35 2001
@@ -4,9 +4,7 @@
// 下面是一些功能的控制,如果屏蔽该控制,则表示不使用这个功能
// 如果该行前面有 "//" 则表示被屏蔽,要屏蔽该功能,则加入 "//"
-//#define AddWaterONLY /* 仅仅是快意灌水站自己使用的代码,请屏蔽 */
-
-#define SHOW_THANKYOU /* 显示源代码提供者信息 */
+//#define SHOW_THANKYOU /* 显示源代码提供者信息 */
#define TIMECOUNTER /* ..... */
@@ -27,19 +25,19 @@
/* 系统安全相关代码的 define */
//#define MUDCHECK_BEFORELOGIN /* 登陆前按键确认 */
//#define CHECK_SYSTEM_PASS /* 站长级 ID 上站询问系统密码 */
-//#define SYSOPLOGINPROTECT /* SYSOP 帐号登陆安全 */
+#define SYSOPLOGINPROTECT /* SYSOP 帐号登陆安全 */
/* 某些限制性代码的相关 define */
#define BOARD_CONTROL /* 提供成员版面设置功能 Ctrl+K */
#define BOARD_READDENY /* 阅读受限控制,封禁部分 ID 进入看板的权力*/
//#define KEEP_DELETED_HEADER /* 保留删除文章记录 */
//#define CHECK_LESS60SEC /* 60 秒内重复 login 时要求按键确认身份*/
-#define MARK_X_FLAG /* 将灌水文章加上 'X' 标记 */
+//#define MARK_X_FLAG /* 将灌水文章加上 'X' 标记 */
/* 一般不需要变更的 define */
-//#define BIRTHDAY_POST /* User 生日时自动发文祝贺 */
-//#define SHOWMETOFRIEND /* 环顾四方的是否为对方好友的显示 */
-//#define QCLEARNEWFLAG /* 启用快速清除未读标记的算法 */
+#define BIRTHDAY_POST /* User 生日时自动发文祝贺 */
+#define SHOWMETOFRIEND /* 环顾四方的是否为对方好友的显示 */
+#define QCLEARNEWFLAG /* 启用快速清除未读标记的算法 */
#define BBSD /* 使用 BBS daemon, 不使用 bbsrf */
#define ALLOWAUTOWRAP /* 启用自动排版功能 */
#define ALLOWSWITCHCODE /* 启用 GB 码 <==> Big5 码 切换 */
@@ -49,15 +47,15 @@
#define COLOR_POST_DATE /* 文章日期颜色 */
#define TALK_LOG /* 聊天纪录功能 */
#define RNDSIGN /* 乱数签名档 */
-#define FOR_DOMAIN_NAME /* 登陆时进行域名反查 */
-//#define SHOW_IDLE_TIME /* 显示发呆时间 */
-#define NEW_CREATE_BRD // 新的创建/修改讨论区的过程
+//#define FOR_DOMAIN_NAME /* 登陆时进行域名反查 */
+#define SHOW_IDLE_TIME /* 显示发呆时间 */
+//#define NEW_CREATE_BRD // 新的创建/修改讨论区的过程
// 适合于对系统不熟的用户
/* 看站长的喜好啦, 想如何就如何吧, 当然你要懂这个啦,呵呵 */
//#define MSG_CANCLE_BY_CTRL_C /* 用 ctrl-c 来否略讯息 */
#define LOG_MY_MESG /* 讯息纪录中纪录自己所发出的讯息 */
-#define BIGGER_MOVIE /* 加大活动看板空间 (七行) */
-#define ALWAYS_SHOW_BRDNOTE /* 每次进板都会 show 出进板画面 */
+//#define BIGGER_MOVIE /* 加大活动看板空间 (七行) */
+//#define ALWAYS_SHOW_BRDNOTE /* 每次进板都会 show 出进板画面 */
/* 下面的是准备取消的功能, 你看着办吧 */
/*
@@ -68,14 +66,7 @@
的寻人功能。 :) 所以我把他缺省为取消了。
不过,如果你想要这个功能,就自己打开吧,呵呵。
*/
-//#define CHK_FRIEND_BOOK /* 设定系统寻人名单 */
-
-#ifdef AddWaterONLY
-#define AUTOGETPERM /* 无需注册即获取基本权限 */
-#define SYSOPLOGINPROTECT /* SYSOP 帐号登陆安全 */
-#undef FOR_DOMAIN_NAME /* 登陆时进行域名反查 */
-#undef NEWCOMERREPORT
-#endif
+#define CHK_FRIEND_BOOK /* 设定系统寻人名单 */
#endif
/* _FUNCTIONS_H_ */
diff -r -u bbssrc.orig/include/modes.h bbssrc/include/modes.h
--- bbssrc.orig/include/modes.h Sun Sep 9 00:06:02 2001
+++ bbssrc/include/modes.h Mon Dec 17 18:37:12 2001
@@ -104,3 +104,4 @@
#define WINMINE2 81
#define CAL 82
#define RECLUSION 83
+#define QKMJ 84
diff -r -u bbssrc.orig/src/admintool.c bbssrc/src/admintool.c
--- bbssrc.orig/src/admintool.c Sat Apr 21 15:46:25 2001
+++ bbssrc/src/admintool.c Sat Dec 15 00:55:14 2001
@@ -167,19 +167,19 @@
for (i = 0 ; i < oldbm+1; i++) fprintf(bmfp,"%s\n",bnames[i]);
fclose(bmfp);
}
- sprintf(bmfilename, "任命 %s 为 %s 讨论区%s",
+ sprintf(bmfilename, "[公告] 任命 %s 为 %s 讨论区%s",
lookupuser.userid,fh.filename,bm?"板主":"板副");
securityreport(bmfilename);
move(16,0);
prints(bmfilename);
- sprintf(genbuf,"\n\t\t\t【 通告 】\n\n"
+ sprintf(genbuf,"\n\t\t\t【 公告 】\n\n"
"\t任命 %s 为 %s 板%s!\n"
- "\t请 %s 在三天内在 BoardManager 板报道。\n"
- "\t逾期未能报道者,将取消板主权限。\n",
+ "\t请 %s 在三天内在 sysop 板报道。\n",
+ //"\t逾期未能报道者,将取消板主权限。\n",
lookupuser.userid,bname,bm?"板主":"板副",lookupuser.userid);
for(i=0; i< 5 ; i++){
if(buf[i][0] == '\0') break;
- if(i == 0) strcat(genbuf,"\n\n站长任命附言:\n");
+ if(i == 0) strcat(genbuf,"\n\n任命附言:\n");
strcat(genbuf,buf[i]);
strcat(genbuf,"\n");
}
@@ -295,7 +295,7 @@
}
}
prints("\n\n");
- if( askyn("需要在相关版面发送通告吗?",YEA,NA)== NA ){
+ if( askyn("需要在相关版面发送公告吗?",YEA,NA)== NA ){
pressanykey();
return 0;
}
@@ -303,19 +303,19 @@
if(askyn("正常离任请按 Enter 键确认,撤职惩罚按 N 键",YEA,NA)==YEA)right=1;
else right = 0;
if(right)
- sprintf(bmfilename,"%s 板%s %s 离任通告",bname,bm?"板主":"板副",lookupuser.userid);
+ sprintf(bmfilename,"%s 板%s %s 离任公告",bname,bm?"板主":"板副",lookupuser.userid);
else
- sprintf(bmfilename,"[通告]撤除 %s 板%s %s ",bname,bm?"板主":"板副",lookupuser.userid);
+ sprintf(bmfilename,"[公告]撤除 %s 板%s %s ",bname,bm?"板主":"板副",lookupuser.userid);
strcpy(currboard,bname);
if(right){
- sprintf(genbuf,"\n\t\t\t【 通告 】\n\n"
+ sprintf(genbuf,"\n\t\t\t【 公告 】\n\n"
"\t经站务组讨论:\n"
"\t同意 %s 辞去 %s 板的%s职务。\n"
"\t在此,对他曾经在 %s 板的辛苦劳作表示感谢。\n\n"
"\t希望今后也能支持本版的工作.",
lookupuser.userid,bname,bm?"板主":"板副",bname);
} else {
- sprintf(genbuf,"\n\t\t\t【撤职通告】\n\n"
+ sprintf(genbuf,"\n\t\t\t【撤职公告】\n\n"
"\t经站务组讨论决定:\n"
"\t撤除 %s 板%s %s 的%s职务。\n",
bname,bm?"板主":"板副",lookupuser.userid,bm?"板主":"板副");
diff -r -u bbssrc.orig/src/announce.c bbssrc/src/announce.c
--- bbssrc.orig/src/announce.c Sun Sep 9 10:59:16 2001
+++ bbssrc/src/announce.c Sat Dec 15 03:53:03 2001
@@ -60,7 +60,7 @@
clear();
if (chkmail()) {
prints("m");
- sprintf(genbuf, "[您有信件,按 M 看新信]");
+ sprintf(genbuf, "[您有信件,按 v 看信]");
} else
strcpy(genbuf, pm->mtitle);
sprintf(buf, "%*s", (80 - strlen(genbuf)) / 2, "");
@@ -909,20 +909,26 @@
}
show_message(NULL);
break;
- case 'M':
+ case 'v':
savemode = uinfo.mode;
- m_new();
+ m_read();
+ modify_user_mode(savemode);
+ me.page = 9999;
+ break;
+ case KEY_TAB:
+ case 'H':
+ savemode = uinfo.mode;
+ show_help("0Announce/bbslist/day");
modify_user_mode(savemode);
me.page = 9999;
break;
-#if 0
+ case 'l': /* ppfoong */
case 'L':
savemode = uinfo.mode;
- m_read();
+ show_allmsgs();
modify_user_mode(savemode);
me.page = 9999;
break;
-#endif
case 'h':
show_help("help/announcereadhelp");
me.page = 9999;
@@ -1039,7 +1045,7 @@
else timetotal += time(0) - now;
if(timetotal > 3){
sprintf(something, "%s/counter.person",path);
- fp = fopen(something,"r");
+ fp = fopen(something,"rw");
if(fp) {
fscanf(fp,"%d",&counter);
fclose(fp);
diff -r -u bbssrc.orig/src/bbs.c bbssrc/src/bbs.c
--- bbssrc.orig/src/bbs.c Sat Sep 8 23:20:29 2001
+++ bbssrc/src/bbs.c Sat Dec 15 13:46:37 2001
@@ -597,9 +597,9 @@
}
}
if (chkmail())
- strcpy(title, "[您有信件,按 M 看新信]");
+ strcpy(title, "[您有信件,按 v 看信]");
else if ((bp->flag & VOTE_FLAG))
- sprintf(title, "※投票中,按 v 进入投票※");
+ sprintf(title, "※投票中,按 V 进入投票※");
else
strcpy(title, bp->title + 8);
@@ -1331,7 +1331,8 @@
} else fseek( inf, (long) 0, SEEK_SET);
} else if (mode == 1) {
fprintf(of,";41;33m发信人: %s (自动发信系统), 信区: %s%*sm\n",
- BBSID,quote_board,48-strlen(BBSID)-strlen(quote_board)," ");
+ "deliver",quote_board,41-strlen(quote_board)," ");
+// BBSID,quote_board,48-strlen(BBSID)-strlen(quote_board)," ");
fprintf(of, "标 题: %s\n", quote_title);
#ifndef TIMECOUNTER
now = time(0);
@@ -1339,7 +1340,7 @@
#else
getnowdatestring();
#endif
- fprintf(of, "发信站: %s3m自动发信系统m(%s)\n\n",
+ fprintf(of, "发信站: %s (%s)\n\n",
BoardName, datestring);
} else if (mode == 2) {
write_header(of, 0 /* 写入 .posts */ );
@@ -1478,7 +1479,7 @@
}
close(fp);
strcpy(postfile.filename, fname);
- if (mode == 1) strcpy(whopost, BBSID);
+ if (mode == 1) strcpy(whopost, "deliver");
else strcpy(whopost, currentuser.userid);
strncpy(postfile.owner, whopost, STRLEN);
setbfile(filepath, currboard, postfile.filename);
@@ -2492,8 +2493,8 @@
's', do_select,
Ctrl('C'), do_cross,
Ctrl('P'), do_post,
- 'C', new_flag_clearto, /* 清除未读标记到当前位置 */
- 'c', new_flag_clear, /* 清全部未读标记 */
+ 'c', new_flag_clearto, /* 清除未读标记到当前位置 */
+ 'f', new_flag_clear, /* 清全部未读标记 */
#ifdef INTERNET_EMAIL
'F', forward_post,
'U', forward_u_post,
@@ -2503,8 +2504,8 @@
'J', part_Save_post,
'I', Import_post,
'R', b_results,
- 'v', b_vote,
- 'V', b_vote_maintain,
+ 'V', b_vote,
+ 'M', b_vote_maintain,
// 'M', b_vote_maintain,
'W', b_notes_edit,
Ctrl('W'), b_notes_passwd,
@@ -2541,7 +2542,7 @@
't', thesis_mode, /* youzi 1997.7.8 */
'!', Q_Goodbye,
'S', s_msg,
- 'f', t_friends,
+ 'o', t_friends,
'\0', NULL
};
diff -r -u bbssrc.orig/src/bbsd.c bbssrc/src/bbsd.c
--- bbssrc.orig/src/bbsd.c Sun Sep 9 10:48:39 2001
+++ bbssrc/src/bbsd.c Fri Dec 14 22:24:52 2001
@@ -33,7 +33,9 @@
#define NOLOGIN BBSHOME"/NOLOGIN"
#ifdef HAVE_CHKLOAD
-#define BANNER "\r\n欢迎光临;33m"BBSNAME"m[ ;32m"BBSHOST"m ] ;33m"BBSVERSION"m 请稍候...\r\n;36m最近 3m(1,10,15)6m 分钟平均负荷为3m %s 6m(上限 = %d) [%s]0m\r\n"
+//#define BANNER "\r\n欢迎光临 35# BBS Station ;33m"BBSNAME"m[ ;32m"BBSHOST"m ] ;33m"BBSVERSION"m 请稍候...\r\n;36m最近 3m(1,10,15)6m 分钟平均负荷为3m %s 6m(上限 = %d) [%s]0m\r\n"
+#define BANNER "\r\n欢迎光临 ;31m35# BBS Stationm [ ;33m"BBSNAME"m ] ( ;4;32m"BBSHOST"m )\r\n;36m最近 3m(1,10,15)6m 分钟平均负荷为3m %s 6m(上限 = %d) [%s]0m\r\n"
+//#define BANNER "\r\n欢迎光临;33m"BBSNAME"m[ ;32m"BBSHOST"m ] ;33m"BBSVERSION"m 请稍候...\r\n;36m最近 3m(1,10,15)6m 分钟平均负荷为3m %s 6m(上限 = %d) [%s]0m\r\n"
#else
#define BANNER "\r\n欢迎光临;33m"BBSNAME"m[ ;32m"BBSHOST"m] ;33m"BBSVERSION"m [bbsd ready]\r\n"
#endif
@@ -369,7 +371,7 @@
xsin.sin_family = AF_INET;
if (argc > 1) csock = atoi(argv[1]) ;
- if (csock <= 0) csock = 12345;
+ if (csock <= 0) csock = 23;
msock = bind_port(csock);
if (msock < 0) exit(1);
nfds = msock + 1;
@@ -439,8 +441,8 @@
{
FILE *fp;
char buf[256];
-#define MYBANNER "\r\nFB2000 [bbsd NOLOGIN] 系统处于;33m暂停登陆m状态\r\n;32m[本站程序维护可以删除 \'6m~bbs/NOLOGIN2m\' 后解除该状态]m\r\n\r\n======关于系统进入暂停登陆状态的【公告】======\r\n"
-
+#define MYBANNER "\r\n系统维护中...\r\n\r\n======关于系统进入暂停登陆状态的【公告】======\r\n"
+//#define MYBANNER "\r\nFB2000 [bbsd NOLOGIN] 系统处于;33m暂停登陆m状态\r\n;32m[本站程序维护可以删除 \'6m~bbs/NOLOGIN2m\' 后解除该状态]m\r\n\r\n======关于系统进入暂停登陆状态的【公告】======\r\n"
if ((fp = fopen(NOLOGIN, "r")) != NULL) {
(void) write(csock, MYBANNER, strlen(MYBANNER));
while (fgets(buf, 255, fp) != 0) {
diff -r -u bbssrc.orig/src/bbsnet.c bbssrc/src/bbsnet.c
--- bbssrc.orig/src/bbsnet.c Sat Apr 21 15:46:25 2001
+++ bbssrc/src/bbsnet.c Fri Dec 14 22:27:02 2001
@@ -73,7 +73,7 @@
show_all() {
int n;
printf("HJm");
- printf( "┏━━━━━━━━━━━━━━━;35m 穿 梭 银 河 m━━━━━━━━━━━━━━━┓\r\n");
+ printf( "┏━━━━━━━━━━━━━━━;35m 时 空 穿 梭 m━━━━━━━━━━━━━━━┓\r\n");
for(n= 1; n< 22; n++){
printf("┃ ┃\r\n");
}
diff -r -u bbssrc.orig/src/bcache.c bbssrc/src/bcache.c
--- bbssrc.orig/src/bcache.c Sat Apr 21 15:46:25 2001
+++ bbssrc/src/bcache.c Sun Dec 16 17:22:05 2001
@@ -519,7 +519,7 @@
if ( uentp->invisible ) strcpy(col, "[隐];36m");
else if ( uentp->mode == POSTING || uentp->mode == MARKET )
strcpy(col,";32m");
- else if ( uentp->mode == FIVE || uentp->mode == BBSNET )
+ else if ( uentp->mode == FIVE || uentp->mode == BBSNET ||uentp->mode== QKMJ)
strcpy(col,";33m");
else
strcpy(col,"m");
diff -r -u bbssrc.orig/src/bm.c bbssrc/src/bm.c
--- bbssrc.orig/src/bm.c Sat Apr 21 15:46:25 2001
+++ bbssrc/src/bm.c Wed Dec 19 00:32:51 2001
@@ -29,32 +29,41 @@
}
nowtime=time(0);
getdatestring(nowtime,NA);
- getdata(4,0,"输入封禁时间[缺省为 1 天, 0 为放弃]: ",buf2,4,DOECHO,YEA);
- if(buf2[0]=='\0') day =1;
- else day = atoi(buf2);
+windtear01:
+ getdata(4,0,"输入封禁时间[最多封禁 14 天, 缺省为 3 天, 0 为放弃]: ",buf2,4,DOECHO,YEA);
+ if(buf2[0]=='\0') day =3;
+ else //if(atoi(buf2)>14)
+ day = atoi(buf2);
if(day <= 0) return -1;
+ if(day > 14) goto windtear01;
nowtime += day * 86400;
getdatestring(nowtime,NA);
sprintf(strtosave,"%-12s %-40s %14.14s解封", uident,buf,datestring);
if(!ischange){
sprintf(msg,
- "\n %s 网友: \n\n"
- "\t我很抱歉地告诉您,您已经被取消在 %s 板的『%s』权力。\n\n"
+ "\n\t%s 由于 %s \n"
+ "\t被取消在 %s 板的『%s』权利 [%d] 天",
+ uident, buf, currboard, info_type==1?"发文":"进入", day);
+/* "\n %s 网友: \n\n"
+ "\t我很抱歉地告诉您,您已经被取消在 %s 板的『%s』权利。\n\n"
"\t您被封禁的原因是: [%s]\n\n"
"\t因为您的行为,决定停止您在本板的权利 [%d] 天\n\n"
"\t请您于 [%14.14s] 向 %s 发信申请解封。\n\n",
uident, currboard, info_type==1?"发文":"进入",buf, day,
datestring, currentuser.userid);
- } else {
+*/ } else {
sprintf(msg,
- "\n %s 网友: \n\n"
- "\t关于您在 %s 板被取消『%s』权力问题,现变更如下:\n\n"
+ "\n\t关于对 %s 处理的变更: \n"
+ "\t从现在开始,停止『%s』权利时间改为 [%d] 天\n\n",
+ uident, info_type==1?"发文":"进入", day);
+/* "\n %s 网友: \n\n"
+ "\t关于您在 %s 板被取消『%s』权利问题,现变更如下:\n\n"
"\t封禁的原因: [%s]\n\n"
"\t从现在开始,停止该权利时间: [%d] 天\n\n"
"\t请您于 [%14.14s] 向 %s 发信申请解封。\n\n",
uident, currboard, info_type==1?"发文":"进入",buf, day,
datestring, currentuser.userid);
- }
+*/ }
if(info_type == 2) setbfile( genbuf, currboard,"board.deny" );
else setbfile( genbuf, currboard,"deny_users" );
if (ischange) del_from_file(genbuf, uident);
@@ -176,9 +185,10 @@
sprintf(repbuf, "恢复%s在%s板的%s权限",
uident,currboard, info_type==1?"发文":"进入");
securityreport(repbuf);
- sprintf(msgbuf, "\n %s 网友:\n\n"
- "\t因封禁时间已过,现恢复您在 [%s] 板的『%s』权力。\n\n",
- uident, currboard,info_type==1?"发表文章":"进入本板");
+ /*sprintf(msgbuf, "\n %s 网友:\n\n"
+ "\t因封禁时间已过,现恢复您在 [%s] 板的『%s』权利。\n\n",
+ uident, currboard,info_type==1?"发表文章":"进入本板");*/
+ sprintf(msgbuf, "\n\t因封禁时间已过,现恢复 %s 在 [%s] 板的『%s』权利。\n\n",uident, currboard,info_type==1?"发表文章":"进入本板");
autoreport(repbuf,msgbuf,YEA,uident);
}
}
diff -r -u bbssrc.orig/src/boards.c bbssrc/src/boards.c
--- bbssrc.orig/src/boards.c Sat Apr 21 16:15:46 2001
+++ bbssrc/src/boards.c Sat Dec 15 03:40:30 2001
@@ -432,7 +432,7 @@
}
int
-choose_board(newflag)
+choose_board(newflag) //
int newflag;
{
static int num;
@@ -502,20 +502,22 @@
else
num -= BBS_PAGESIZE;
break;
+ case 'c':
+ case 'f':
case 'C':
- case 'c':
+ case 'F':
if (newflag == 1)
newflag = 0;
else
newflag = 1;
show_brdlist(page, 1, newflag);
break;
- case 'L':
+/* case 'L': // 原来的 看信 改成看消息
m_read();
page = -1;
- break;
- case 'M':
- m_new();
+ break;*/
+ case 'v'://看新信 M 改成 v 看信
+ m_read();
page = -1;
break;
case 'u':
@@ -523,7 +525,8 @@
t_query();
page = -1 ;
break;
- case 'H': {
+ case KEY_TAB:
+ case 'H':{//增加 tab
show_help("0Announce/bbslist/day");
page = -1;
break;
@@ -550,7 +553,8 @@
break;
}
*/
- case 'l':
+ case 'l':
+ case 'L':
show_allmsgs();
page = -1;
break;
@@ -696,7 +700,8 @@
s_msg();
page = -1;
break;
- case 'f': /* show friends ... youzi */
+ case 'o': /* show friends ... youzi */
+ case 'O':
if (!HAS_PERM(PERM_BASIC))
break;
t_friends();
diff -r -u bbssrc.orig/src/comm_lists.c bbssrc/src/comm_lists.c
--- bbssrc.orig/src/comm_lists.c Sun Sep 9 09:32:43 2001
+++ bbssrc/src/comm_lists.c Mon Dec 17 21:58:10 2001
@@ -52,7 +52,7 @@
int setcalltime(),fade_out();
int show_allmsgs(), x_lockscreen(), x_showuser();
int Conditions(), x_cloak(), t_users(), x_info(), x_fillform(), x_vote();
-int x_results(), ent_bnet(), a_edits(), x_edits();
+int x_results(), ent_bnet(), a_edits(), x_edits(), ent_mj();
int shownotepad(), x_userdefine(), x_csh();
int m_new(), m_read(), m_send(), g_send();
int ov_send(), s_msg(), mailall(), offline();
@@ -159,6 +159,7 @@
{"Vote", x_vote, 0},
{"VoteResult", x_results, 0},
{"ExecBBSNet", ent_bnet, 0},
+ {"ExecQKMJ", ent_mj, 0},
{"ShowWelcome", Welcome, 0},
{"AllUsers", Users, 0},
{"AddPCorpus",AddPCorpus,0},
diff -r -u bbssrc.orig/src/delete.c bbssrc/src/delete.c
--- bbssrc.orig/src/delete.c Sun Sep 9 09:49:28 2001
+++ bbssrc/src/delete.c Fri Dec 14 22:57:47 2001
@@ -91,7 +91,7 @@
else {
prints(";5;31m警告0;1;31m: 自杀後, 您将无法再用此帐号进入本站!!");
move(3,0);
- prints(";32m但帐号要在 30 天後才会删除。好难过喔 :( .....m");
+ prints(";32m但帐号要在 3 天後才会删除。好难过喔 :( .....m");
}
move(5,0);
i = 0;
@@ -173,12 +173,12 @@
getuinfo(fn);
fclose(fn);
if(mode) Postfile(filename,"syssecurity","归隐通知(立即生效)...",2);
- else Postfile(filename, "syssecurity", "登记自杀通知(30天後生效)...", 2);
+ else Postfile(filename, "syssecurity", "登记自杀通知(3天後生效)...", 2);
unlink(filename);
}
if ((fn = fopen(filename, "w")) != NULL) {
fprintf(fn, "大家好,\n\n");
- fprintf(fn,"我是 %s (%s)。我己经决定在 30 天后离开这里了。\n\n",
+ fprintf(fn,"我是 %s (%s)。我己经决定在 3 天后离开这里了。\n\n",
currentuser.userid, currentuser.username);
getdatestring(currentuser.firstlogin,NA);
fprintf(fn, "自 %14.14s 至今,我已经来此 %d 次了,在这总计 %d 分钟的网络生命中,\n",
diff -r -u bbssrc.orig/src/io.c bbssrc/src/io.c
--- bbssrc.orig/src/io.c Sat Apr 21 15:46:25 2001
+++ bbssrc/src/io.c Mon Dec 17 22:38:04 2001
@@ -539,12 +539,28 @@
if(convcode) a_len = read2(0, &a, 1);
else
#endif
- a_len = read(0, &a, 1);
+/* a_len = read(0, &a, 1);
if(a_len==0||(a_len < 0 && errno != EINTR))
abort_bbs();
ch = (int) a;
} else
ch = igetch();
+*/// start
+ a_len = read(0, &a, 1);
+ if( a_len <= 0 ){
+ if( !a_len ){
+ abort_bbs();
+ }else{
+ if( errno != EINTR ){
+ abort_bbs();
+ }
+ ch = EOF;
+ }
+ }else
+ ch = (int) a;
+ }else
+ ch = igetch();
+//end
if ((ch == Ctrl('Z')) && (RMSG == NA)) {
r_msg2();
return 0;
diff -r -u bbssrc.orig/src/list.c bbssrc/src/list.c
--- bbssrc.orig/src/list.c Sat Sep 8 23:19:02 2001
+++ bbssrc/src/list.c Sun Dec 16 17:19:19 2001
@@ -292,9 +292,9 @@
uentp->userid,(real_user_names)?uentp->realname:uentp->username,
((uentp->from[22] != 'H')||hisfriend(uentp)||HAS_PERM(PERM_SYSOP))?
uentp->from:BBSIP_DOT,
- (uentp->mode == FIVE || uentp->mode == BBSNET)?'@':pagerchar(hisfriend(uentp),uentp->pager),msgchar(uentp),
+ (uentp->mode == FIVE || uentp->mode == BBSNET||uentp->mode==QKMJ)?'@':pagerchar(hisfriend(uentp),uentp->pager),msgchar(uentp),
(uentp->invisible == YEA)?'@':' ',
- (uentp->invisible == YEA)?"6m":(uentp->mode==POSTING||uentp->mode==MARKET)?"2m":((uentp->mode==FIVE||uentp->mode==BBSNET)?"3m":""),
+ (uentp->invisible == YEA)?"6m":(uentp->mode==POSTING||uentp->mode==MARKET)?"2m":((uentp->mode==FIVE||uentp->mode==BBSNET||uentp->mode==QKMJ)?"3m":""),
ModeType(uentp->mode),
#ifdef SHOW_IDLE_TIME
idle_str(uentp));
diff -r -u bbssrc.orig/src/main.c bbssrc/src/main.c
--- bbssrc.orig/src/main.c Sun Sep 9 00:03:21 2001
+++ bbssrc/src/main.c Fri Dec 14 23:06:12 2001
@@ -541,9 +541,9 @@
write(vfp,&max_log,(size_t)sizeof(max_log));
flock(vfp, LOCK_UN);
close(vfp);
- sprintf(genbuf,";32m从 [6m%4d年%2d月%2d日2m] 起, 最高人数记录: [6m%d2m] 累计访问人次: [6m%u2m]m\n",
+/* sprintf(genbuf,";32m从 [6m%4d年%2d月%2d日2m] 起, 最高人数记录: [6m%d2m] 累计访问人次: [6m%u2m]m\n",
max_log.year,max_log.month,max_log.day,max_log.logins,max_log.visit);
- prints(genbuf);
+ prints(genbuf);*/
}
void
@@ -574,7 +574,8 @@
if (fill_shmfile(1, "etc/issue", "ISSUE_SHMKEY")) {
show_issue(); /* is anibanner ready, remark this and put * \n\n */
}
- prints(";35m欢迎光临;40;33m【 %s 】 m[0;1;33;41m Add '.' after YourID to login for BIG5 m]\n0;1;32m本站可注册帐号数: [;36m%d0;1;32m] m", BoardName, MAXUSERS);
+// prints(";35m欢迎光临;40;33m【 %s 】 m[0;1;33;41m Add '.' after YourID to login for BIG5 m]\n0;1;32m本站可注册帐号数: [;36m%d0;1;32m] m", BoardName, MAXUSERS);
+ prints(";35m欢迎光临;40;33m【 %s 】 m[0;1;33m Add '.' after YourID to login for 0;1;33;41mBIG5m ]\n0;1;32m本站可注册帐号数: [;36m%d0;1;32m] m", BoardName, MAXUSERS);
resolve_utmp();
if (utmpshm->usersum == 0)
utmpshm->usersum = allusers();
@@ -757,7 +758,7 @@
now = time(0);
if ((now - lastnote) >= maxsec) {
move(t_lines - 1, 0);
- prints("对不起,系统自动发信,请稍候.....");
+ prints("系统自动发信中,请稍候.....");
refresh();
check = fopen("etc/checknotepad", "w");
lastnote = now - (now % maxsec);
@@ -1257,7 +1258,7 @@
{
char middoc[30];
if (chkmail())
- strcpy(middoc, strstr(title,"讨论区列表")?"[您有信件,按 M 看新信]":"[您有信件]");
+ strcpy(middoc, strstr(title,"讨论区列表")?"[您有信件,按 v 看信]":"[您有信件]");
else if (mailXX == 1)
strcpy(middoc, "[信件过量,请整理信件!]");
else
@@ -1317,7 +1318,7 @@
}
break;
default:
- mail_file(fname, currentuser.userid, "不正常断线所保留的部份...");
+ mail_file(fname, currentuser.userid, "不正常断线所保留的部分...");
unlink(fname);
break;
}
diff -r -u bbssrc.orig/src/maintain.c bbssrc/src/maintain.c
--- bbssrc.orig/src/maintain.c Sat Apr 21 15:46:25 2001
+++ bbssrc/src/maintain.c Sat Dec 15 23:44:41 2001
@@ -72,7 +72,7 @@
savemode = uinfo.mode;
report(title);
- sprintf(fname,"tmp/%s.%s.%05d",BBSID,currentuser.userid,uinfo.pid);
+ sprintf(fname,"tmp/%s.%s.%05d","deliver",currentuser.userid,uinfo.pid);
if((se=fopen(fname,"w"))!=NULL)
{
fprintf(se,"%s",str);
diff -r -u bbssrc.orig/src/modetype.c bbssrc/src/modetype.c
--- bbssrc.orig/src/modetype.c Sun Sep 9 10:49:05 2001
+++ bbssrc/src/modetype.c Sun Dec 16 17:10:18 2001
@@ -30,15 +30,15 @@
case IDLE:
return "";
case NEW:
- return "新站友注册";
+ return "新手上路";
case LOGIN:
return "进入本站";
case DIGEST:
- return "浏览精华区";
+ return "吸取精华";
case MMENU:
- return "转换阵地中";
+ return "转换阵地";
case ADMIN:
- return "管理者选单";
+ return "管理选单";
case SELECT:
return "选择讨论区";
case READBRD:
@@ -58,21 +58,21 @@
case TMENU:
return "聊天选单";
case LUSERS:
- return "东张西望:)";
+ return "环顾四方";
case FRIEND:
- return "寻找好朋友";
+ return "寻找好友";
case MONITOR:
return "探视民情";
case QUERY:
- return "查询网友";
+ return "知己知彼";
case TALK:
return "聊天";
case PAGE:
return "呼叫";
case CHAT1:
- return "国际会议厅";
+ return "国际会议";
case CHAT2:
- return "快意聊天室";
+ return "自由论坛";
case IRCCHAT:
return "会谈IRC";
case LAUSERS:
@@ -82,11 +82,13 @@
case VOTING:
return "投票中...";
case BBSNET:
- return "BBSNET";
+ return "时空穿梭";
+ case QKMJ:
+ return "修建长城";
case EDITWELC:
return "编辑Welc";
case EDITUFILE:
- return "编辑个人档";
+ return "自我包装";
case EDITSFILE:
return "编修系统档";
case ZAP:
@@ -176,7 +178,7 @@
case LOOKLOG:
return "登录查询";
case WWW:
- return "WWW浏览";
+ return "悠悠万维";
default:
return "去了那里!?";
}
diff -r -u bbssrc.orig/src/read.c bbssrc/src/read.c
--- bbssrc.orig/src/read.c Sat Sep 8 23:16:52 2001
+++ bbssrc/src/read.c Sat Dec 15 04:35:07 2001
@@ -1,3 +1,23 @@
+/* ctrl o
+int add_author_friend();
+//
+int
+add_author_friend(ent,fileinfo,direct)
+int ent ;
+struct fileheader *fileinfo ;
+char *direct ;
+{
+ if(!strcmp(fileinfo->owner,"Anonymous")||!strcmp(fileinfo->owner,"guest")||!strcmp(fileinfo->owner,"deliver")||!strcmp(fileinfo->owner,"35net.BBS"))
+ return DONOTHING;
+ else
+ {
+ clear();
+ addtooverride(fileinfo->owner);
+ }
+ return FULLUPDATE;
+}
+*/
+
/*
Pirate Bulletin Board System
Copyright (C) 1990, Edward Luke, lush@Athena.EE.MsState.EDU
@@ -347,11 +367,16 @@
case Ctrl('L'):
redoscr();
break;
- case 'M':
- savemode = uinfo.mode;
- m_new();
+ case 'v':
+ if(uinfo.mode == RMAIL) return DONOTHING;
+ savemode = uinfo.mode;
+ m_read();
+ modify_user_mode(savemode);
+ return MODECHANGED;
+/* savemode = uinfo.mode;
+ m_read();//m_new();
modify_user_mode(savemode);
- return FULLUPDATE;
+ return FULLUPDATE;*/
case 'u':
savemode = uinfo.mode;
modify_user_mode(QUERY);
@@ -361,13 +386,17 @@
case 'H':
show_help("0Announce/bbslist/day");
return FULLUPDATE;
- case 'O':
- if (!strcmp("guest", currentuser.userid))
+ case Ctrl('O'):
+/* clear();
+ add_author_friend(0,fileinfo,'\0');
+ return FULLUPDATE;
+*/
+ if (!strcmp("guest", currentuser.userid)||!strcmp("Anonymous", currentuser.userid)||!strcmp("deliver", currentuser.userid)||!strcmp("35net.BBS", currentuser.userid))
break;
- move(23, 0);
+/* move(23, 0);
if (askyn("你想添加网友到好友名单吗", NA, NA) == NA)
return PARTUPDATE;
- friend_add();
+*/ friend_add();
return FULLUPDATE;
case 'k':
case KEY_UP:
@@ -380,14 +409,15 @@
return PARTUPDATE;
break;
case 'l': /* ppfoong */
+ case 'L':
show_allmsgs();
return FULLUPDATE;
- case 'L': //chenhao 解决在文章列表时看信的问题
+/* case 'L': //chenhao 解决在文章列表时看信的问题
if(uinfo.mode == RMAIL) return DONOTHING;
savemode = uinfo.mode;
m_read();
modify_user_mode(savemode);
- return MODECHANGED;
+ return MODECHANGED;*/
case 'N':
case Ctrl('F'):
case KEY_PGDN:
@@ -439,7 +469,8 @@
s_msg();
return FULLUPDATE;
break;
- case 'f': /* youzi */
+ case 'o': /* youzi */
+ case 'O':
if (!HAS_PERM(PERM_BASIC))
break;
t_friends();
diff -r -u bbssrc.orig/src/register.c bbssrc/src/register.c
--- bbssrc.orig/src/register.c Sat Apr 21 15:46:25 2001
+++ bbssrc/src/register.c Sat Dec 15 05:06:19 2001
@@ -78,17 +78,17 @@
|| strcmp(urec->userid, "guest") == 0)
return 999;
value = (time(0) - urec->lastlogin) / 60;
- /* new user should register in 30 mins */
+ /* new user should register in 60 mins*/
if (strcmp(urec->userid, "new") == 0) {
- return (30 - value) * 60;
+ return (60 - value) * 60;
}
- if (urec->numlogins <= 3)
- return (15 * 1440 - value) / 1440;
+ if (urec->numlogins <= 1)
+ return (30 * 1440 - value) / 1440;
if (!(urec->userlevel & PERM_LOGINOK))
- return (30 * 1440 - value) / 1440;
+ return (3 * 1440 - value) / 1440;
if (urec->stay > 1000000)
- return (365 * 1440 - value) / 1440;
- return (120 * 1440 - value) / 1440;
+ return (555 * 1440 - value) / 1440;
+ return (365 * 1440 - value) / 1440;
}
int
@@ -111,7 +111,7 @@
write(fd, datestring, 29);
close(fd);
log_usies("CLEAN", "dated users.");
- prints("寻找新帐号中, 请稍待片刻...\n");
+ prints("寻找新帐号中, 请稍待...\n");
memset(&zerorec, 0, sizeof(zerorec));
if ((fd = open(PASSFILE, O_RDWR | O_CREAT, 0600)) == -1)
return -1;
@@ -201,8 +201,8 @@
ansimore("etc/register", NA);
try = 0;
while (1) {
- if (++try >= 9) {
- prints("\n拜拜,按太多下 <Enter> 了...\n");
+ if (++try >= 4) {
+ prints("\n何必呢,何苦呢...\n");
refresh();
longjmp(byebye, -1);
}
@@ -216,9 +216,9 @@
} else if (strlen(passbuf) < 2) {
prints("帐号至少需有两个英文字母!\n");
} else if ((*passbuf == '\0') || bad_user_id(passbuf)) {
- prints("抱歉, 您不能使用这个字作为帐号。 请想过另外一个。\n");
+ prints("抱歉, 您不能使用这个字作为帐号。 请另想一个。\n");
} else if (dosearchuser(passbuf)) {
- prints("此帐号已经有人使用\n");
+ prints("早知如此,何必当初,晚了,一切都晚了...\n");
} else
break;
}
@@ -234,7 +234,7 @@
while (1) {
getdata(0, 0, "请设定您的密码 (Setup Password): ",
passbuf, PASSLEN, NOECHO, YEA);
- if (strlen(passbuf) < 4 || !strcmp(passbuf, newuser.userid)) {
+ if (strlen(passbuf) < 2 || !strcmp(passbuf, newuser.userid)) {
prints("密码太短或与使用者代号相同, 请重新输入\n");
continue;
}
@@ -502,7 +502,7 @@
}
#endif
#ifdef ALLOWGAME
- if (urec->numlogins == 1 && abs(time(0)-urec->firstlogin)<86400) {
+/* if (urec->numlogins == 1 && abs(time(0)-urec->firstlogin)<86400) {
prints("\n");
if(askyn("您是否是由本站网友介绍而来",NA,NA)==YEA){
char uident[STRLEN];
@@ -526,6 +526,7 @@
}
pressanykey();
}
+*/
#endif
#ifdef PASSAFTERTHREEDAYS
if (urec->lastlogin - urec->firstlogin < 3 * 86400) {
diff -r -u bbssrc.orig/src/sendmsg.c bbssrc/src/sendmsg.c
--- bbssrc.orig/src/sendmsg.c Sat Apr 21 15:46:25 2001
+++ bbssrc/src/sendmsg.c Mon Dec 17 22:04:03 2001
@@ -69,7 +69,14 @@
msgchar(uin)
struct user_info *uin;
{
- if(uin->mode==FIVE||uin->mode==BBSNET) return '@';
+ if(uin->mode==FIVE||uin->mode==BBSNET||uin->mode==QKMJ
+ ||uin->mode==M_BLACKJACK||uin->mode==M_XAXB||uin->mode==M_DICE
+ ||uin->mode==M_GP||uin->mode==M_NINE||uin->mode==M_BINGO
+ ||uin->mode==PAGE_FIVE||uin->mode==CHICK||uin->mode==MARY
+ ||uin->mode==WWW||uin->mode==GAME||uin->mode==HYTELNET
+ ||uin->mode==DOWNLINE||uin->mode==TETRIS||uin->mode==WINMINE
+ ||uin->mode==WINMINE2||uin->mode==TT||uin->mode==CHICKEN
+ ||uin->mode==MARKET||uin->mode == LOCKSCREEN) return '@';
if (isreject(uin))
return '*';
if ((uin->pager & ALLMSG_PAGER))
@@ -174,10 +181,18 @@
clrtoeol();
return -1;
}
- if (uin->mode == IRCCHAT || uin->mode == BBSNET
+ if(uin->mode==FIVE||uin->mode==BBSNET||uin->mode==QKMJ
+ ||uin->mode==M_BLACKJACK||uin->mode==M_XAXB||uin->mode==M_DICE
+ ||uin->mode==M_GP||uin->mode==M_NINE||uin->mode==M_BINGO
+ ||uin->mode==PAGE_FIVE||uin->mode==CHICK||uin->mode==MARY
+ ||uin->mode==WWW||uin->mode==GAME||uin->mode==HYTELNET
+ ||uin->mode==DOWNLINE||uin->mode==TETRIS||uin->mode==WINMINE
+ ||uin->mode==WINMINE2||uin->mode==TT||uin->mode==CHICKEN
+ ||uin->mode==MARKET||uin->mode == LOCKSCREEN|| !canmsg(uin))
+ /*if (uin->mode == IRCCHAT || uin->mode == BBSNET ||uin->mode==QKMJ
||uin->mode == LOCKSCREEN || uin->mode == HYTELNET
||uin->mode == GAME || uin->mode == PAGE
- ||uin->mode == FIVE || !canmsg(uin)) {
+ ||uin->mode == FIVE || !canmsg(uin))*/ {
move(2, 0);
prints("目前无法传送讯息给对方.\n");
pressreturn();
@@ -188,10 +203,18 @@
} else {
if (uentp->uid == usernum) return 0;
uin = uentp;
- if (uin->mode == IRCCHAT || uin->mode == BBSNET
+ if(uin->mode==FIVE||uin->mode==BBSNET||uin->mode==QKMJ
+ ||uin->mode==M_BLACKJACK||uin->mode==M_XAXB||uin->mode==M_DICE
+ ||uin->mode==M_GP||uin->mode==M_NINE||uin->mode==M_BINGO
+ ||uin->mode==PAGE_FIVE||uin->mode==CHICK||uin->mode==MARY
+ ||uin->mode==WWW||uin->mode==GAME||uin->mode==HYTELNET
+ ||uin->mode==DOWNLINE||uin->mode==TETRIS||uin->mode==WINMINE
+ ||uin->mode==WINMINE2||uin->mode==TT||uin->mode==CHICKEN
+ ||uin->mode==MARKET||uin->mode == LOCKSCREEN|| !canmsg(uin))
+ /*if (uin->mode == IRCCHAT || uin->mode == BBSNET ||uin->mode==QKMJ
|| uin->mode == HYTELNET || uin->mode == GAME
|| uin->mode == PAGE || uin->mode == LOCKSCREEN
- || uin->mode == FIVE || !canmsg(uin))
+ || uin->mode == FIVE || !canmsg(uin))*/
return 0;
strcpy(uident, uin->userid);
}
diff -r -u bbssrc.orig/src/station.c bbssrc/src/station.c
--- bbssrc.orig/src/station.c Sat Apr 21 15:46:25 2001
+++ bbssrc/src/station.c Thu Dec 13 00:41:18 2001
@@ -74,7 +74,7 @@
#define PERM_CHATROOM PERM_CHAT
char *CHATROOM_TOPIC[2] = {
- "这里是国际会悟中心",
+ "这里是35#之虚拟世界论坛",
"今天我们要讨论的是..."};
struct chatuser {
diff -r -u bbssrc.orig/src/talk.c bbssrc/src/talk.c
--- bbssrc.orig/src/talk.c Sat Sep 8 23:33:50 2001
+++ bbssrc/src/talk.c Sun Dec 16 17:26:04 2001
@@ -198,7 +198,7 @@
#else
if ( uent->mode == TALK )
diff = talkidletime; /* 聊天另有自己的 idle kick 机制 */
- else if (uent->mode == BBSNET )
+ else if (uent->mode == BBSNET ||uent->mode==QKMJ)
diff = 0 ;
else
diff = now - uent->idle_time;
@@ -504,7 +504,7 @@
return 0;
if ( uentp->mode == SYSINFO || uentp->mode == HYTELNET
|| uentp->mode == DICT || uentp->mode == ARCHIE
- || uentp->mode == IRCCHAT || uentp->mode == BBSNET
+ || uentp->mode == IRCCHAT || uentp->mode == BBSNET ||uentp->mode==QKMJ
|| uentp->mode == FIVE || uentp->mode == GAME
|| uentp->mode == LOGIN)
count++;
@@ -739,7 +739,7 @@
clrtoeol();
return -1;
}
- if (uin.mode == SYSINFO || uin.mode == IRCCHAT || uin.mode == BBSNET
+ if (uin.mode == SYSINFO || uin.mode == IRCCHAT || uin.mode == BBSNET ||uin.mode == QKMJ
|| uin.mode == DICT || uin.mode == ADMIN || uin.mode == ARCHIE
|| uin.mode == LOCKSCREEN || uin.mode == GAME
|| uin.mode == HYTELNET || uin.mode == PAGE
diff -r -u bbssrc.orig/src/userinfo.c bbssrc/src/userinfo.c
--- bbssrc.orig/src/userinfo.c Sat Apr 21 15:46:25 2001
+++ bbssrc/src/userinfo.c Fri Dec 14 23:26:20 2001
@@ -172,7 +172,7 @@
update_utmp();
}
while(1){ // 检查真实姓名
- changeIT = MUST || (strlen(u->realname) < 4)
+ changeIT = MUST || (strlen(u->realname) < 2)
||(strstr(u->realname, " "))||(strstr(u->realname, " "));
if(!changeIT) {
if(changed) { pos += 2; changed = 0; }
@@ -183,7 +183,7 @@
getdata(pos+1, 0, "> ", u->realname, NAMELEN, DOECHO, YEA);
}
while(1){ // 检查通讯地址
- changeIT = MUST||(strlen(u->address)<10)
+ changeIT = MUST||(strlen(u->address)<6)
||(strstr(u->address," "))||(strstr(u->address, " "));
if(!changeIT) {
if(changed) { pos += 2; changed = 0; }
@@ -323,7 +323,7 @@
sprintf(genbuf, "出生年 [%d]: ", u->birthyear + 1900);
getdata(i++, 0, genbuf, buf, 5, DOECHO, YEA);
- if ( buf[0] && atoi(buf) > 1920 && atoi(buf) < 1998)
+ if ( buf[0] && atoi(buf) > 1920 && atoi(buf) < 1990)
newinfo.birthyear = atoi(buf) - 1900;
sprintf(genbuf, "出生月 [%d]: ", u->birthmonth);
diff -r -u bbssrc.orig/src/xyz.c bbssrc/src/xyz.c
--- bbssrc.orig/src/xyz.c Sun Sep 9 09:59:47 2001
+++ bbssrc/src/xyz.c Sun Dec 16 17:06:24 2001
@@ -453,6 +453,13 @@
exec_cmd(BBSNET,NA,"bin/bbsnet",buf);
}
+int ent_mj() {
+ char buf[80];
+ sprintf(buf," %s",currentuser.userid);
+// clear();
+ exec_cmd(QKMJ,NA,"bin/qkmj",buf);
+}
+
int ent_winmine() {
char buf[80];
sprintf(buf,"%s %s",currentuser.userid,currentuser.lasthost);
diff -r -u bbssrc.orig/util/game/Makefile bbssrc/util/game/Makefile
--- bbssrc.orig/util/game/Makefile Sat Sep 8 21:54:47 2001
+++ bbssrc/util/game/Makefile Tue Dec 18 00:40:15 2001
@@ -18,7 +18,7 @@
winmine2: winmine2.c
$(CC) -o winmine2 winmine2.c
tetris: tetris.c
- $(CC) $(DEFINES)-o tetris tetris.c
+ $(CC) $(DEFINES) -o tetris tetris.c
game.so: $(OBJGAMES)
ld -s -L../../lib -lBBS -G $(OBJGAMES) -o game.so
diff -r -u bbssrc.orig/util/game/chicken.c bbssrc/util/game/chicken.c
--- bbssrc.orig/util/game/chicken.c Fri Sep 7 22:57:46 2001
+++ bbssrc/util/game/chicken.c Sat Dec 15 22:32:23 2001
@@ -4,7 +4,7 @@
-#include "bbs.h"
+#include "../../include/bbs.h"
#define DATA_FILE "chicken"
diff -r -u bbssrc.orig/util/game/game.c bbssrc/util/game/game.c
--- bbssrc.orig/util/game/game.c Fri Sep 7 22:57:46 2001
+++ bbssrc/util/game/game.c Tue Dec 18 01:00:59 2001
@@ -1,4 +1,4 @@
-#include "bbs.h"
+#include "../../include/bbs.h"
/* 黑杰克游戏 */
int
BlackJack()
@@ -41,7 +41,7 @@
cardlist[i]--; /* 洗牌 */
if (money >= 20000)
- CHEAT = 1;
+ CHEAT = 0;
if (CHEAT == 1) {
if (cardlist[1] <= 3) {
tmp2 = cardlist[50];
@@ -281,8 +281,9 @@
int money;
char genbuf[200], buf[80];
char ans[5] = "";
- /* 倍率 0 1 2 3 4 5 6 7 8 9 10 */
- float bet[11] = {0, 100, 50, 10, 3, 1.5, 1.2, 0.9, 0.8, 0.5, 0.1};
+ /* 倍率 0 1 2 3 4 5 6 7 8 9 10 */
+ //float bet[11] = {0, 100, 50, 10, 3, 1.5, 1.2, 0.9, 0.8, 0.5, 0.1};
+ float bet[11] = {0, 100, 50, 20, 10, 5, 2, 1, 0.5, 0.2, 0.1};
int a, b, c, count;
modify_user_mode(M_XAXB);
@@ -306,10 +307,11 @@
do {
getdata(5, 0, "请猜[q - 退出] → ", genbuf, 5, DOECHO, YEA);
if (!strcmp(genbuf, "Good")) {
- prints("[%s]", ans);
- sprintf(genbuf,"猜数字作弊, 下注 %d 元", money);
+ prints("[%s]", "聪明");//ans);
+ sprintf(genbuf,"猜数字作弊失败, 扣除下注 %d 元", money);
gamelog(genbuf);
- igetch();
+ //igetch();
+ return;
}
if ( genbuf[0] == 'q' || genbuf[0] == 'Q' ) {
sprintf(buf,"放弃猜测, 扣除压注金额 %d 元.", money);
diff -r -u bbssrc.orig/util/game/menu.c bbssrc/util/game/menu.c
--- bbssrc.orig/util/game/menu.c Mon Dec 18 12:38:02 2000
+++ bbssrc/util/game/menu.c Tue Dec 18 23:37:13 2001
@@ -3,11 +3,11 @@
/* 游戏、管理菜单 2000.12.18 */
/*******************************************************************/
-#include "bbs.h"
-#include "money.h"
+#include "../../include/bbs.h"
+#include "../../include/money.h"
#define PERM_MANAGE PERM_SYSOP
-
+#define THENUM 8
/*******************************************************************/
/* 游戏菜单 games 游戏选单 */
/*******************************************************************/
@@ -17,7 +17,7 @@
int i, num;
char buf[STRLEN],ans[4];
EXCHANGES iterms[GAME_NUM] = {
- {"扫雷游戏,1},
+ {"扫雷游戏",1},
{"猜数字",1},
{"黑甲克",1},
{"西八拉",1},
@@ -45,13 +45,14 @@
if(uident[0]=='\0'|| getuser(uident)<=0){
prints("\n无输入,取消操作。\n");
} else {
- getdata(THENUM+8,0,"请输入欲增加的金钱数目(负数表示减少): ",
- buf,8,DOECHO,YEA);
+ getdata(THENUM+8,0,"请输入欲增加的金钱数目(负数表示减少): ",buf,8,DOECHO,YEA);
num = atoi(buf);
if(num!=0) {
incmoney(uident,num);
prints("\n操作已接受。\n");
- } else prints("\n无输入,取消操作。\n");
+ } else {
+ prints("\n无输入,取消操作。\n");
+ }
}
pressanykey();
break;
diff -r -u bbssrc.orig/util/game/money.c bbssrc/util/game/money.c
--- bbssrc.orig/util/game/money.c Sat Sep 8 22:53:18 2001
+++ bbssrc/util/game/money.c Wed Dec 19 01:00:38 2001
@@ -2,8 +2,8 @@
#include <string.h>
#include <stdlib.h>
-#include "bbs.h"
-#include "money.h"
+#include "../../include/bbs.h"
+#include "../../include/money.h"
int inGame(void)
{
@@ -61,10 +61,10 @@
"4;37m可转帐资金(2m%d7m 元)m",
(now - currentuser.firstlogin)/86400,
currentuser.stay/3600,currentuser.money-1000);
- if(currentuser.stay<=36000||now-currentuser.firstlogin<=2592000||maxnum<=0){
+ if(currentuser.stay<=36000||now-currentuser.firstlogin<=259200||maxnum<=0){
prints("\n\n目前市场规定: 参与2m友情转帐m的 ID 必须具备以下"
"全部条件:\n"
- " 1. 本帐号注册天数超过 30 天;\n"
+ " 1. 本帐号注册天数超过 3 天;\n"//30 to 3
" 2. 总上站时数超过 10 小时;\n"
" 3. 最终拥有存款超过 1000 元.\n");
prints("\n\n根据市场规定,您目前尚没有2m友情转帐m的资格。\n");
@@ -473,10 +473,13 @@
int check_money(int money)
{
int now_money = inmoney(0);
- if(inmoney(0) < money) {
+ if(now_money < money) {
move(22, 0);
clrtobot();
- prints("抱歉!您只有 %d 元赌金", money,now_money);
+ if(now_money<=0)
+ prints("没钱还想赌? 走开! 走开!");
+ else
+ prints("抱歉!您只有 %d 元赌金", now_money);//prints("抱歉!您只有 %d 元赌金", money,now_money);
pressanykey();
return 1;
}
diff -r -u bbssrc.orig/util/game/others.c bbssrc/util/game/others.c
--- bbssrc.orig/util/game/others.c Fri Sep 7 22:57:46 2001
+++ bbssrc/util/game/others.c Sat Dec 15 22:50:15 2001
@@ -1,7 +1,7 @@
/*本函数用于添加FB2000以外的功能,便于升级 jieer jb@xiao.com.cn 2001.05.01 */
-#include <bbs.h>
+#include "../../include/bbs.h"
#include <netdb.h>
#include <netinet/in.h>
#define BBS_PAGESIZE (t_lines - 4)
@@ -234,7 +234,7 @@
if(statbuf.st_size>1) {
ansimore(filebuf, YEA);
unlink (filebuf);
- } else {prints("\r\n程序出错,请报告到BBS_Dev板");pressanykey();}
+ } else {prints("\r\n程序出错,请报告到 sysop 板");pressanykey();}
}
int
timecmp(one,two)
@@ -356,7 +356,7 @@
} art[10000],artbuf;
clear();
- prints(" 珞珈山水BBS站文章全站搜索功能 ");
+ prints(" 虚拟世界BBS站文章全站搜索功能 ");
modify_user_mode( SAID );
if(k){move(3,0);prints("请输入要搜索的用户帐号:");move(3,24);
usercomplete(NULL,uident);
@@ -373,7 +373,7 @@
if(uident[0]=='\0') return;
}
clear();
- prints(" 珞珈山水BBS站文章全站搜索功能 ");
+ prints(" 虚拟世界BBS站文章全站搜索功能 ");
move(3,0);
prints("正在搜索%s %s 的所有文章,请稍侯...",k?"用户":"标题为",uident);
refresh();
@@ -431,7 +431,7 @@
}
}
clear();
- prints(" 珞珈山水BBS站文章全站搜索功能 ");
+ prints(" 虚拟世界BBS站文章全站搜索功能 ");
if( snum == 0 ) {
move(3,0);
prints(" 没有找到%s“%s”的文章 ",k?"网友":"标题含有",uident);
@@ -476,7 +476,7 @@
while( 1 )
{
move(0,0);prints(" 符合条件的全站文章列表 \n");
- move(1,0);prints(";44;37m 看文章[Enter,→] 离开[q,←] 如有问题请到BBSDev板报告BUG 珞珈山水站务组m");
+ move(1,0);prints(";44;37m 看文章[Enter,→] 离开[q,←] 如有问题请到 sysop 板报告BUG 虚拟世界站务组m");
move(2,0);prints(" 编 号 讨 论 区 发 表 日 期 文 章 标 题 ");
move(23,0);clrtoeol();prints("标题:%-44s 讨论区:%-20s",art[num-1].title,art[num-1].btitle);
if( num < cnum || num > cnum+BBS_PAGESIZE-1 || just == 1) {
diff -r -u bbssrc.orig/util/game/tetris.c bbssrc/util/game/tetris.c
--- bbssrc.orig/util/game/tetris.c Fri Sep 7 22:57:46 2001
+++ bbssrc/util/game/tetris.c Thu Dec 13 03:15:32 2001
@@ -1,6 +1,6 @@
// by zhch
// Last Modified by soff bitbbs.org on 12/10/2000 分数计算
-#include "bbs.h"
+#include "../../include/bbs.h"
#include <stdio.h>
#include <sys/time.h>
#include <sys/types.h>
@@ -449,7 +449,7 @@
int n;
win_loadrec();
clear();
- prints("4;37m -珞珈山水 TETRIS 排行榜- \r\nm");
+ prints("4;37m -虚拟世界 TETRIS 排行榜- \r\nm");
prints("1m No. ID 行数 分数 来自 m\n\r");
for(n=0;n<=19;n++)
{
diff -r -u bbssrc.orig/util/innbbsd/Makefile bbssrc/util/innbbsd/Makefile
--- bbssrc.orig/util/innbbsd/Makefile Sat Sep 8 21:54:46 2001
+++ bbssrc/util/innbbsd/Makefile Wed Dec 12 23:17:43 2001
@@ -7,10 +7,10 @@
VERSION = 0.50beta-5F
NCMVERSION = NoCeM_0.66
-ADMINUSER = SYSOP.bbs@tl.whu.edu.cn
+ADMINUSER = SYSOP.bbs@bbs.35net.dhs.org
BBSHOME = /home/bbs
-BBSHOST = tl.whu.edu.cn
-BBS_SRC = /home/bbs/bbssrc
+BBSHOST = bbs.35net.dhs.org
+BBS_SRC = /home/bbssrc
PERL = /usr/bin/perl
LANG = GB
@@ -150,7 +150,7 @@
bbsname:
rm -fr bbsname.bbs hisconvert
- echo 'LonelyWood' > bbsname.bbs
+ echo '35net.BBS' > bbsname.bbs
sed -e "s:@PERL@:$(PERL):" hisconvert.in > hisconvert
r_port.o: r_port.c
diff -r -u bbssrc.orig/util/local_utl/bbstop.c bbssrc/util/local_utl/bbstop.c
--- bbssrc.orig/util/local_utl/bbstop.c Sun Sep 9 10:22:17 2001
+++ bbssrc/util/local_utl/bbstop.c Sat Dec 15 15:32:16 2001
@@ -40,25 +40,25 @@
return ((time(0)-a->firstlogin)/86400)-((time(0)-b->firstlogin)/86400);
}
// Add by hightman
-int money_cmp(b, a)
+/*int money_cmp(b, a)
struct userec *a, *b;
{
return (b->firstlogin - a->firstlogin);
-}
+}*/
// Add end
//Add by jieer bbs.dqpi.edu.cn
-int nummedals_cmp(b, a)
+/*int nummedals_cmp(b, a)
struct userec *a, *b;
{
- return (a->nummedals - b-> nummedals);
-}
+ return (a->medals - b-> medals);
+}*/
//Add End
top_login( num )
{
int i, j, rows = (num + 1) / 2;
char buf1[ 80 ], buf2[ 80 ];
- printf("\n\n%s", "\
+ printf("%s", "\
;37m =========== ;36m 上站次数排行榜 7m ============ \n\n\
名次 代号 昵称 次数 名次 代号 昵称 次数 \n\
==== =============================== ==== ================================\n0m\
@@ -81,7 +81,7 @@
int i, j, rows = (num + 1) / 2;
char buf1[ 80 ], buf2[ 80 ];
- printf("\n\n%s", "\
+ printf("%s", "\
;37m =========== 6m 上站总时数排行榜 7m ============ \n\n\
名次 代号 昵称 总时数 名次 代号 昵称 总时数 \n\
==== ================================ ==== ================================\n0m\
@@ -104,7 +104,7 @@
int i, j, rows = (num + 1) / 2;
char buf1[ 80 ], buf2[ 80 ];
- printf("\n\n%s", "\
+ printf("%s", "\
;37m=========== 6m 讨论次数排行榜 7m ============ \n\n\
名次 代号 昵称 次数 名次 代号 昵称 次数 \n\
==== =============================== ===== ================================\n0m\
@@ -127,7 +127,7 @@
int i, j, rows = (num + 1) / 2;
char buf1[ 80 ], buf2[ 80 ];
- printf("\n\n%s", "\
+ printf("%s", "\
;37m=========== 6m总表现积分排行榜7m ============ \n\
2m 公式:上站次数/3+文章数+上站几小时7m\n\
名次 代号 昵称 积分 名次 代号 昵称 积分 \n\
@@ -154,7 +154,7 @@
while(1)
{if(allman[k].firstlogin<1000) k++; else break;}
- printf("\n\n%s", "\
+ printf("%s", "\
;37m=========== 6m注册天数排行榜7m ============ \n\
名次 代号 昵称 网龄 名次 代号 昵称 网龄 \n\
==== =============================== ==== =================================\n0m\
@@ -171,29 +171,29 @@
printf("%-39.39s%-39.39sm\n", buf1, buf2);
}
}
-top_nummedals(num)
+/*top_nummedals(num)
{
int i, j, rows =(num+1)/2;
char buf1[80], buf2[80];
time_t now;
now=time(0);
- printf("\n\n%s", "\
+ printf("%s", "\
;37m =========== 6m 奖章排行榜 7m ============
-\n\n\
+\n\
名次 代号 昵称 奖章数 名次 代号 昵称 奖章数 \n\
==== ================================= ===== ===============================0;0;1m\n");
for (i = 0; i < rows; i++) {
sprintf(buf1, "[%2d] %-10.10s %-12.12s %8d",
i+1, allman[ i ].userid, allman[ i ].username,
- allman[i].nummedals);
+ allman[i].medals);
j = i + rows;
sprintf(buf2, "[%2d] %-10.10s %-12.12s %6d",
j+1, allman[ j ].userid, allman[ j ].username,
- allman[j].nummedals);
+ allman[j].medals);
printf("%-39.39s%-39.39s0;1m\n", buf1, buf2);
}
-}
+}
//add by hightman
top_money( num )
@@ -204,22 +204,23 @@
while(1)
{if(allman[k].firstlogin<1000) k++; else break;}
- printf("\n\n%s", "\
+ printf("%s", "\
;37m=========== 6m 今日存款排行榜 7m ============
-\n\n\
+\n\
名次 代号 昵称 钱数 名次 代号 昵称 钱数 \n\
==== ================================= ===== ===============================0m\n");
for (i=k; i < 50+k; i++) {
- sprintf(buf1, "[%2d] %-10.10s %-12.12s %s",
+ sprintf(buf1, "[%2d] %-10.10s %-12.12s %6d",
i+1-k, allman[ i ].userid, allman[ i ].username,
- Ctime(allman[i].firstlogin));
+ allman[i].firstlogin);
+ //ctime(allman[i].firstlogin));
//sprintf(buf2, "[%2d] %-10.10s %-12.12s %6d",
// j+1-k, allman[ j ].userid, allman[ j ].username,
// allman[j].firstlogin);
printf("\t%sm\n", buf1);
}
-}
+}*/
//add end
@@ -288,18 +289,18 @@
top_age( no );
}
// Add by hightman
- if(mode==6||mode==0)
+/* if(mode==6||mode==0)
{
qsort(allman, i, sizeof( aman ), money_cmp);
top_money( no );
- }
+ }
// Add end
// Add by jieer bbs.dqpi.edu.cn
if(mode==7||mode==0)
{
qsort(allman, i, sizeof( aman ),nummedals_cmp);
top_nummedals( no );
- }
+ }*/
// Add End
printf("\n");
}
diff -r -u bbssrc.orig/util/local_utl/horoscope.c bbssrc/util/local_utl/horoscope.c
--- bbssrc.orig/util/local_utl/horoscope.c Fri Aug 25 22:20:33 2000
+++ bbssrc/util/local_utl/horoscope.c Sat Dec 15 14:23:52 2001
@@ -174,7 +174,7 @@
}
fprintf(fp, ";37m│\n");
}
- fprintf(fp," 7m0└───目前本站注册使用者生肖统计─── %s───┘\n"
+ fprintf(fp," 7m0└───目前本站注册使用者生肖统计── %s───┘\n"
" ;33m 鼠 牛 虎 兔 龙 蛇 马 羊 猴 鸡 狗 猪\n\n"
" 2m1 7m▇ 2m= 7m%-5d 6m▇ 2m= 7m男生 (%d) 1m▇ 2m= 7m女生 (%d)m\n"
,datestring,item,boy,girl);
diff -r -u bbssrc.orig/util/local_utl/newacct.c bbssrc/util/local_utl/newacct.c
--- bbssrc.orig/util/local_utl/newacct.c Fri Aug 25 22:20:33 2000
+++ bbssrc/util/local_utl/newacct.c Thu Dec 13 14:37:07 2001
@@ -110,7 +110,7 @@
}
fprintf(fp, ";36m│\n");
}
- fprintf(fp," 7m06m└———7m%s 本日新增人口统计6m————7m%s6m—┘\n"
+ fprintf(fp," 7m06m└—— 7m%s本日新增人口统计6m————7m%s6m—┘\n"
" ;36m 00 01 02 03 04 05 06 07 08 09 10 11 ;32m12 13 14 15 16 17 18 19 20 21 22 23\n\n"
" 3m1 1m■ 3m= 7m%-5d 3m本日申请新帐号人数:7m%-9dm\n"
,BBSNAME, datestring,item,total);
diff -r -u bbssrc.orig/util/local_utl/poststat.c bbssrc/util/local_utl/poststat.c
--- bbssrc.orig/util/local_utl/poststat.c Fri Aug 25 22:20:33 2000
+++ bbssrc/util/local_utl/poststat.c Sat Nov 24 16:17:22 2001
@@ -14,7 +14,7 @@
char *myfile[] = {"day", "week", "month", "year"};
int mycount[4] = {7, 4, 12};
int mytop[] = {10, 50, 100, 150};
-char *mytitle[] = {"日十", "周五十", "月一百", "年度百五"};
+char *mytitle[] = {"日十", "周五十", "月一百", "年度五百"};
#define HASHSIZE 1024
@@ -220,7 +220,7 @@
sprintf(curfile, "etc/posts/%s", p);
if (fp = fopen(curfile, "w"))
{
- fprintf(fp, " ;34m-----7m=====1m 本%s大热门话题 0m=====4m-----0m\n\n", mytitle[mytype]);
+ fprintf(fp, " ;34m-----7m=====1m 本%s大热门话题 0mm=====4m-----0m\n\n", mytitle[mytype]);
i = mytop[mytype];
if (j > i)
@@ -233,7 +233,7 @@
p = buf + 4;
fprintf(fp,
";37m第;31m%3d7m 名 7m信区 : 3m%-16s7m【2m%s7m】6m%4d 7m篇5m%+16s\n"
- " 7m标题 : ;44;37m%-60.60s0m\n"
+ " 7m标题 : ;37m%-60.60s\n"
,i + 1, top[i].board, p, top[i].number, top[i].author, top[i].title);
}
fclose(fp);
diff -r -u bbssrc.orig/util/mail2bbs/Makefile bbssrc/util/mail2bbs/Makefile
--- bbssrc.orig/util/mail2bbs/Makefile Sat Sep 8 21:54:47 2001
+++ bbssrc/util/mail2bbs/Makefile Wed Dec 12 23:17:43 2001
@@ -9,12 +9,12 @@
CFLAGS = -I../../include
INSTALLDIR = /home/bbs/bin
PERL = /usr/bin/perl
-DOMAIN = tl.whu.edu.cn
+DOMAIN = bbs.35net.dhs.org
all: mail2bbs fillperl install
mail2bbs: mail2bbs.c $(RECORD_OBJ)
- $(CC) $(CFLAGS) -DDOMAIN_NAME=\"'$(DOMAIN)'\" -DBBSNAME=\"'寂寞森林'\" \
+ $(CC) $(CFLAGS) -DDOMAIN_NAME=\"'$(DOMAIN)'\" -DBBSNAME=\"'35# 虚拟世界'\" \
-Xlinker -Bstatic -o mail2bbs mail2bbs.c qp_conv.c $(RECORD_OBJ)
install: mail2bbs
--
FROM 166.111.154.11