コード例 #1
0
    def next(self):
        """
        """
        try:
            f = self.files.pop(0)
        except IndexError:
            raise StopIteration

        if f == "..":
            directory = self.dir.strip().split("/")
            pdir = "/" + "/".join(directory[:-1])
            s1 = self.server.fs.lstat(pdir)
            s = self.server.fs.lstat(pdir)
            s1.st_uid = pwd.Passwd(self.server.avatar.cfg).getpwuid(
                s.st_uid)["pw_name"]
            s1.st_gid = pwd.Group(self.server.avatar.cfg).getgrgid(
                s.st_gid)["gr_name"]
            longname = twisted.conch.ls.lsLine(f, s1)
            attrs = self.server._getAttrs(s)
            return (f, longname, attrs)
        elif f == ".":
            s1 = self.server.fs.lstat(self.dir)
            s = self.server.fs.lstat(self.dir)
            s1.st_uid = pwd.Passwd(self.server.avatar.cfg).getpwuid(
                s.st_uid)["pw_name"]
            s1.st_gid = pwd.Group(self.server.avatar.cfg).getgrgid(
                s.st_gid)["gr_name"]
            longname = twisted.conch.ls.lsLine(f, s1)
            attrs = self.server._getAttrs(s)
            return (f, longname, attrs)
        else:
            s = self.server.fs.lstat(os.path.join(self.dir, f))
            s2 = self.server.fs.lstat(os.path.join(self.dir, f))
            s2.st_uid = pwd.Passwd(self.server.avatar.cfg).getpwuid(
                s.st_uid)["pw_name"]
            s2.st_gid = pwd.Group(self.server.avatar.cfg).getgrgid(
                s.st_gid)["gr_name"]
            longname = twisted.conch.ls.lsLine(f, s2)
            attrs = self.server._getAttrs(s)
            return (f, longname, attrs)
コード例 #2
0
 def next(self):
     """
     """
     try:
         f = self.files.pop(0)
     except IndexError:
         raise StopIteration
     else:
         s = self.server.fs.lstat(os.path.join(self.dir, f))
         s2 = self.server.fs.lstat(os.path.join(self.dir, f))
         s2.st_uid = pwd.Passwd(self.server.avatar.cfg).getpwuid(s.st_uid)["pw_name"]
         s2.st_gid = pwd.Group(self.server.avatar.cfg).getgrgid(s.st_gid)["gr_name"]
         longname = twisted.conch.ls.lsLine(f, s2)
         attrs = self.server._getAttrs(s)
         return (f, longname, attrs)