[gvfs] ftp: Only send permission bits for SITE CHMOD



commit f1dbbb14162fe458b1f374ef888ffab9e15bc1ae
Author: Ross Lagerwall <rosslagerwall gmail com>
Date:   Wed Jul 16 22:46:32 2014 +0100

    ftp: Only send permission bits for SITE CHMOD
    
    Some ftp servers give an error if more bits than just the permission
    bits are sent for SITE CHMOD so only send the permission bits.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=733281

 daemon/gvfsbackendftp.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
---
diff --git a/daemon/gvfsbackendftp.c b/daemon/gvfsbackendftp.c
index 5e1693a..fd940df 100644
--- a/daemon/gvfsbackendftp.c
+++ b/daemon/gvfsbackendftp.c
@@ -29,6 +29,9 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
 #include <glib/gi18n.h>
 #include <gio/gio.h>
 
@@ -1144,7 +1147,7 @@ do_set_attribute (GVfsBackend *backend,
           if (g_vfs_ftp_task_send (&task,
                                    0,
                                    "SITE CHMOD %04o %s",
-                                   mode,
+                                   mode & (S_IRWXU | S_IRWXG | S_IRWXO),
                                    g_vfs_ftp_file_get_ftp_path (file)))
             {
               g_vfs_ftp_dir_cache_purge_file (ftp->dir_cache, file);


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