Index: uspace/srv/vfs/vfs_ops.c
===================================================================
--- uspace/srv/vfs/vfs_ops.c	(revision 5e801dccc49faadcb18cd8ddee6200633e8f11b8)
+++ uspace/srv/vfs/vfs_ops.c	(revision a773b8b018e3509e70f093d1ff08a0946b7dfe40)
@@ -618,4 +618,9 @@
 		return EBADF;
 
+	if (!file->open_write || file->node->type != VFS_NODE_FILE) {
+		vfs_file_put(file);
+		return EINVAL;
+	}
+
 	fibril_rwlock_write_lock(&file->node->contents_rwlock);
 
