OSDN Git Service

9p: fix O_APPEND in legacy mode
authorEric Van Hensbergen <ericvh@gmail.com>
Tue, 24 Jun 2008 22:39:39 +0000 (17:39 -0500)
committerEric Van Hensbergen <ericvh@opteron.9grid.us>
Thu, 3 Jul 2008 14:59:03 +0000 (09:59 -0500)
commit2e4bef41a0f7df31be140ef354b9c12f2299016a
tree6ddea6aa929a5f49a4e815a3bfe21f04177dc69e
parentc461a973118346d5c103aaaddd62e53939fd7c67
9p: fix O_APPEND in legacy mode

The legacy protocol's open operation doesn't handle an append operation
(it is expected that the client take care of it).  We were incorrectly
passing the extended protocol's flag through even in legacy mode.  This
was reported in bugzilla report #10689.  This patch fixes the problem
by disallowing extended protocol open modes from being passed in legacy
mode and implemented append functionality on the client side by adding
a seek after the open.

Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
fs/9p/v9fs_vfs.h
fs/9p/vfs_file.c
fs/9p/vfs_inode.c