diff options
author | Miklos Szeredi <miklos@szeredi.hu> | 2006-03-01 12:10:13 +0000 |
---|---|---|
committer | Miklos Szeredi <miklos@szeredi.hu> | 2006-03-01 12:10:13 +0000 |
commit | 5d9ce36da4688ba2c14f658ed40b5b4ad971879b (patch) | |
tree | 379c5435a0741965848f8eb2449bef9c8b4d080c /lib/fuse_session.c | |
parent | ee588c01dca3991807aea456a66246ff8ad0c332 (diff) | |
download | libfuse-5d9ce36da4688ba2c14f658ed40b5b4ad971879b.tar.gz |
fix
Diffstat (limited to 'lib/fuse_session.c')
-rw-r--r-- | lib/fuse_session.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/fuse_session.c b/lib/fuse_session.c index 4ea792a..8943204 100644 --- a/lib/fuse_session.c +++ b/lib/fuse_session.c @@ -12,6 +12,7 @@ #include <stdlib.h> #include <string.h> #include <assert.h> +#include <errno.h> struct fuse_session { struct fuse_session_ops op; @@ -143,11 +144,17 @@ struct fuse_session *fuse_chan_session(struct fuse_chan *ch) return ch->se; } -int fuse_chan_receive(struct fuse_chan *ch, char *buf, size_t size) +int fuse_chan_recv(struct fuse_chan *ch, char *buf, size_t size) { return ch->op.receive(ch, buf, size); } +int fuse_chan_receive(struct fuse_chan *ch, char *buf, size_t size) +{ + int res = fuse_chan_recv(ch, buf, size); + return res >= 0 ? res : (res != -EINTR && res != -EAGAIN) ? -1 : 0; +} + int fuse_chan_send(struct fuse_chan *ch, const struct iovec iov[], size_t count) { return ch->op.send(ch, iov, count); |