[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 2/6] tests/vhost-user-bridge: Fix misuse of i
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH v2 2/6] tests/vhost-user-bridge: Fix misuse of isdigit() |
Date: |
Wed, 22 May 2019 14:55:58 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
Thomas Huth <address@hidden> writes:
> On 14/05/2019 20.41, Thomas Huth wrote:
>> On 14/05/2019 20.03, Markus Armbruster wrote:
>>> vubr_set_host() passes char values to isdigit(). Undefined behavior
>>> when the value is negative.
>>>
>>> Fix by using qemu_isdigit() instead.
>>>
>>> Signed-off-by: Markus Armbruster <address@hidden>
>>> ---
>>> tests/vhost-user-bridge.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/tests/vhost-user-bridge.c b/tests/vhost-user-bridge.c
>>> index 0033b61f2e..d70b107ebc 100644
>>> --- a/tests/vhost-user-bridge.c
>>> +++ b/tests/vhost-user-bridge.c
Squashing in
@@ -30,6 +30,7 @@
#define _FILE_OFFSET_BITS 64
#include "qemu/osdep.h"
+#include "qemu-common.h"
#include "qemu/atomic.h"
#include "qemu/iov.h"
#include "standard-headers/linux/virtio_net.h"
>>> @@ -645,7 +645,7 @@ vubr_host_notifier_setup(VubrDev *dev)
>>> static void
>>> vubr_set_host(struct sockaddr_in *saddr, const char *host)
>>> {
>>> - if (isdigit(host[0])) {
>>> + if (qemu_isdigit(host[0])) {
>>> if (!inet_aton(host, &saddr->sin_addr)) {
>>> fprintf(stderr, "inet_aton() failed.\n");
>>> exit(1);
>>
>> Reviewed-by: Thomas Huth <address@hidden>
>
> By the way, how do you compile / run this test? The original commit
> message say one should compile it with "make tests/vhost-user-bridge"
> but that does not work for me:
>
> $ make tests/vhost-user-bridge
> cc tests/vhost-user-bridge.c -o tests/vhost-user-bridge
> tests/vhost-user-bridge.c:32:24: fatal error: qemu/osdep.h: No such file
> or directory
With that fixup, it compiles for me.
Thanks for your question! I blindly assumed "make check" actually
compiled this.
- [Qemu-devel] [PATCH v2 0/6] Fix misuse of ctype.h functions, Markus Armbruster, 2019/05/14
- [Qemu-devel] [PATCH v2 1/6] qemu-bridge-helper: Fix misuse of isspace(), Markus Armbruster, 2019/05/14
- [Qemu-devel] [PATCH v2 3/6] gdbstub: Reject invalid RLE repeat counts, Markus Armbruster, 2019/05/14
- [Qemu-devel] [PATCH v2 5/6] pc-bios/s390-ccw: Clean up harmless misuse of isdigit(), Markus Armbruster, 2019/05/14
- [Qemu-devel] [PATCH v2 6/6] cutils: Simplify how parse_uint() checks for whitespace, Markus Armbruster, 2019/05/14
- Re: [Qemu-devel] [PATCH v2 0/6] Fix misuse of ctype.h functions, Markus Armbruster, 2019/05/22