我装了你给我的hztty main.c, 把 i_stream 和 o_stream 对换一下.  和 修改了 bbsrf,
  问题:
  用bbg login 我的host 显示出h , 这是怎麽回事? 发信人: [email protected] (乘风), 信区: InstallBBS 标  题: Re: hzforbbs problem, bywind? 发信站: Shenzhen PTB New Tech. Center (Sat Nov  8 22:17:50 1997) 转信站: Nease!news.nease.net!clinux.ml.org!BlueBBS 出  处: pearl.szptt.net.cn
  【 在 [email protected] (快A) 的大作中提到: 】 : 我装了你给我的hztty main.c, 把 i_stream 和 o_stream 对换一下.  和 修改了 : bbsrf, : 问题: : 用bbg login 我的host 显示出h , 这是怎麽回事?         对于gb login,应该执行的是bbsrf.c中         execl(bbs_prog_path,"hzforbbs", hid, ttybuf, NULL);         这句话,这里你可能还留着原来文件中的h,因为这里第二个参数就是         IP地址。我想你看看这部分是不是有问题?
  --     白马带著她一步步的回到中原。白马已经老了,只能慢慢的走,但终是  能回到中原的。江南有杨柳、桃花,有燕子、金鱼……汉人中有的是英俊勇  武的少年,倜傥潇洒的少年……但这个美丽的姑娘就像古高昌国人那样固执  :「那都是很好很好的,可是我偏不喜欢。」 
  ※ 来源:.深圳水天一色 szntdc.ml.org.[FROM: sakura] 发信人: [email protected] (快A), 信区: InstallBBS 标  题: Re: hzforbbs problem, bywind? 发信站: 美国沙滩驿站(sandland) (Sun Nov  9 05:39:03 1997) 转信站: Nease!news.nease.net!clinux.ml.org!blast.dyn.ml.org!sandland
  ※ 引述《[email protected] (乘风)》之铭言: :         对于gb login,应该执行的是bbsrf.c中 :         execl(bbs_prog_path,"hzforbbs", hid, ttybuf, NULL); :         这句话,这里你可能还留著原来文件中的h,因为这里第二个参数就是 :         IP地址。我想你看看这部分是不是有问题?
  这部分没错啊, bbsrf.c:
  #ifdef SYSV       {         struct utsname name;
          if (uname(&name) >= 0)           strcpy(hid, name.nodename);         else           strcpy(hid, "localhost");       } #else         gethostname(hid, 16); #endif
        hid[16] = '\0'; /*      execl(bbs_prog_path, "bbs", hid, ttybuf, NULL); */         execl(bbs_prog_path,"hzbbs", hid, ttybuf, NULL);     }     else     { /*      execl(bbs_prog_path, "bbs", "unknown", "notty", NULL); */         execl(bbs_prog_path,"hzbbs", "unknow", "notty" ,NULL);     }
      printf("execl failed\n");     exit(-1);   }
    setuid(uid); 发信人: [email protected] (快A), 信区: InstallBBS 标  题: Re: hzforbbs problem, bywind? 发信站: 美国沙滩驿站(sandland) (Sun Nov  9 05:42:53 1997) 转信站: Nease!news.nease.net!clinux.ml.org!blast.dyn.ml.org!sandland
  ※ 引述《[email protected] (乘风)》之铭言: :         对于gb login,应该执行的是bbsrf.c中 :         execl(bbs_prog_path,"hzforbbs", hid, ttybuf, NULL); :         这句话,这里你可能还留著原来文件中的h,因为这里第二个参数就是 :         IP地址。我想你看看这部分是不是有问题?
  会不会 hztty2.0 main.c 部分出问题了? main.c 我只改了一下几点:
  (1) i_stream , o_stream 对换, 因为我是big5 bbs (2) hzforbbs 改成 hzbbs 会不会 shell[1] = "h" 这里出问题? shell[1] 作什麽的? 我的IP 显示就是这"h"
  ----------------
          o_stream = "big2gb";         i_stream = "gb2big";         utmp = 0;         debug = 0;         cmd = "bin/bbs";         shell[0]="bbs";         shell[1]="h";         shell[2]=argv[1];         shell[3]=argv[2];         shell[4]=(char *)0;
          cmdargv = shell; 发信人: [email protected] (乘风), 信区: InstallBBS 标  题: Re: hzforbbs problem, bywind? 发信站: Shenzhen PTB New Tech. Center (Sun Nov  9 17:10:40 1997) 转信站: Nease!news.nease.net!clinux.ml.org!BlueBBS 出  处: pearl.szptt.net.cn
  【 在 [email protected] (快A) 的大作中提到: 】 : ※ 引述《[email protected] (乘风)》之铭言: : :         对于gb login,应该执行的是bbsrf.c中 : :         execl(bbs_prog_path,"hzforbbs", hid, ttybuf, NULL); : :         这句话,这里你可能还留著原来文件中的h,因为这里第二个参数就是 : :         IP地址。我想你看看这部分是不是有问题? : 这部分没错啊, bbsrf.c: : #ifdef SYSV :       { :         struct utsname name; :         if (uname(&name) >= 0) :           strcpy(hid, name.nodename); :         else :           strcpy(hid, "localhost"); :       } : #else :         gethostname(hid, 16); : #endif :       hid[16] = '\0'; : /*      execl(bbs_prog_path, "bbs", hid, ttybuf, NULL); */           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                  这句话难道是你的MapleBBS里bbsrf.c原来的语句吗?                 假如这样,那bbs的login执行的进程是bbs ip tty                 而firebird的bbs的login执行是bbs h ip tty,和Maple是不                 一样的,你就要修改hzforbbs的main.c中main()里的参数了。
                  修改的方法就是把hzforbbs中main(argc,argv)中
          cmd = "bin/bbs";         shell[0]="bbs";         shell[1]="h";         ^^^^^^^^^^^^         shell[2]=argv[1];         shell[3]=argv[2];         shell[4]=(char *)0;
                  的shell[1]="h"这句话给delete掉了。
  :         execl(bbs_prog_path,"hzbbs", hid, ttybuf, NULL); :     } :     else :     { : /*      execl(bbs_prog_path, "bbs", "unknown", "notty", NULL); */ :         execl(bbs_prog_path,"hzbbs", "unknow", "notty" ,NULL); :     } :     printf("execl failed\n"); :     exit(-1); :   } :   setuid(uid);
 
  --     白马带著她一步步的回到中原。白马已经老了,只能慢慢的走,但终是  能回到中原的。江南有杨柳、桃花,有燕子、金鱼……汉人中有的是英俊勇  武的少年,倜傥潇洒的少年……但这个美丽的姑娘就像古高昌国人那样固执  :「那都是很好很好的,可是我偏不喜欢。」 
  ※ 来源:.深圳水天一色 szntdc.ml.org.[FROM: sakura] 发信人: [email protected] (乘风), 信区: InstallBBS 标  题: Re: hzforbbs problem, bywind? 发信站: Shenzhen PTB New Tech. Center (Sun Nov  9 17:12:45 1997) 转信站: Nease!news.nease.net!clinux.ml.org!BlueBBS 出  处: pearl.szptt.net.cn
  【 在 [email protected] (快A) 的大作中提到: 】 : ※ 引述《[email protected] (乘风)》之铭言: : :         对于gb login,应该执行的是bbsrf.c中 : :         execl(bbs_prog_path,"hzforbbs", hid, ttybuf, NULL); : :         这句话,这里你可能还留著原来文件中的h,因为这里第二个参数就是 : :         IP地址。我想你看看这部分是不是有问题? : 会不会 hztty2.0 main.c 部分出问题了? main.c 我只改了一下几点: : (1) i_stream , o_stream 对换, 因为我是big5 bbs : (2) hzforbbs 改成 hzbbs : 会不会 shell[1] = "h" 这里出问题? shell[1] 作什麽的? 我的IP 显示就是这"h"         看来问题就是出在这里了,因为我给你的程序是在firebird里用的,         因为firebird的bbs login以后要执行"bbs" "h" hid ttybuf这条命令的,         假如Maple执行的是bbs hid ttybuf,那你把shell[1]="h"干掉就应该好了。
  : ---------------- :         o_stream = "big2gb"; :         i_stream = "gb2big"; :         utmp = 0; :         debug = 0; :         cmd = "bin/bbs"; :         shell[0]="bbs"; :         shell[1]="h"; :         shell[2]=argv[1]; :         shell[3]=argv[2]; :         shell[4]=(char *)0; :         cmdargv = shell;
 
  --     白马带著她一步步的回到中原。白马已经老了,只能慢慢的走,但终是  能回到中原的。江南有杨柳、桃花,有燕子、金鱼……汉人中有的是英俊勇  武的少年,倜傥潇洒的少年……但这个美丽的姑娘就像古高昌国人那样固执  :「那都是很好很好的,可是我偏不喜欢。」 
  ※ 来源:.深圳水天一色 szntdc.ml.org.[FROM: sakura] 发信人: [email protected] (Lee Yen-Ming), 信区: InstallBBS 标  题: Re: hzforbbs problem, bywind? 发信站: Dept. of Civil Eng., NCKU, Taiwan. (Sun Nov  9 20:11:13 1997) 转信站: Nease!news.nease.net!clinux.ml.org!news.civil.ncku!sun.civil.ncku!leeym 出  处: sun.civil.ncku.edu.tw
  快A <[email protected]> 提到: > 会不会 hztty2.0 main.c 部分出问题了? main.c 我只改了一下几点: > (1) i_stream , o_stream 对换, 因为我是big5 bbs > (2) hzforbbs 改成 hzbbs > 会不会 shell[1] = "h" 这里出问题? shell[1] 作什!~的? 我的IP 显示就是这"h"
  那个 h 是给 firebird 的 bbs 用的, maple/sob 的不需要, 请把後面的参数往前递补.
  --   Yen-Ming Lee  88B, Civil Engineering, NCKU, Tainan, Taiwan. Phone:886-6-2757755-x51697  mailto:[email protected]    http://www.civil.ncku.edu.tw/~leeym 发信人: [email protected] (快A), 信区: InstallBBS 标  题: Re: hzforbbs problem, bywind? 发信站: 美国沙滩驿站(sandland) (Sun Nov  9 20:19:17 1997) 转信站: Nease!news.nease.net!clinux.ml.org!blast.dyn.ml.org!sandland
  ※ 引述《[email protected] (乘风)》之铭言:
  :         看来问题就是出在这里了,因为我给你的程序是在firebird里用的, :         因为firebird的bbs login以后要执行"bbs" "h" hid ttybuf这条命令的, :         假如Maple执行的是bbs hid ttybuf,那你把shell[1]="h"干掉就应该好了。
  对, 是这问题, 现在问题解决了. 谢谢. 我把3001 port 关了, bbg 很好用 发信人: hzlyp (liuyp), 信区: InstallBBS 标  题: Re: hzforbbs problem, bywind? 发信站: 广州网易 BBS (Fri Dec 12 19:15:44 1997), 转信
  【 在 [email protected] (快A) 的大作中提到: 】 : ※ 引述《[email protected] (乘风)》之铭言: : :         看来问题就是出在这里了,因为我给你的程序是在firebird里用的, : :         因为firebird的bbs login以后要执行"bbs" "h" hid ttybuf这条命令的, : :         假如Maple执行的是bbs hid ttybuf,那你把shell[1]="h"干掉就应该好了。 : 对, 是这问题, 现在问题解决了. 谢谢. 我把3001 port 关了, bbg 很好用 能不能系统地讲讲是怎么解决的,我把前面几篇文章连起来看还是看不出完全 的解决办法. 另外,我把bb5的shell设成 /usr/local/bin/hztty -I big2gb -O gb2gb /home/bbs/bin/bbsrf 登录时提示无此文件或目录,hztty和bbsrf的路径是对的,单独作为 shell也可以,最后只好另外做了一个big5bbs: #!/bin/sh exec /usr/sbin/hztty -I big2gb -O gb2big /home/bbs/bin/bbsrf 把它作为shell就可以了,只是IP问题没解决.
 
  -- ※ 来源:.广州网易 BBS bbs.nease.net.[FROM: ppp37.huizhou.g]
  | 
 
 
 |