qemu/util
Markus Armbruster 80c710cb06 qemu-img: Move is_valid_option_list() to qemu-img.c and rewrite
is_valid_option_list()'s purpose is ensuring qemu-img.c's can safely
join multiple parameter strings separated by ',' like this:

        g_strdup_printf("%s,%s", params1, params2);

How it does that is anything but obvious.  A close reading of the code
reveals that it fails exactly when its argument starts with ',' or
ends with an odd number of ','.  Makes sense, actually, because when
the argument starts with ',', a separating ',' preceding it would get
escaped, and when it ends with an odd number of ',', a separating ','
following it would get escaped.

Move it to qemu-img.c and rewrite it the obvious way.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-Id: <20200415074927.19897-9-armbru@redhat.com>
2020-04-29 08:01:52 +02:00
..
aio-posix.c async: use explicit memory barriers 2020-04-09 16:17:14 +01:00
aio-posix.h aio-posix: remove idle poll handlers to improve scalability 2020-03-09 16:45:16 +00:00
aio-wait.c
aio-win32.c async: use explicit memory barriers 2020-04-09 16:17:14 +01:00
aiocb.c
async.c async: use explicit memory barriers 2020-04-09 16:17:14 +01:00
atomic64.c
base64.c
bitmap.c bitmap: Add bitmap_copy_with_{src|dst}_offset() 2019-07-15 15:39:02 +02:00
bitops.c
buffer.c
bufferiszero.c util/bufferiszero: improve avx2 accelerator 2020-04-01 14:24:03 -04:00
cacheinfo.c util/cacheinfo: fix crash when compiling with uClibc 2020-01-21 14:18:12 -10:00
compatfd.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
coroutine-sigaltstack.c
coroutine-ucontext.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
coroutine-win32.c
crc32c.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
cutils.c util/cutils: Turn FIXME comment into QEMU_BUILD_BUG_ON() 2019-12-18 12:26:25 +01:00
dbus.c util: add dbus helper unit 2020-01-06 18:41:32 +04:00
drm.c
envlist.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
error.c error: make Error **errp const where it is appropriate 2019-12-18 08:36:16 +01:00
event_notifier-posix.c event_notifier: avoid dandling file descriptor in event_notifier_cleanup 2019-10-24 19:26:52 +02:00
event_notifier-win32.c
fdmon-epoll.c aio-posix: support userspace polling of fd monitoring 2020-03-09 16:41:31 +00:00
fdmon-io_uring.c aio-posix: signal-proof fdmon-io_uring 2020-04-09 15:55:06 +01:00
fdmon-poll.c aio-posix: support userspace polling of fd monitoring 2020-03-09 16:41:31 +00:00
fifo8.c Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
filemonitor-inotify.c
filemonitor-stub.c
getauxval.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
guest-random.c replay: record and replay random number sources 2020-01-07 12:08:39 +01:00
hbitmap.c block/dirty-bitmap: improve _next_dirty_area API 2020-03-18 14:03:46 -04:00
hexdump.c
host-utils.c
id.c chardev: generate an internal id when none given 2020-01-07 16:50:09 +04:00
iov.c util/ioc.c: try to reassure Coverity about qemu_iovec_init_extended 2019-10-08 14:27:35 +01:00
iova-tree.c
keyval.c
lockcnt.c
log.c linux-user: Use `qemu_log' for strace 2020-02-19 11:17:40 +01:00
main-loop.c Do not use %m in common code to print error messages 2019-10-22 09:38:42 +02:00
Makefile.objs linux-user: factor out reading of /proc/self/maps 2020-04-07 16:19:49 +01:00
memfd.c linux-user: add memfd_create 2019-09-11 08:46:17 +02:00
mmap-alloc.c core: replace getpagesize() with qemu_real_host_page_size 2019-10-26 15:38:06 +02:00
module.c module: increase dirs array size by one 2020-04-13 02:56:18 -04:00
notify.c xen / notify: introduce a new XenWatchList abstraction 2019-09-24 12:18:47 +01:00
nvdimm-utils.c mem: move nvdimm_device_list to utilities 2020-02-21 09:15:03 +11:00
osdep.c util/osdep: Improve error report by calling error_setg_win32() 2020-03-09 13:36:15 +01:00
oslib-posix.c oslib-posix: take lock before qemu_cond_broadcast 2020-04-11 08:49:20 -04:00
oslib-win32.c core: replace getpagesize() with qemu_real_host_page_size 2019-10-26 15:38:06 +02:00
pagesize.c
path.c util/path: Do not cache all filenames at startup 2019-06-24 22:19:30 +02:00
qdist.c
qemu-co-shared-resource.c util: introduce SharedResource 2019-10-28 11:22:31 +01:00
qemu-config.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
qemu-coroutine-io.c yield_until_fd_readable: make it work with any AioContect 2019-10-25 14:38:29 +02:00
qemu-coroutine-lock.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
qemu-coroutine-sleep.c qemu-coroutine-sleep: Silence Coverity warning 2019-11-18 16:01:34 -06:00
qemu-coroutine.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
qemu-error.c error: Fix -msg timestamp default 2019-12-18 08:36:15 +01:00
qemu-openpty.c
qemu-option.c qemu-img: Move is_valid_option_list() to qemu-img.c and rewrite 2020-04-29 08:01:52 +02:00
qemu-print.c
qemu-progress.c
qemu-sockets.c util/qemu-sockets: fix keep_alive handling in inet_connect_saddr 2019-09-25 08:15:44 -05:00
qemu-thread-common.h
qemu-thread-posix.c qemu-thread: Add qemu_cond_timedwait 2019-09-16 17:13:06 +02:00
qemu-thread-win32.c qemu-thread: Add qemu_cond_timedwait 2019-09-16 17:13:06 +02:00
qemu-timer-common.c Remove support for CLOCK_MONOTONIC not being defined 2020-02-12 16:23:01 +01:00
qemu-timer.c lockable: add lock guards 2020-03-17 15:18:45 +01:00
qht.c
qsp.c qsp: Use WITH_RCU_READ_LOCK_GUARD 2019-12-17 19:33:52 +01:00
range.c
rcu.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
readline.c qemu-common: Move qemu_isalnum() etc. to qemu/ctype.h 2019-06-11 20:22:09 +02:00
selfmap.c linux-user: factor out reading of /proc/self/maps 2020-04-07 16:19:49 +01:00
stats64.c
sys_membarrier.c
systemd.c Do not use %m in common code to print error messages 2019-10-22 09:38:42 +02:00
thread-pool.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
throttle.c
timed-average.c
trace-events aio-posix: remove idle poll handlers to improve scalability 2020-03-09 16:45:16 +00:00
unicode.c
uri.c
uuid.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
vfio-helpers.c Report stringified errno in VFIO related errors 2020-02-18 20:20:49 +01:00