summaryrefslogtreecommitdiffstats
path: root/api/src
diff options
context:
space:
mode:
Diffstat (limited to 'api/src')
0 files changed, 0 insertions, 0 deletions
mount (self): api.glfs_init(self.fs) # File operations, in alphabetical order. def creat (self, path, flags, mode): fd = api.glfs_creat(self.fs,path,flags,mode) if not fd: return fd return File(fd) def getxattr (self, path, key, maxlen): buf = create_string_buffer(maxlen) rc = api.glfs_getxattr(self.fs,path,key,buf,maxlen) if rc < 0: return rc return buf.value[:rc] def listxattr (self, path): buf = create_string_buffer(512) rc = api.glfs_listxattr(self.fs,path,buf,512) if rc < 0: return rc xattrs = [] # Parsing character by character is ugly, but it seems like the # easiest way to deal with the "strings separated by NUL in one # buffer" format. i = 0 while i < rc: new_xa = buf.raw[i] i += 1 while i < rc: next_char = buf.raw[i] i += 1 if next_char == '\0': xattrs.append(new_xa) break new_xa += next_char xattrs.sort() return xattrs def lstat (self, path): x = Stat() rc = api.glfs_lstat(self.fs,path,byref(x)) if rc >= 0: return x else: return rc def mkdir (self, path): return api.glfs_mkdir(self.fs,path) def open (self, path, flags): fd = api.glfs_open(self.fs,path,flags) if not fd: