summaryrefslogtreecommitdiff
path: root/daemon/gvfsjobsetattribute.c
diff options
context:
space:
mode:
authorOndrej Holy <oholy@redhat.com>2019-05-14 09:31:37 +0200
committerOndrej Holy <oholy@redhat.com>2019-07-11 11:24:17 +0000
commite782512ba06374bdc45998a9b7908f5b3c500393 (patch)
tree0c0d2710556c973a67a2eee8aa33c3da6d0cba50 /daemon/gvfsjobsetattribute.c
parent6493083b1d7a839257e7dcec390c6ae20c0f3aa4 (diff)
downloadgvfs-e782512ba06374bdc45998a9b7908f5b3c500393.tar.gz
daemon: Handle lockdown option to disable writing
Handle the new mount-removable-storage-devices-as-read-only option of org.gnome.desktop.lockdown schema and present AFC, MTP, GPhoto2 devices as read-only if enabled.
Diffstat (limited to 'daemon/gvfsjobsetattribute.c')
-rw-r--r--daemon/gvfsjobsetattribute.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/daemon/gvfsjobsetattribute.c b/daemon/gvfsjobsetattribute.c
index 1efe7c94..ac7618a4 100644
--- a/daemon/gvfsjobsetattribute.c
+++ b/daemon/gvfsjobsetattribute.c
@@ -146,6 +146,13 @@ try (GVfsJob *job)
GVfsJobSetAttribute *op_job = G_VFS_JOB_SET_ATTRIBUTE (job);
GVfsBackendClass *class = G_VFS_BACKEND_GET_CLASS (op_job->backend);
+ if (g_vfs_backend_get_readonly_lockdown (op_job->backend))
+ {
+ g_vfs_job_failed (job, G_IO_ERROR, G_IO_ERROR_PERMISSION_DENIED,
+ _("Filesystem is read-only"));
+ return TRUE;
+ }
+
if (class->try_set_attribute == NULL)
return FALSE;