QA output created by 082

=== create: Options specified more than once ===

Testing: create -f foo -f qcow2 TEST_DIR/t.qcow2 128M
Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=134217728 cluster_size=65536 lazy_refcounts=off refcount_bits=16
image: TEST_DIR/t.IMGFMT
file format: IMGFMT
virtual size: 128M (134217728 bytes)
cluster_size: 65536

Testing: create -f qcow2 -o cluster_size=4k -o lazy_refcounts=on TEST_DIR/t.qcow2 128M
Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=134217728 cluster_size=4096 lazy_refcounts=on refcount_bits=16
image: TEST_DIR/t.IMGFMT
file format: IMGFMT
virtual size: 128M (134217728 bytes)
cluster_size: 4096
Format specific information:
    compat: 1.1
    lazy refcounts: true
    refcount bits: 16
    corrupt: false

Testing: create -f qcow2 -o cluster_size=4k -o lazy_refcounts=on -o cluster_size=8k TEST_DIR/t.qcow2 128M
Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=134217728 cluster_size=8192 lazy_refcounts=on refcount_bits=16
image: TEST_DIR/t.IMGFMT
file format: IMGFMT
virtual size: 128M (134217728 bytes)
cluster_size: 8192
Format specific information:
    compat: 1.1
    lazy refcounts: true
    refcount bits: 16
    corrupt: false

Testing: create -f qcow2 -o cluster_size=4k,cluster_size=8k TEST_DIR/t.qcow2 128M
Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=134217728 cluster_size=8192 lazy_refcounts=off refcount_bits=16
image: TEST_DIR/t.IMGFMT
file format: IMGFMT
virtual size: 128M (134217728 bytes)
cluster_size: 8192

=== create: help for -o ===

Testing: create -f qcow2 -o help TEST_DIR/t.qcow2 128M
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: create -f qcow2 -o ? TEST_DIR/t.qcow2 128M
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: create -f qcow2 -o cluster_size=4k,help TEST_DIR/t.qcow2 128M
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: create -f qcow2 -o cluster_size=4k,? TEST_DIR/t.qcow2 128M
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: create -f qcow2 -o help,cluster_size=4k TEST_DIR/t.qcow2 128M
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: create -f qcow2 -o ?,cluster_size=4k TEST_DIR/t.qcow2 128M
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: create -f qcow2 -o cluster_size=4k -o help TEST_DIR/t.qcow2 128M
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: create -f qcow2 -o cluster_size=4k -o ? TEST_DIR/t.qcow2 128M
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: create -f qcow2 -u -o backing_file=TEST_DIR/t.qcow2,,help TEST_DIR/t.qcow2 128M
Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=134217728 backing_file=TEST_DIR/t.qcow2,,help cluster_size=65536 lazy_refcounts=off refcount_bits=16

Testing: create -f qcow2 -u -o backing_file=TEST_DIR/t.qcow2,,? TEST_DIR/t.qcow2 128M
Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=134217728 backing_file=TEST_DIR/t.qcow2,,? cluster_size=65536 lazy_refcounts=off refcount_bits=16

Testing: create -f qcow2 -o backing_file=TEST_DIR/t.qcow2, -o help TEST_DIR/t.qcow2 128M
qemu-img: Invalid option list: backing_file=TEST_DIR/t.qcow2,

Testing: create -f qcow2 -o backing_file=TEST_DIR/t.qcow2 -o ,help TEST_DIR/t.qcow2 128M
qemu-img: Invalid option list: ,help

Testing: create -f qcow2 -o backing_file=TEST_DIR/t.qcow2 -o ,, -o help TEST_DIR/t.qcow2 128M
qemu-img: Invalid option list: ,,

Testing: create -f qcow2 -o help
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: create -o help
Supported options:
  size=<size>            - Virtual disk size

Testing: create -f bochs -o help
qemu-img: Format driver 'bochs' does not support image creation

=== convert: Options specified more than once ===

Testing: create -f qcow2 TEST_DIR/t.qcow2 128M
Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=134217728 cluster_size=65536 lazy_refcounts=off refcount_bits=16

Testing: convert -f foo -f qcow2 TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
image: TEST_DIR/t.IMGFMT.base
file format: raw
virtual size: 128M (134217728 bytes)

Testing: convert -O foo -O qcow2 TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
image: TEST_DIR/t.IMGFMT.base
file format: IMGFMT
virtual size: 128M (134217728 bytes)
cluster_size: 65536

Testing: convert -O qcow2 -o cluster_size=4k -o lazy_refcounts=on TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
image: TEST_DIR/t.IMGFMT.base
file format: IMGFMT
virtual size: 128M (134217728 bytes)
cluster_size: 4096
Format specific information:
    compat: 1.1
    lazy refcounts: true
    refcount bits: 16
    corrupt: false

Testing: convert -O qcow2 -o cluster_size=4k -o lazy_refcounts=on -o cluster_size=8k TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
image: TEST_DIR/t.IMGFMT.base
file format: IMGFMT
virtual size: 128M (134217728 bytes)
cluster_size: 8192
Format specific information:
    compat: 1.1
    lazy refcounts: true
    refcount bits: 16
    corrupt: false

Testing: convert -O qcow2 -o cluster_size=4k,cluster_size=8k TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
image: TEST_DIR/t.IMGFMT.base
file format: IMGFMT
virtual size: 128M (134217728 bytes)
cluster_size: 8192

=== convert: help for -o ===

Testing: convert -O qcow2 -o help TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: convert -O qcow2 -o ? TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: convert -O qcow2 -o cluster_size=4k,help TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: convert -O qcow2 -o cluster_size=4k,? TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: convert -O qcow2 -o help,cluster_size=4k TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: convert -O qcow2 -o ?,cluster_size=4k TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: convert -O qcow2 -o cluster_size=4k -o help TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: convert -O qcow2 -o cluster_size=4k -o ? TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  nocow=<bool (on/off)>  - Turn off copy-on-write (valid only on btrfs)
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: convert -O qcow2 -o backing_file=TEST_DIR/t.qcow2,,help TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
qemu-img: Could not open 'TEST_DIR/t.qcow2.base': Could not open backing file: Could not open 'TEST_DIR/t.qcow2,help': No such file or directory

Testing: convert -O qcow2 -o backing_file=TEST_DIR/t.qcow2,,? TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
qemu-img: Could not open 'TEST_DIR/t.qcow2.base': Could not open backing file: Could not open 'TEST_DIR/t.qcow2,?': No such file or directory

Testing: convert -O qcow2 -o backing_file=TEST_DIR/t.qcow2, -o help TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
qemu-img: Invalid option list: backing_file=TEST_DIR/t.qcow2,

Testing: convert -O qcow2 -o backing_file=TEST_DIR/t.qcow2 -o ,help TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
qemu-img: Invalid option list: ,help

Testing: convert -O qcow2 -o backing_file=TEST_DIR/t.qcow2 -o ,, -o help TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.base
qemu-img: Invalid option list: ,,

Testing: convert -O qcow2 -o help
Supported options:
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Testing: convert -o help
Supported options:
  size=<size>            - Virtual disk size

Testing: convert -O bochs -o help
qemu-img: Format driver 'bochs' does not support image creation

=== convert: -C and other options ===

Testing: convert -C -S 4k -O qcow2 TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.target
qemu-img: Cannot enable copy offloading when -S is used

Testing: convert -C -S 8k -O qcow2 TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.target
qemu-img: Cannot enable copy offloading when -S is used

Testing: convert -C -c -O qcow2 TEST_DIR/t.qcow2 TEST_DIR/t.qcow2.target
qemu-img: Cannot enable copy offloading when -c is used

=== amend: Options specified more than once ===

Testing: amend -f foo -f qcow2 -o lazy_refcounts=on TEST_DIR/t.qcow2
image: TEST_DIR/t.IMGFMT
file format: IMGFMT
virtual size: 128M (134217728 bytes)
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: true
    refcount bits: 16
    corrupt: false

Testing: amend -f qcow2 -o size=130M -o lazy_refcounts=off TEST_DIR/t.qcow2
image: TEST_DIR/t.IMGFMT
file format: IMGFMT
virtual size: 130M (136314880 bytes)
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: false
    refcount bits: 16
    corrupt: false

Testing: amend -f qcow2 -o size=8M -o lazy_refcounts=on -o size=132M TEST_DIR/t.qcow2
image: TEST_DIR/t.IMGFMT
file format: IMGFMT
virtual size: 132M (138412032 bytes)
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: true
    refcount bits: 16
    corrupt: false

