荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: jjk (@_@), 信区: InstallBBS
标  题: 全站改只读的一个方法
发信站: 荔园晨风BBS站 (Fri Mar 28 10:31:08 2003), 转信


原理描述: 跟强制关站的功能一样(这个最好不要用,因为只有登陆服务器才能改。
除非改完后管理员不退出。) 检测某个文件是否存在,如果存在就实现相应的功能。
这样

管理功能部分:
admintool.c:
加入../READONLY相关部分

        static char *e_file[] =
        {"../Welcome", "../Welcome2", "issue", "logout", "../vote/notes",
         "menu.ini", "../.badname", "../.bad_email", "../.bansite",
"../.blockmail",
        "autopost", "junkboards", "sysops", "expire.ctl", "whatdate",
"../NOLOGIN", "../innd/black.list.general", "bbsnet.ini", "bbsnetII.ini",
"../READONLY", NULL};
        static char *explain_file[] =
        {"特殊进站公布栏", "进站画面", "进站欢迎档", "离站画面"
                ,"公用备忘录", "menu.ini", "不可注册的 ID", "不可确认之E-Mail",
 "不可上站之位址"
                ,"拒收E-mail黑名单", "每日自动送信档", "不算POST数的板", "管理
者名单", "定时砍信设定档,
        "纪念日清单", "强制关站", "转信黑名单", "BBSNET", "BBSNET II","全站版面
只读", NULL};



一般用户:
在config.h中加入
/*
   所有版面改为只读, 实际的是把发文章的功能屏蔽掉而已
*/
#define READONLY "/home/bbs/READONLY"


在发文章的功能的相关函数中加入如下代码:
(telnet方式有 Ctrl+C, Ctrl+P, E, T, 另外还有web相应的功能, 找到对应的代码修改
即可)

#ifdef READONLY
{
        FILE *fp;
        if ((fp = fopen(READONLY, "r")) != NULL) {
                fclose(fp);
                return FULLUPDATE;
        }
}
#endif

--
    ~
  ' v '
 //   \\                  ←--这个是企鹅!
/(     )\
  ^ ~ ^

※ 修改:·jjk 於 Mar 28 10:31:16 修改本文·[FROM: 192.168.0.234]
※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.0.234]
--
※ 转载:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.0.234]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店