[PATCH 00/15] schema: Fix forgotten interleaving of elements (part 1)

Peter Krempa posted 15 patches 1 year, 6 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/cover.1666010034.git.pkrempa@redhat.com
src/conf/schemas/cputypes.rng        |   6 +-
src/conf/schemas/domaincommon.rng    | 813 ++++++++++++++-------------
src/conf/schemas/networkport.rng     |  42 +-
src/conf/schemas/nwfilter.rng        |  36 +-
src/conf/schemas/nwfilterbinding.rng |  14 +-
src/conf/schemas/storagepool.rng     |  12 +-
6 files changed, 476 insertions(+), 447 deletions(-)
[PATCH 00/15] schema: Fix forgotten interleaving of elements (part 1)
Posted by Peter Krempa 1 year, 6 months ago
Context:

https://listman.redhat.com/archives/libvir-list/2022-October/234860.html

This series fixes the trivial/straightforward cases found by using
Daniel's "fuzzing" script. Note that you have to exclude '-invalid.xml'
files and all output-only XMLs (domaincaps, capabilities).

Best viewed with 'git show -w'.

There's 7 more pathces needed to fix the schema to work with the above
mentioned script but they have more complex interactions and I'll need
to re-consider them.

Peter Krempa (15):
  schema: domain: Allow interleaving of character device config elements
  schema: domain: Allow interleaving of PCI controller config elements
  schema: domain: Allow interleaving of 'tpm' config elements
  schema: domain: Allow interleaving of subelements of 'memtune'
  schema: domain: Allow interleaving of subelements of disk's 'mirror'
  schema: domain: Allow interleaving 'ip' and 'route' sub-elements of
    interface
  schema: domain: Add the 'type' subelement of the osexe case of 'os'
    element to interleave
  schema: domain: Allow interleaving of <bootloader> and <os>
  schema: domain: Allow interleaving of 'watchdog' subelements
  schema: networkport: Allow interleaving of subelements of 'owner'
  schema: networkport: Allow interleaving of subelements of 'driver'
    subelement of hostdev-pci
  schema: nwfilter: Allow interleaving subelements of the top level
    'filter' element
  schema: nwfilterbinding: Allow interleaving of subelements of 'owner'
    element
  schema: storagepool: Allow interleaving of per-pool custom namespace
    elements
  schema: cpu: include 'arch' subelement in interleave definition of
    'hostcpu'

 src/conf/schemas/cputypes.rng        |   6 +-
 src/conf/schemas/domaincommon.rng    | 813 ++++++++++++++-------------
 src/conf/schemas/networkport.rng     |  42 +-
 src/conf/schemas/nwfilter.rng        |  36 +-
 src/conf/schemas/nwfilterbinding.rng |  14 +-
 src/conf/schemas/storagepool.rng     |  12 +-
 6 files changed, 476 insertions(+), 447 deletions(-)

-- 
2.37.3
Re: [PATCH 00/15] schema: Fix forgotten interleaving of elements (part 1)
Posted by Ján Tomko 1 year, 6 months ago
On a Monday in 2022, Peter Krempa wrote:
>Context:
>
>https://listman.redhat.com/archives/libvir-list/2022-October/234860.html
>
>This series fixes the trivial/straightforward cases found by using
>Daniel's "fuzzing" script. Note that you have to exclude '-invalid.xml'
>files and all output-only XMLs (domaincaps, capabilities).
>
>Best viewed with 'git show -w'.
>
>There's 7 more pathces needed to fix the schema to work with the above
>mentioned script but they have more complex interactions and I'll need
>to re-consider them.
>
>Peter Krempa (15):
>  schema: domain: Allow interleaving of character device config elements
>  schema: domain: Allow interleaving of PCI controller config elements
>  schema: domain: Allow interleaving of 'tpm' config elements
>  schema: domain: Allow interleaving of subelements of 'memtune'
>  schema: domain: Allow interleaving of subelements of disk's 'mirror'
>  schema: domain: Allow interleaving 'ip' and 'route' sub-elements of
>    interface
>  schema: domain: Add the 'type' subelement of the osexe case of 'os'
>    element to interleave
>  schema: domain: Allow interleaving of <bootloader> and <os>
>  schema: domain: Allow interleaving of 'watchdog' subelements
>  schema: networkport: Allow interleaving of subelements of 'owner'
>  schema: networkport: Allow interleaving of subelements of 'driver'
>    subelement of hostdev-pci
>  schema: nwfilter: Allow interleaving subelements of the top level
>    'filter' element
>  schema: nwfilterbinding: Allow interleaving of subelements of 'owner'
>    element
>  schema: storagepool: Allow interleaving of per-pool custom namespace
>    elements
>  schema: cpu: include 'arch' subelement in interleave definition of
>    'hostcpu'
>
> src/conf/schemas/cputypes.rng        |   6 +-
> src/conf/schemas/domaincommon.rng    | 813 ++++++++++++++-------------
> src/conf/schemas/networkport.rng     |  42 +-
> src/conf/schemas/nwfilter.rng        |  36 +-
> src/conf/schemas/nwfilterbinding.rng |  14 +-
> src/conf/schemas/storagepool.rng     |  12 +-
> 6 files changed, 476 insertions(+), 447 deletions(-)
>

Reviewed-by: Ján Tomko <jtomko@redhat.com>

Jano