Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!usr/bin/env python3
- import os
- import sys
- import errno
- from fuse import FUSE, FuseOSError, Operations, fuse_get_context
- from toycipher import *
- import pdb
- class Cfs (Operations) :
- def __init__(self, path) :
- print(f"chemin : {path}")
- self.root = os.path.abspath(path)
- def rpath (self, path) :
- return os.path.join(self.root, path.lstrip('/'))
- def getattr(self, path, fh=None) :
- path = self.rpath(path)
- attr = ["st_mode", "st_ino", "st_dev", "st_nlink", "st_uid", "st_gid", "st_size", "st_atime", "st_mtime", "st_ctime"]
- attr = dict.fromkeys(attr)
- stat = os.stat(path)
- i=0
- for key in attr :
- attr[key] = stat[i]
- i+=1
- return attr
- def readdir (self, path , fh) :
- path = self.rpath(path)
- print(f"listing : {path}")
- return ['.', '..']+os.listdir(path)
- def main(path) :
- cfs = FUSE( Cfs(path), path, foreground = True, nonempty=True)
- if __name__ == '__main__' :
- print(f"pid : {os.getpid()}")
- main(sys.argv[1])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement