smb2 unix extensions
Volker Lendecke
Volker.Lendecke at SerNet.DE
Wed Apr 9 08:24:17 MDT 2014
Hi!
Release early, release often :-)
For all interested in discussing $SUBJECT,
https://git.samba.org/?p=vl/samba.git/.git;a=shortlog;h=refs/heads/smb2-unix
is what I'm playing with right now. As a starting point, I
chose to implement a fuse module based on our async client
libraries, not libsmbclient:
https://git.samba.org/?p=vl/samba.git/.git;a=blob;f=source3/client/clifuse.c;hb=smb2-unix
is the current status. All smb2-unix specific that it does
is getting unix attributes at getattr time, and beyond that
it's pretty incomplete and broken. The way it gets the unix
attributes is via a "POSX" create blob, see
https://git.samba.org/?p=vl/samba.git/.git;a=commitdiff;h=2b0ca6c0b
I could imagine that we can stash quite a bit into that POSX
create blob. Versioning, chmod, chown etc could just be done
at open time, similarly we could implement readlink.
We will have to implement a request blob for POSX that will
specify the operation in question, but we could easily model
that along the fuse lowlevel operation structs.
Why fuse? I don't know how complete a unix file system you
can get via fuse, but this seems pretty standard these days
and if we can fulfill fuse's requirements, I think we are a
good part down the road towards unix extensions that might
also fulfill cifs.ko's requirements and others.
Comments welcome :-)
Volker
--
SerNet GmbH, Bahnhofsallee 1b, 37081 Göttingen
phone: +49-551-370000-0, fax: +49-551-370000-9
AG Göttingen, HRB 2816, GF: Dr. Johannes Loxen
http://www.sernet.de, mailto:kontakt at sernet.de
More information about the samba-technical
mailing list