hw/rdma/vmw/pvrdma_dev_ring.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
ring->name is defined as 'char name[MAX_RING_NAME_SZ]'. Replace untruncated
strncpy with QEMU function.
This case prevented QEMU from compiling with --enable-sanitizers.
Signed-off-by: Julia Suvorova <jusual@redhat.com>
---
hw/rdma/vmw/pvrdma_dev_ring.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/hw/rdma/vmw/pvrdma_dev_ring.c b/hw/rdma/vmw/pvrdma_dev_ring.c
index d7bc7f5ccc..c2b3dd70a9 100644
--- a/hw/rdma/vmw/pvrdma_dev_ring.c
+++ b/hw/rdma/vmw/pvrdma_dev_ring.c
@@ -16,6 +16,7 @@
#include "qemu/osdep.h"
#include "hw/pci/pci.h"
#include "cpu.h"
+#include "qemu/cutils.h"
#include "trace.h"
@@ -30,8 +31,7 @@ int pvrdma_ring_init(PvrdmaRing *ring, const char *name, PCIDevice *dev,
int i;
int rc = 0;
- strncpy(ring->name, name, MAX_RING_NAME_SZ);
- ring->name[MAX_RING_NAME_SZ - 1] = 0;
+ pstrcpy(ring->name, MAX_RING_NAME_SZ, name);
ring->dev = dev;
ring->ring_state = ring_state;
ring->max_elems = max_elems;
--
2.24.1
Thanks, Reviewed-by: Yuval Shaia <yuval.shaia.ml.gmail.com> On Wed, 18 Mar 2020 at 15:49, Julia Suvorova <jusual@redhat.com> wrote: > ring->name is defined as 'char name[MAX_RING_NAME_SZ]'. Replace untruncated > strncpy with QEMU function. > This case prevented QEMU from compiling with --enable-sanitizers. > > Signed-off-by: Julia Suvorova <jusual@redhat.com> > --- > hw/rdma/vmw/pvrdma_dev_ring.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/hw/rdma/vmw/pvrdma_dev_ring.c b/hw/rdma/vmw/pvrdma_dev_ring.c > index d7bc7f5ccc..c2b3dd70a9 100644 > --- a/hw/rdma/vmw/pvrdma_dev_ring.c > +++ b/hw/rdma/vmw/pvrdma_dev_ring.c > @@ -16,6 +16,7 @@ > #include "qemu/osdep.h" > #include "hw/pci/pci.h" > #include "cpu.h" > +#include "qemu/cutils.h" > > #include "trace.h" > > @@ -30,8 +31,7 @@ int pvrdma_ring_init(PvrdmaRing *ring, const char *name, > PCIDevice *dev, > int i; > int rc = 0; > > - strncpy(ring->name, name, MAX_RING_NAME_SZ); > - ring->name[MAX_RING_NAME_SZ - 1] = 0; > + pstrcpy(ring->name, MAX_RING_NAME_SZ, name); > ring->dev = dev; > ring->ring_state = ring_state; > ring->max_elems = max_elems; > -- > 2.24.1 > >
On Wed, Mar 18, 2020 at 02:48:49PM +0100, Julia Suvorova wrote: > ring->name is defined as 'char name[MAX_RING_NAME_SZ]'. Replace untruncated > strncpy with QEMU function. > This case prevented QEMU from compiling with --enable-sanitizers. > > Signed-off-by: Julia Suvorova <jusual@redhat.com> > --- > hw/rdma/vmw/pvrdma_dev_ring.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) Here is my equivalent patch <20200316160702.478964-3-stefanha@redhat.com> but feel free to merge this. Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
On Fri, Mar 20, 2020 at 4:20 PM Stefan Hajnoczi <stefanha@gmail.com> wrote: > > On Wed, Mar 18, 2020 at 02:48:49PM +0100, Julia Suvorova wrote: > > ring->name is defined as 'char name[MAX_RING_NAME_SZ]'. Replace untruncated > > strncpy with QEMU function. > > This case prevented QEMU from compiling with --enable-sanitizers. > > > > Signed-off-by: Julia Suvorova <jusual@redhat.com> > > --- > > hw/rdma/vmw/pvrdma_dev_ring.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > Here is my equivalent patch > <20200316160702.478964-3-stefanha@redhat.com> but feel free to merge > this. Oops, sorry, I guess I didn't search carefully enough for the solution. > Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
© 2016 - 2025 Red Hat, Inc.