linux-mmap-ro-means-no-write-20050125
authorDerrick Brashear <shadow@dementia.org>
Tue, 25 Jan 2005 06:54:31 +0000 (06:54 +0000)
committerDerrick Brashear <shadow@dementia.org>
Tue, 25 Jan 2005 06:54:31 +0000 (06:54 +0000)
don't allow a write map of a file which cannot be written to

src/afs/LINUX/osi_vnodeops.c

index 333b5be..ab196b5 100644 (file)
@@ -518,6 +518,9 @@ afs_linux_mmap(struct file *fp, struct vm_area_struct *vmap)
     if (!code)
        code = afs_VerifyVCache(vcp, &treq);
 
+    if (!code && (vcp->states & CRO) && 
+       (vmap->vm_file->f_flags & (FWRITE | FTRUNC)))
+       code = EACCES;
 
     if (code)
        code = -code;