Testing: amend -f qcow2 -o size=4M,size=148M TEST_DIR/t.qcow2
image: TEST_DIR/t.IMGFMT
file format: IMGFMT
virtual size: 148M (155189248 bytes)
cluster_size: 65536

=== amend: help for -o ===

Testing: amend -f qcow2 -o help TEST_DIR/t.qcow2
Creation options for 'qcow2':
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Note that not all of these options may be amendable.

Testing: amend -f qcow2 -o ? TEST_DIR/t.qcow2
Creation options for 'qcow2':
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Note that not all of these options may be amendable.

Testing: amend -f qcow2 -o cluster_size=4k,help TEST_DIR/t.qcow2
Creation options for 'qcow2':
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Note that not all of these options may be amendable.

Testing: amend -f qcow2 -o cluster_size=4k,? TEST_DIR/t.qcow2
Creation options for 'qcow2':
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Note that not all of these options may be amendable.

Testing: amend -f qcow2 -o help,cluster_size=4k TEST_DIR/t.qcow2
Creation options for 'qcow2':
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Note that not all of these options may be amendable.

Testing: amend -f qcow2 -o ?,cluster_size=4k TEST_DIR/t.qcow2
Creation options for 'qcow2':
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Note that not all of these options may be amendable.

Testing: amend -f qcow2 -o cluster_size=4k -o help TEST_DIR/t.qcow2
Creation options for 'qcow2':
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Note that not all of these options may be amendable.

Testing: amend -f qcow2 -o cluster_size=4k -o ? TEST_DIR/t.qcow2
Creation options for 'qcow2':
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Note that not all of these options may be amendable.

Testing: amend -f qcow2 -o backing_file=TEST_DIR/t.qcow2,,help TEST_DIR/t.qcow2

Testing: rebase -u -b  -f qcow2 TEST_DIR/t.qcow2

Testing: amend -f qcow2 -o backing_file=TEST_DIR/t.qcow2,,? TEST_DIR/t.qcow2

Testing: rebase -u -b  -f qcow2 TEST_DIR/t.qcow2

Testing: amend -f qcow2 -o backing_file=TEST_DIR/t.qcow2, -o help TEST_DIR/t.qcow2
qemu-img: Invalid option list: backing_file=TEST_DIR/t.qcow2,

Testing: amend -f qcow2 -o backing_file=TEST_DIR/t.qcow2 -o ,help TEST_DIR/t.qcow2
qemu-img: Invalid option list: ,help

Testing: amend -f qcow2 -o backing_file=TEST_DIR/t.qcow2 -o ,, -o help TEST_DIR/t.qcow2
qemu-img: Invalid option list: ,,

Testing: amend -f qcow2 -o help
Creation options for 'qcow2':
  backing_file=<str>     - File name of a base image
  backing_fmt=<str>      - Image format of the base image
  cluster_size=<size>    - qcow2 cluster size
  compat=<str>           - Compatibility level (0.10 or 1.1)
  encrypt.cipher-alg=<str> - Name of encryption cipher algorithm
  encrypt.cipher-mode=<str> - Name of encryption cipher mode
  encrypt.format=<str>   - Encrypt the image, format choices: 'aes', 'luks'
  encrypt.hash-alg=<str> - Name of encryption hash algorithm
  encrypt.iter-time=<num> - Time to spend in PBKDF in milliseconds
  encrypt.ivgen-alg=<str> - Name of IV generator algorithm
  encrypt.ivgen-hash-alg=<str> - Name of IV generator hash algorithm
  encrypt.key-secret=<str> - ID of secret providing qcow AES key or LUKS passphrase
  encryption=<bool (on/off)> - Encrypt the image with format 'aes'. (Deprecated in favor of encrypt.format=aes)
  lazy_refcounts=<bool (on/off)> - Postpone refcount updates
  preallocation=<str>    - Preallocation mode (allowed values: off, metadata, falloc, full)
  refcount_bits=<num>    - Width of a reference count entry in bits
  size=<size>            - Virtual disk size

Note that not all of these options may be amendable.

Testing: convert -o help
Supported options:
  size=<size>            - Virtual disk size

Testing: amend -f bochs -o help
qemu-img: Format driver 'bochs' does not support option amendment
*** done
