看板Maple
标 题Re: 请问一下
发信站猪头纪公园 (Tue Sep 24 23:23:52 2002)
转信站Ptt!news.cs.nthu!PigHeadPark
※ 引述《[email protected] (我是飞天法宝)》之铭言:
: 小弟我现在想研究bbs的原始码
: 但是不知道怎麽去trace程式码,不知道从何下手的意思
: 请各位先进给个意见 ,有没有建议的顺序还是方向呢?
: 先谢谢大家了
Maple 3 系列, 先从 src/lib 看一看, src/maple 是主程式, 可以先从 bbsd.c
的 main() 下手跑到 tn_login(), 然後对照 src/lib 的 function, 接着看一看
visio.c 了解 VIrtual Screen Input Output, 接着可以看 cache.c 了解
board/user cache 的机制, 当然这些都要对照 src/include 看一看相关的
structure & flag, 使用者/看板的 flag 在 struct.h, 有关於权限的在
perm.h, 一些 global variable 可以瞄一下 global.h
知道大概 bbs 怎麽跑之後, 可以先看一下 xover.c, 这是 M3 相当重要的主体结构,
包含 talk/post/board/mail 都是利用 xover() 统一介面. 所以 :
post.c : 发表/阅读/管理文章.
mail.c : 使用者收/发 信件
board.c : 看板
gem.c : , 跟 post.c 理论上应该有点像 (太久没摸了 :P)
talk.c : 使用者名单/好友名单/跟聊天有关的
如果这些东西觉得有点难度, 也可以先从简单的下手 :
chat.c : 应该改成 .so 了 ? 这是聊天室的 client, server 请见 xchatd.c
acct.c : 管理看板 / 使用者的相关 function
menu.c : 就进来看的到的选单, 动态看板, 留言版
(movie 可以看 cache.c & util/camera.c & util/account.c)
more.c : show 档案用的, 比如进站画面, 进版画面, blah blah
edit.c : 编辑器, 也可以看一看 ve
其实还有很多细部没有提到, 不过这样 trace 完, 其他 src 下的东西我想也可
以慢慢消化了 :)
Maple 系列的 source code 可以在 ftp://php.twbbs.org/pub/bbs/Maple/Maple3
下载, 或者可以参考一下分支, 有几个比较重要的 :
WindTop : bbs.yzu.edu.tw 风之塔
itoc :
http://home.pchome.com.tw/soho/itoc/
SNOW : 这个好像停止发展了, 是 Maple3 的 web 介面
这些可以在上面的 ftp 找的到, trace 有问题也可以去相关的站台询问 :)
--
我的签名档只有十个字.
--
^..^ ★ < 猪 头 纪 公 园 - php.twbbs.org (140.114.81.201) >
-w @@ w-- < 249.c30.ethome.net.tw >