aboutsummaryrefslogtreecommitdiffstats
path: root/lcmodfs.py
diff options
context:
space:
mode:
Diffstat (limited to 'lcmodfs.py')
-rwxr-xr-xlcmodfs.py31
1 files changed, 10 insertions, 21 deletions
diff --git a/lcmodfs.py b/lcmodfs.py
index e25c27a..92a1b2d 100755
--- a/lcmodfs.py
+++ b/lcmodfs.py
@@ -13,14 +13,14 @@
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
import os
+from base import *
import sys, pdb
-import llfuse, errno, stat
+import errno, stat
import faulthandler
import requests, threading
sys.path.append("../larryviewer") #FIXME
-sys.path.append("../lc/src") #FIXME
+HAVE_QT = False
from larryviewer import *
-from base import *
faulthandler.enable()
class LCModOperations(LCOperations):
@@ -31,6 +31,7 @@ class LCModOperations(LCOperations):
super().__init__()
self._viewer = v
for i in range(v.ui.lsEntries.count()):
+ e = v.ui.lsEntries.item(i)
self._add_entry(llfuse.ROOT_INODE, v.ui.lsEntries.item(i).larry, True)
def _is_dir(self, inode):
@@ -38,7 +39,6 @@ class LCModOperations(LCOperations):
def opendir(self, inode, ctx=None):
if inode != llfuse.ROOT_INODE:
- print(inode)
try:
self._get_inode_by_parent(inode)
except IndexError:
@@ -59,10 +59,8 @@ class LCModOperations(LCOperations):
if self.getattr(inode).st_mode & stat.S_IFDIR:
raise llfuse.FUSEError(errno.EISDIR)
- print("checking flags")
if flags & os.O_APPEND:
raise llfuse.FUSEError(errno.EROFS)
- print("returning")
return inode
def read(self, inode, off, size):
@@ -72,14 +70,11 @@ class LCModOperations(LCOperations):
except Exception as e:
print(e)
raise llfuse.FUSEError(errno.EREMOTEIO) from e
- print(r, off, size)
if not r:
raise llfuse.FUSEError(errno.EREMOTEIO)
elif r.status_code == 206:
- print("partial content", r.headers["Content-Length"])
- b = r.raw.read(size)
- return b
+ return r.raw.read(size)
else:
buf = BytesIO()
@@ -94,18 +89,10 @@ class LCModOperations(LCOperations):
buf.seek(i - off)
return buf.read(size)
- #def flush(self, inode):
- #pass
-
- #def close(self, inode):
- #pass
-
- #def release(self, inode):
- #pass
-
+
+
if __name__ == "__main__":
# Usage: ./lcfs.py <mountpoint>
- app = QApplication(sys.argv)
cwd = os.getcwd()
os.chdir("../larryviewer") #FIXME
v = LarryViewer()
@@ -115,11 +102,13 @@ if __name__ == "__main__":
t.join()
fuse_options = set(llfuse.default_options)
fuse_options.add("fsname=lcmodfs")
- fuse_options.add("debug")
+ #fuse_options.add("debug")
fuse_options.discard("default_permissions")
+
op = LCModOperations(v)
llfuse.init(op, sys.argv[1], fuse_options)
try:
+ #threading.Thread(target=findBrokenEntries).start()
llfuse.main(workers=1)
except:
llfuse.close(unmount=True)