1=== Successful image creation (defaults) === 2 3{"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "file", "filename": "TEST_DIR/PID-t.luks", "size": 0}}} 4{"return": {}} 5{"execute": "job-dismiss", "arguments": {"id": "job0"}} 6{"return": {}} 7 8{"execute": "blockdev-add", "arguments": {"driver": "file", "filename": "TEST_DIR/PID-t.luks", "node-name": "imgfile"}} 9{"return": {}} 10{"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "luks", "file": "imgfile", "iter-time": 10, "key-secret": "keysec0", "size": 134217728}}} 11{"return": {}} 12{"execute": "job-dismiss", "arguments": {"id": "job0"}} 13{"return": {}} 14 15image: json:{"driver": "IMGFMT", "file": {"driver": "file", "filename": "TEST_IMG"}, "key-secret": "keysec0"} 16file format: IMGFMT 17virtual size: 128 MiB (134217728 bytes) 18encrypted: yes 19Format specific information: 20 ivgen alg: plain64 21 detached header: false 22 hash alg: sha256 23 cipher alg: aes-256 24 uuid: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX 25 cipher mode: xts 26 slots: 27 [0]: 28 active: true 29 iters: XXX 30 key offset: 4096 31 stripes: 4000 32 [1]: 33 active: false 34 key offset: 262144 35 [2]: 36 active: false 37 key offset: 520192 38 [3]: 39 active: false 40 key offset: 778240 41 [4]: 42 active: false 43 key offset: 1036288 44 [5]: 45 active: false 46 key offset: 1294336 47 [6]: 48 active: false 49 key offset: 1552384 50 [7]: 51 active: false 52 key offset: 1810432 53 payload offset: 2068480 54 master key iters: XXX 55 56=== Successful image creation (with non-default options) === 57 58{"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "file", "filename": "TEST_DIR/PID-t.luks", "size": 0}}} 59{"return": {}} 60{"execute": "job-dismiss", "arguments": {"id": "job0"}} 61{"return": {}} 62 63{"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"cipher-alg": "aes-128", "cipher-mode": "cbc", "driver": "luks", "file": {"driver": "file", "filename": "TEST_DIR/PID-t.luks"}, "hash-alg": "sha1", "iter-time": 10, "ivgen-alg": "plain64", "ivgen-hash-alg": "md5", "key-secret": "keysec0", "size": 67108864}}} 64{"return": {}} 65{"execute": "job-dismiss", "arguments": {"id": "job0"}} 66{"return": {}} 67 68image: json:{"driver": "IMGFMT", "file": {"driver": "file", "filename": "TEST_IMG"}, "key-secret": "keysec0"} 69file format: IMGFMT 70virtual size: 64 MiB (67108864 bytes) 71encrypted: yes 72Format specific information: 73 ivgen alg: plain64 74 detached header: false 75 hash alg: sha1 76 cipher alg: aes-128 77 uuid: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX 78 cipher mode: cbc 79 slots: 80 [0]: 81 active: true 82 iters: XXX 83 key offset: 4096 84 stripes: 4000 85 [1]: 86 active: false 87 key offset: 69632 88 [2]: 89 active: false 90 key offset: 135168 91 [3]: 92 active: false 93 key offset: 200704 94 [4]: 95 active: false 96 key offset: 266240 97 [5]: 98 active: false 99 key offset: 331776 100 [6]: 101 active: false 102 key offset: 397312 103 [7]: 104 active: false 105 key offset: 462848 106 payload offset: 528384 107 master key iters: XXX 108 109=== Invalid BlockdevRef === 110 111{"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "luks", "file": "this doesn't exist", "size": 67108864}}} 112{"return": {}} 113Job failed: Cannot find device='this doesn't exist' nor node-name='this doesn't exist' 114{"execute": "job-dismiss", "arguments": {"id": "job0"}} 115{"return": {}} 116 117=== Zero size === 118 119{"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "luks", "file": "node0", "iter-time": 10, "key-secret": "keysec0", "size": 0}}} 120{"return": {}} 121{"execute": "job-dismiss", "arguments": {"id": "job0"}} 122{"return": {}} 123 124image: json:{"driver": "IMGFMT", "file": {"driver": "file", "filename": "TEST_IMG"}, "key-secret": "keysec0"} 125file format: IMGFMT 126virtual size: 0 B (0 bytes) 127encrypted: yes 128Format specific information: 129 ivgen alg: plain64 130 detached header: false 131 hash alg: sha256 132 cipher alg: aes-256 133 uuid: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX 134 cipher mode: xts 135 slots: 136 [0]: 137 active: true 138 iters: XXX 139 key offset: 4096 140 stripes: 4000 141 [1]: 142 active: false 143 key offset: 262144 144 [2]: 145 active: false 146 key offset: 520192 147 [3]: 148 active: false 149 key offset: 778240 150 [4]: 151 active: false 152 key offset: 1036288 153 [5]: 154 active: false 155 key offset: 1294336 156 [6]: 157 active: false 158 key offset: 1552384 159 [7]: 160 active: false 161 key offset: 1810432 162 payload offset: 2068480 163 master key iters: XXX 164 165=== Invalid sizes === 166 167{"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "luks", "file": "node0", "key-secret": "keysec0", "size": 18446744073709551104}}} 168{"return": {}} 169Job failed: The requested file size is too large 170{"execute": "job-dismiss", "arguments": {"id": "job0"}} 171{"return": {}} 172 173{"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "luks", "file": "node0", "key-secret": "keysec0", "size": 9223372036854775808}}} 174{"return": {}} 175Job failed: The requested file size is too large 176{"execute": "job-dismiss", "arguments": {"id": "job0"}} 177{"return": {}} 178 179{"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "luks", "file": "node0", "key-secret": "keysec0", "size": 9223372036854775296}}} 180{"return": {}} 181Job failed: The requested file size is too large 182{"execute": "job-dismiss", "arguments": {"id": "job0"}} 183{"return": {}} 184 185=== Resize image with invalid sizes === 186 187{"execute": "block_resize", "arguments": {"node-name": "node1", "size": 9223372036854775296}} 188{"error": {"class": "GenericError", "desc": "offset(9223372036854775296) exceeds maximum(9223372035781033984)"}} 189{"execute": "block_resize", "arguments": {"node-name": "node1", "size": 9223372036854775808}} 190{"error": {"class": "GenericError", "desc": "Invalid parameter type for 'size', expected: integer"}} 191{"execute": "block_resize", "arguments": {"node-name": "node1", "size": 18446744073709551104}} 192{"error": {"class": "GenericError", "desc": "Invalid parameter type for 'size', expected: integer"}} 193{"execute": "block_resize", "arguments": {"node-name": "node1", "size": -9223372036854775808}} 194{"error": {"class": "GenericError", "desc": "Parameter 'size' expects a >0 size"}} 195image: json:{"driver": "IMGFMT", "file": {"driver": "file", "filename": "TEST_IMG"}, "key-secret": "keysec0"} 196file format: IMGFMT 197virtual size: 0 B (0 bytes) 198encrypted: yes 199Format specific information: 200 ivgen alg: plain64 201 detached header: false 202 hash alg: sha256 203 cipher alg: aes-256 204 uuid: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX 205 cipher mode: xts 206 slots: 207 [0]: 208 active: true 209 iters: XXX 210 key offset: 4096 211 stripes: 4000 212 [1]: 213 active: false 214 key offset: 262144 215 [2]: 216 active: false 217 key offset: 520192 218 [3]: 219 active: false 220 key offset: 778240 221 [4]: 222 active: false 223 key offset: 1036288 224 [5]: 225 active: false 226 key offset: 1294336 227 [6]: 228 active: false 229 key offset: 1552384 230 [7]: 231 active: false 232 key offset: 1810432 233 payload offset: 2068480 234 master key iters: XXX 235 236