1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
device: 0.874
boot: 0.751
VMM: 0.751
risc-v: 0.726
kernel: 0.719
KVM: 0.669
x86: 0.669
arm: 0.631
ppc: 0.610
graphic: 0.606
network: 0.588
hypervisor: 0.569
semantic: 0.540
architecture: 0.538
user-level: 0.511
i386: 0.486
vnc: 0.483
debug: 0.476
register: 0.473
PID: 0.459
TCG: 0.454
peripherals: 0.451
performance: 0.450
socket: 0.411
virtual: 0.411
assembly: 0.291
permissions: 0.164
mistranslation: 0.115
files: 0.016
command line option (fw_cfg) not being treated as opaque and generates error "short-form boolean option 'x' deprecated"
Description of problem:
I'm trying to run qemu with `fw_cfg` arguments. With a full example I am trying to provide an ignition configuration a flatcar VM using a 'string' parameter which is JSON (rather than a file parameter).
Running qemu with command line options where the fields have arbitrary data that should be opaque to qemu are being interpreted and cause the command line argument parsing the fail. I have tried putting quotes and double quotes around various parts of the command without success.
Sorry, but I haven't tested this with latest (v8.1.0.rc4 / v8.0.4)
Examples:
```# qemu-system-x86_64 -fw_cfg name=z,string=a,b
qemu-system-x86_64: -fw_cfg name=z,string=a,b: warning: short-form boolean option 'b' deprecated
Please use b=on instead
qemu-system-x86_64: -fw_cfg name=z,string=a,b: Invalid parameter 'b'
```
Single quotes around the `string` value:
```
# qemu-system-x86_64 -fw_cfg name=z,string='a,b'
qemu-system-x86_64: -fw_cfg name=z,string=a,b: warning: short-form boolean option 'b' deprecated
Please use b=on instead
qemu-system-x86_64: -fw_cfg name=z,string=a,b: Invalid parameter 'b'
```
Double quotes around the `string` value
```
# qemu-system-x86_64 -fw_cfg name=z,string="a,b"
qemu-system-x86_64: -fw_cfg name=z,string=a,b: warning: short-form boolean option 'b' deprecated
Please use b=on instead
qemu-system-x86_64: -fw_cfg name=z,string=a,b: Invalid parameter 'b'
```
Double quotes around the whole `fw_cfg` option value:
```
# qemu-system-x86_64 -fw_cfg "name=z,string=a,b"
qemu-system-x86_64: -fw_cfg name=z,string=a,b: warning: short-form boolean option 'b' deprecated
Please use b=on instead
qemu-system-x86_64: -fw_cfg name=z,string=a,b: Invalid parameter 'b'
```
|