Re: D-Bus interface of gvfs



Alexander Larsson <alexl redhat com> writes:

>> I'm planning to write an Emacs/Tramp client for gvfs. Tramp is an Emacs
>> package, which allows access to files on remote hosts.
>> 
>> Since the package is written in ELisp, I would prefer to communicate to
>> gvfsd via D-Bus. An alternative could be the gvs-* commands, but this
>> might decrease performance.
>
> The dbus use of gvfs is very complicated, and quite internal, so I don't
> think this is a good idea. For instance, for actual file data transfer
> we use a custom binary protocol over socketpair fds that we pass over an
> extra fd that is paired with each the client-to-backend dbus connection.

I've seen this. My current implementation does mounting, listing
(enumerate) directories, retrieving file attributes etc via the gvfs
D-Bus interface, as I've got it via reverse engineering from your
sources. File contents manipulation is implemented via calls of
gvs-cat, gvfs-copy and alike.

I'm not ready, but it works already for some parts. Next step will be
performance measures, whether it is faster than the current
implementation of sftp and smb access in Tramp.

After all, it is meant as proof of concept. Whether I will release it
officially, I've not decided yet.

Best regards, Michael.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]