Message ID | 29fc87c2-b87c-4c34-40d4-75381f228849@huawei.com |
---|---|
State | New |
Headers | show |
Series | virtiofsd: fix some accessing NULL pointer problem | expand |
* Haotian Li (lihaotian9@huawei.com) wrote: > In fuse_bufvec_advance func, calling fuse_bufvec_current func > may return NULL, so we should check whether buf is NULL before > using it. > > Signed-off-by: Haotian Li <lihaotian9@huawei.com> > Signed-off-by: Zhiqiang Liu <liuzhiqiang26@huawei.com> > --- > tools/virtiofsd/buffer.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/tools/virtiofsd/buffer.c b/tools/virtiofsd/buffer.c > index 27c1377f22..bdc608c221 100644 > --- a/tools/virtiofsd/buffer.c > +++ b/tools/virtiofsd/buffer.c > @@ -246,6 +246,10 @@ static int fuse_bufvec_advance(struct fuse_bufvec *bufv, size_t len) > { > const struct fuse_buf *buf = fuse_bufvec_current(bufv); > > + if (!buf) { > + return 0; > + } > + Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> > bufv->off += len; > assert(bufv->off <= buf->size); > if (bufv->off == buf->size) { > -- > > _______________________________________________ > Virtio-fs mailing list > Virtio-fs@redhat.com > https://www.redhat.com/mailman/listinfo/virtio-fs
diff --git a/tools/virtiofsd/buffer.c b/tools/virtiofsd/buffer.c index 27c1377f22..bdc608c221 100644 --- a/tools/virtiofsd/buffer.c +++ b/tools/virtiofsd/buffer.c @@ -246,6 +246,10 @@ static int fuse_bufvec_advance(struct fuse_bufvec *bufv, size_t len) { const struct fuse_buf *buf = fuse_bufvec_current(bufv); + if (!buf) { + return 0; + } + bufv->off += len; assert(bufv->off <= buf->size); if (bufv->off == buf->size) {