[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4 1/9] qapi: Make qapi_bool_parse() gracefully handle NULL v
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH v4 1/9] qapi: Make qapi_bool_parse() gracefully handle NULL value |
Date: |
Fri, 10 Jan 2025 11:33:48 +0000 |
User-agent: |
Mutt/2.2.13 (2024-03-09) |
On Wed, Jan 08, 2025 at 09:04:56PM +0100, Ilya Leoshkevich wrote:
> Use g_strcmp0(), so that NULL is considered an invalid parameter value.
Why are we calling qapi_bool_parse with a NULL value in the first
place ? IMHO this is a sign of a bug higher up the call chain
that ought to be fixed, as in general all our input parsing code
would expect non-NULL input values.
>
> Suggested-by: Alex Bennée <alex.bennee@linaro.org>
> Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
> ---
> qapi/qapi-util.c | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/qapi/qapi-util.c b/qapi/qapi-util.c
> index 65a7d184372..c6ae829f904 100644
> --- a/qapi/qapi-util.c
> +++ b/qapi/qapi-util.c
> @@ -86,17 +86,17 @@ int qapi_enum_parse(const QEnumLookup *lookup, const char
> *buf,
>
> bool qapi_bool_parse(const char *name, const char *value, bool *obj, Error
> **errp)
> {
> - if (g_str_equal(value, "on") ||
> - g_str_equal(value, "yes") ||
> - g_str_equal(value, "true") ||
> - g_str_equal(value, "y")) {
> + if (!g_strcmp0(value, "on") ||
> + !g_strcmp0(value, "yes") ||
> + !g_strcmp0(value, "true") ||
> + !g_strcmp0(value, "y")) {
> *obj = true;
> return true;
> }
> - if (g_str_equal(value, "off") ||
> - g_str_equal(value, "no") ||
> - g_str_equal(value, "false") ||
> - g_str_equal(value, "n")) {
> + if (!g_strcmp0(value, "off") ||
> + !g_strcmp0(value, "no") ||
> + !g_strcmp0(value, "false") ||
> + !g_strcmp0(value, "n")) {
> *obj = false;
> return true;
> }
> --
> 2.47.1
>
>
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
- [PATCH v4 0/9] gdbstub: Allow late attachment, Ilya Leoshkevich, 2025/01/08
- [PATCH v4 2/9] gdbstub: Allow the %d placeholder in the socket path, Ilya Leoshkevich, 2025/01/08
- [PATCH v4 4/9] user: Introduce user/signal.h, Ilya Leoshkevich, 2025/01/08
- [PATCH v4 5/9] user: Introduce host_interrupt_signal, Ilya Leoshkevich, 2025/01/08
- [PATCH v4 6/9] osdep: Introduce qemu_kill_thread(), Ilya Leoshkevich, 2025/01/08
- [PATCH v4 8/9] docs/user: Document the %d placeholder and suspend=n QEMU_GDB features, Ilya Leoshkevich, 2025/01/08
- [PATCH v4 7/9] gdbstub: Allow late attachment, Ilya Leoshkevich, 2025/01/08
- [PATCH v4 9/9] tests/tcg: Add late gdbstub attach test, Ilya Leoshkevich, 2025/01/08