keyval: Fix parsing of ',' in value of implied key
commit7051ae6cf1ec1072d2cdaa978660b22245a1efad
authorMarkus Armbruster <armbru@redhat.com>
Sun, 11 Oct 2020 07:35:01 +0000 (11 09:35 +0200)
committerKevin Wolf <kwolf@redhat.com>
Thu, 15 Oct 2020 14:06:27 +0000 (15 16:06 +0200)
tree6c49414624148390bf01f3735d5b33b37e5f1106
parentce40cbf11d215dc3f820bf32937f7e44aab4a1e3
keyval: Fix parsing of ',' in value of implied key

The previous commit demonstrated documentation and code disagree on
parsing of ',' in the value of an implied key.  Fix the code to match
the documentation.

This breaks uses of keyval_parse() that pass an implied key and accept
a value containing ','.  None of the existing uses does:

* audiodev: implied key "driver" is enum AudiodevDriver, none of the
  values contains ','

* display: implied key "type" is enum DisplayType, none of the values
  contains ','

* blockdev: implied key "driver is enum BlockdevDriver, none of the
  values contains ','

* export: implied key "type" is enum BlockExportType, none of the
  values contains ','

* monitor: implied key "mode" is enum MonitorMode, none of the values
  contains ','

* nbd-server: no implied key.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201011073505.1185335-4-armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
tests/test-keyval.c
util/keyval.c