[fuse-devel] fuse desktop integration / management library

nf2 nf2 at scheinwelt.at
Sat May 5 10:07:43 PDT 2007


Miklos Szeredi wrote:

>   
>> * create, mount, unmount, remove fuse mountpoints
>>     
>
> mkdir, exec filesystem, exec fusermount -u, rmdir
>
> I don't see what extra a library could do
>   

i guess to integrate with GUI-applications (filemanagers, file-dialogs) 
a standardized management API would make things more attractive... see 
the attached "fusi.h" header file ... (it's sketchy - more a collection 
of ideas... there is not much "libfusi" code behind this header file yet)

>   
>> * password callbacks (needs support in libfuse or a second library 
>> linked into fuse modules, because the current way of specifying 
>> passwords as command line args is unsecure)
>>     
>
> A nice model for this is ssh-askpass, no need to support anything in
> libfuse for this to work.
>   

i think the ssh-askpass model won't work for this. i need a way to pass 
a password as mount parameter (to sshfs, cupsftpfs), which is not 
visible in the command line (and in the process list). what about 
setting a FUSE_MOUNT_PASSWORD envir variable? would that be safe?

btw: sshfs seems problematic, because it prompts the password in the 
terminal, and i couldn't find a way to automatically answer this prompt 
with a wrapper executable that controls stdin/stdout/stderr of the sshfs 
executable...

smbfs: seems to be quite hard to fit in a gui-managed model (because 
there is no feedback about successful server/share authentication...)


this is how a spec-file which describes a fuse-module currently looks 
like (installed in /etc/fuse/module-specs):

--------------  cupsftpfs.fuse-module ----------------------
[fuse module spec]

name=cupsftpfs
scheme=ftp
description=Connects to ftp file servers

checkexec=cupsftpfs
exechelper=@helperexecdir@/fusi-mount-cupsftpfs-helper

mount_property_list=host;user;port;password

[fuse module spec propertyscheme]

host_type=string
host_title=Hostname
host_required=true

user_type=string
user_title=Username
user_required=true

port_type=int
port_title=Port
port_required=false

password_type=password
password_title=Password
password_required=true

-------------------------------------------------------------------

and this is how a mountspec file (to remember network mounts) looks like
(the list of mount-specs resides in 
$XDG_CONFIG_HOME/fuse/mount-spec/*.fuse-mount)

------------test_at_server.fuse-mount ----------
[fuse mount spec]
modulename=cupsftpfs

# id is the name of the mount directory under $HOME/network-servers/
id=test_at_server

[fuse mount spec properties]
host=ftp.server.org
user=test

--------------------------------------------------------------------

regards,
norbert



-------------- next part --------------
A non-text attachment was scrubbed...
Name: fusi.h
Type: text/x-chdr
Size: 7284 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/xdg/attachments/20070505/a99e89ef/attachment.h 


More information about the xdg mailing list