Mud 版 (精华区)

发信人: Baggio (傻瓜牌生活), 信区: Mud
标  题: valid_read中的euid问题                 xiha 
发信站: 哈工大紫丁香 (Tue May  4 20:33:17 1999), 转信

发信人: xiha (随风而去), 信区: Mud_Builder

标  题: valid_read中的euid问题

发信站: BBS 荔园晨风站 (Thu Apr 23 14:40:14 1998), 转信

发信人: Ranma (乱马~~青山依旧在,几度夕阳红), 信区: Mud_Builder 

标  题: Re: 再提valid_read中的euid问题 

发信站: BBS 水木清华站 (Sun Apr 19 06:58:12 1998) 

 

用这个,调通了的 

int valid_read(string file, mixed user, string func) 

{        

        string euid, status, path, dir; 

        int i; 

 

        if( !objectp(user) ) 

                error("TRUST_D->valid_read: Invalid argument type of user.\

n");  

 

 

 

        // Get the euid and status of the user. 

        euid = geteuid(user); 

//      write(sprintf("user:%O, euid:%s\n",user,euid)); 

 

        if (sscanf(file,"/adm/%*s" ) ) return 1; 

        if( !euid ) return 1; 

        status = get_status(user); 

 

        if( euid==ROOT_UID ) return 1; 

 

        if( sscanf(file, "/u/" + euid[0..0] + "/" + euid + "/%*s") ) 

                return 1; 

        if (sscanf(file, "/u/%s/%s/%*s",path,dir) ){ 

                 

                if (status == "(admin)" ) return 1; 

                else if (strlen(path)==1 && dir != euid) return 0; 

        } 

 

         

        return 1; 

 



 

-- 

         陌生的城市啊,熟悉的角落里 

         也曾彼此安慰,也曾相拥叹息,不管将会面对什么样的结局 

         在漫天风沙里,望着你远去,我已悲伤得不能自已 

         多盼能送君千里,直到山穷水尽,一生和你相依! 

 

※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 166.111.34.55] 

                      [返回首页] [分类讨论区] [全部讨论区]

--

※ 来源:.BBS 荔园晨风站 bbs.szu.edu.cn.[FROM: 202.192.140.167]--

※ 转寄:.BBS 荔园晨风站 bbs.szu.edu.cn.[FROM: 172.18.32.20]


--
☆ 来源:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: bin@fengyun.hit.edu.]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:1.947毫秒