diff options
author | Vincent Bernat <vincent@bernat.im> | 2015-08-15 15:49:13 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-09-13 09:07:50 -0700 |
commit | e18d264c4e706faf0dcb25abb3ebaa82ff4e8210 (patch) | |
tree | 31411b737e7c248db071e7ca51da90dd5601aebd /net/switchdev/switchdev.c | |
parent | 5598cbeda80ea71125855e9ffa6777ded745af5c (diff) |
9p: ensure err is initialized to 0 in p9_client_read/write
commit 999b8b88c6060adf7a9b7907740ae86ace65291e upstream.
Some use of those functions were providing unitialized values to those
functions. Notably, when reading 0 bytes from an empty file on a 9P
filesystem, the return code of read() was not 0.
Tested with this simple program:
#include <assert.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
int main(int argc, const char **argv)
{
assert(argc == 2);
char buffer[256];
int fd = open(argv[1], O_RDONLY|O_NOCTTY);
assert(fd >= 0);
assert(read(fd, buffer, 0) == 0);
return 0;
}
Signed-off-by: Vincent Bernat <vincent@bernat.im>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/switchdev/switchdev.c')
0 files changed, 0 insertions, 0 deletions