diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | sshfs.c | 15 |
2 files changed, 22 insertions, 0 deletions
@@ -1,3 +1,10 @@ +2005-10-19 Miklos Szeredi <miklos@szeredi.hu> + + * GNOME Nautilus fails to copy file to sshfs filesystem, because + FUSE returns zero free space. So instead return huge (999999999 + kbytes) amount of free space, yet it should be obvious that the + number is artificial. Bug report by Peter Kronheimer + 2005-10-18 Miklos Szeredi <miklos@szeredi.hu> * Add remote uid detection and translation ('idmap=user' option). @@ -1748,6 +1748,20 @@ static int sshfs_write(const char *path, const char *wbuf, size_t size, return err ? err : (int) size; } +static int sshfs_statfs(const char *path, struct statfs *buf) +{ + (void) path; + + buf->f_namelen = 255; + buf->f_bsize = 512; + buf->f_blocks = 999999999 * 2; + buf->f_bfree = 999999999 * 2; + buf->f_bavail = 999999999 * 2; + buf->f_files = 999999999; + buf->f_ffree = 999999999; + return 0; +} + static int processing_init(void) { pthread_mutex_init(&lock, NULL); @@ -1782,6 +1796,7 @@ static struct fuse_cache_operations sshfs_oper = { .release = sshfs_release, .read = sshfs_read, .write = sshfs_write, + .statfs = sshfs_statfs, }, .cache_getdir = sshfs_getdir, }; |