dirspec.py 文件源码

python
阅读 26 收藏 0 点赞 0 评论 0

项目:yggdrasil 作者: locore 项目源码 文件源码
def rmdir(self, parent, name):
        # parent is a directory
        if Not(self.is_dir(parent)):
            return 0, errno.ENOTDIR

        on = self._mach.create_on([])

        ino = self._dirfn(parent, name[0])
        assertion(self.is_dir(ino))

        if UGT(self._attrs.nlink(ino), 2):
            return BitVecVal(0, 32), errno.ENOTEMPTY

        # Wipe data
        _fn = self._datafn._fn
        fn = lambda i, b, o: If( And(on, ino == i), BitVecVal(0, 64), _fn(i, b, o))
        self._datafn._fn = fn

        self._attrs.set_nlink(parent, self._attrs.nlink(parent) - 1, guard=on)

        self._attrs.set_nlink(ino, 1, guard=on)

        return ino, BitVecVal(0, 32)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号