1 [ 1 [ 2 { 2 { 3 "id": "5124", 3 "id": "5124", 4 "name": "Add mirred mirror to egress a 4 "name": "Add mirred mirror to egress action", 5 "category": [ 5 "category": [ 6 "actions", 6 "actions", 7 "mirred" 7 "mirred" 8 ], 8 ], 9 "plugins": { 9 "plugins": { 10 "requires": "nsPlugin" 10 "requires": "nsPlugin" 11 }, 11 }, 12 "setup": [ 12 "setup": [ 13 [ 13 [ 14 "$TC actions flush action mirr 14 "$TC actions flush action mirred", 15 0, 15 0, 16 1, 16 1, 17 255 17 255 18 ] 18 ] 19 ], 19 ], 20 "cmdUnderTest": "$TC actions add actio 20 "cmdUnderTest": "$TC actions add action mirred egress mirror index 1 dev lo", 21 "expExitCode": "0", 21 "expExitCode": "0", 22 "verifyCmd": "$TC actions list action 22 "verifyCmd": "$TC actions list action mirred", 23 "matchPattern": "action order [0-9]*: 23 "matchPattern": "action order [0-9]*: mirred \\(Egress Mirror to device lo\\).*index 1 ref", 24 "matchCount": "1", 24 "matchCount": "1", 25 "teardown": [ 25 "teardown": [ 26 "$TC actions flush action mirred" 26 "$TC actions flush action mirred" 27 ] 27 ] 28 }, 28 }, 29 { 29 { 30 "id": "6fb4", 30 "id": "6fb4", 31 "name": "Add mirred redirect to egress 31 "name": "Add mirred redirect to egress action", 32 "category": [ 32 "category": [ 33 "actions", 33 "actions", 34 "mirred" 34 "mirred" 35 ], 35 ], 36 "plugins": { 36 "plugins": { 37 "requires": "nsPlugin" 37 "requires": "nsPlugin" 38 }, 38 }, 39 "setup": [ 39 "setup": [ 40 [ 40 [ 41 "$TC actions flush action mirr 41 "$TC actions flush action mirred", 42 0, 42 0, 43 1, 43 1, 44 255 44 255 45 ] 45 ] 46 ], 46 ], 47 "cmdUnderTest": "$TC actions add actio 47 "cmdUnderTest": "$TC actions add action mirred egress redirect index 2 dev lo action pipe", 48 "expExitCode": "0", 48 "expExitCode": "0", 49 "verifyCmd": "$TC actions list action 49 "verifyCmd": "$TC actions list action mirred", 50 "matchPattern": "action order [0-9]*: 50 "matchPattern": "action order [0-9]*: mirred \\(Egress Redirect to device lo\\).*index 2 ref", 51 "matchCount": "1", 51 "matchCount": "1", 52 "teardown": [ 52 "teardown": [ 53 "$TC actions flush action mirred", 53 "$TC actions flush action mirred", 54 "$TC actions flush action gact" 54 "$TC actions flush action gact" 55 ] 55 ] 56 }, 56 }, 57 { 57 { 58 "id": "ba38", 58 "id": "ba38", 59 "name": "Get mirred actions", 59 "name": "Get mirred actions", 60 "category": [ 60 "category": [ 61 "actions", 61 "actions", 62 "mirred" 62 "mirred" 63 ], 63 ], 64 "plugins": { 64 "plugins": { 65 "requires": "nsPlugin" 65 "requires": "nsPlugin" 66 }, 66 }, 67 "setup": [ 67 "setup": [ 68 [ 68 [ 69 "$TC actions flush action mirr 69 "$TC actions flush action mirred", 70 0, 70 0, 71 1, 71 1, 72 255 72 255 73 ], 73 ], 74 "$TC actions add action mirred egr 74 "$TC actions add action mirred egress mirror index 1 dev lo", 75 "$TC actions add action mirred egr 75 "$TC actions add action mirred egress redirect index 2 dev lo" 76 ], 76 ], 77 "cmdUnderTest": "$TC actions show acti 77 "cmdUnderTest": "$TC actions show action mirred", 78 "expExitCode": "0", 78 "expExitCode": "0", 79 "verifyCmd": "$TC actions list action 79 "verifyCmd": "$TC actions list action mirred", 80 "matchPattern": "[Mirror|Redirect] to 80 "matchPattern": "[Mirror|Redirect] to device lo", 81 "matchCount": "2", 81 "matchCount": "2", 82 "teardown": [ 82 "teardown": [ 83 "$TC actions flush action mirred" 83 "$TC actions flush action mirred" 84 ] 84 ] 85 }, 85 }, 86 { 86 { 87 "id": "d7c0", 87 "id": "d7c0", 88 "name": "Add invalid mirred direction" 88 "name": "Add invalid mirred direction", 89 "category": [ 89 "category": [ 90 "actions", 90 "actions", 91 "mirred" 91 "mirred" 92 ], 92 ], 93 "plugins": { 93 "plugins": { 94 "requires": "nsPlugin" 94 "requires": "nsPlugin" 95 }, 95 }, 96 "setup": [ 96 "setup": [ 97 [ 97 [ 98 "$TC actions flush action mirr 98 "$TC actions flush action mirred", 99 0, 99 0, 100 1, 100 1, 101 255 101 255 102 ] 102 ] 103 ], 103 ], 104 "cmdUnderTest": "$TC actions add actio 104 "cmdUnderTest": "$TC actions add action mirred inbound mirror index 20 dev lo", 105 "expExitCode": "255", 105 "expExitCode": "255", 106 "verifyCmd": "$TC actions list action 106 "verifyCmd": "$TC actions list action mirred", 107 "matchPattern": "action order [0-9]*: 107 "matchPattern": "action order [0-9]*: mirred \\(.*to device lo\\).*index 20 ref", 108 "matchCount": "0", 108 "matchCount": "0", 109 "teardown": [ 109 "teardown": [ 110 "$TC actions flush action mirred" 110 "$TC actions flush action mirred" 111 ] 111 ] 112 }, 112 }, 113 { 113 { 114 "id": "e213", 114 "id": "e213", 115 "name": "Add invalid mirred action", 115 "name": "Add invalid mirred action", 116 "category": [ 116 "category": [ 117 "actions", 117 "actions", 118 "mirred" 118 "mirred" 119 ], 119 ], 120 "plugins": { 120 "plugins": { 121 "requires": "nsPlugin" 121 "requires": "nsPlugin" 122 }, 122 }, 123 "setup": [ 123 "setup": [ 124 [ 124 [ 125 "$TC actions flush action mirr 125 "$TC actions flush action mirred", 126 0, 126 0, 127 1, 127 1, 128 255 128 255 129 ] 129 ] 130 ], 130 ], 131 "cmdUnderTest": "$TC actions add actio 131 "cmdUnderTest": "$TC actions add action mirred egress remirror index 20 dev lo", 132 "expExitCode": "255", 132 "expExitCode": "255", 133 "verifyCmd": "$TC actions list action 133 "verifyCmd": "$TC actions list action mirred", 134 "matchPattern": "action order [0-9]*: 134 "matchPattern": "action order [0-9]*: mirred \\(Egress.*to device lo\\).*index 20 ref", 135 "matchCount": "0", 135 "matchCount": "0", 136 "teardown": [ 136 "teardown": [ 137 "$TC actions flush action mirred" 137 "$TC actions flush action mirred" 138 ] 138 ] 139 }, 139 }, 140 { 140 { 141 "id": "2d89", 141 "id": "2d89", 142 "name": "Add mirred action with invali 142 "name": "Add mirred action with invalid device", 143 "category": [ 143 "category": [ 144 "actions", 144 "actions", 145 "mirred" 145 "mirred" 146 ], 146 ], 147 "plugins": { 147 "plugins": { 148 "requires": "nsPlugin" 148 "requires": "nsPlugin" 149 }, 149 }, 150 "setup": [ 150 "setup": [ 151 [ 151 [ 152 "$TC actions flush action mirr 152 "$TC actions flush action mirred", 153 0, 153 0, 154 1, 154 1, 155 255 155 255 156 ] 156 ] 157 ], 157 ], 158 "cmdUnderTest": "$TC actions add actio 158 "cmdUnderTest": "$TC actions add action mirred egress mirror index 20 dev eltoh", 159 "expExitCode": "255", 159 "expExitCode": "255", 160 "verifyCmd": "$TC actions list action 160 "verifyCmd": "$TC actions list action mirred", 161 "matchPattern": "action order [0-9]*: 161 "matchPattern": "action order [0-9]*: mirred \\(.*to device eltoh\\).*index 20 ref", 162 "matchCount": "0", 162 "matchCount": "0", 163 "teardown": [ 163 "teardown": [ 164 "$TC actions flush action mirred" 164 "$TC actions flush action mirred" 165 ] 165 ] 166 }, 166 }, 167 { 167 { 168 "id": "300b", 168 "id": "300b", 169 "name": "Add mirred action with duplic 169 "name": "Add mirred action with duplicate index", 170 "category": [ 170 "category": [ 171 "actions", 171 "actions", 172 "mirred" 172 "mirred" 173 ], 173 ], 174 "plugins": { 174 "plugins": { 175 "requires": "nsPlugin" 175 "requires": "nsPlugin" 176 }, 176 }, 177 "setup": [ 177 "setup": [ 178 [ 178 [ 179 "$TC actions flush action mirr 179 "$TC actions flush action mirred", 180 0, 180 0, 181 1, 181 1, 182 255 182 255 183 ], 183 ], 184 "$TC actions add action mirred egr 184 "$TC actions add action mirred egress redirect index 15 dev lo" 185 ], 185 ], 186 "cmdUnderTest": "$TC actions add actio 186 "cmdUnderTest": "$TC actions add action mirred egress mirror index 15 dev lo", 187 "expExitCode": "255", 187 "expExitCode": "255", 188 "verifyCmd": "$TC actions list action 188 "verifyCmd": "$TC actions list action mirred", 189 "matchPattern": "action order [0-9]*: 189 "matchPattern": "action order [0-9]*: mirred \\(.*to device lo\\).*index 15 ref", 190 "matchCount": "1", 190 "matchCount": "1", 191 "teardown": [ 191 "teardown": [ 192 "$TC actions flush action mirred" 192 "$TC actions flush action mirred" 193 ] 193 ] 194 }, 194 }, 195 { 195 { 196 "id": "8917", 196 "id": "8917", 197 "name": "Add mirred mirror action with 197 "name": "Add mirred mirror action with control pass", 198 "category": [ 198 "category": [ 199 "actions", 199 "actions", 200 "mirred" 200 "mirred" 201 ], 201 ], 202 "plugins": { 202 "plugins": { 203 "requires": "nsPlugin" 203 "requires": "nsPlugin" 204 }, 204 }, 205 "setup": [ 205 "setup": [ 206 [ 206 [ 207 "$TC actions flush action mirr 207 "$TC actions flush action mirred", 208 0, 208 0, 209 1, 209 1, 210 255 210 255 211 ] 211 ] 212 ], 212 ], 213 "cmdUnderTest": "$TC actions add actio 213 "cmdUnderTest": "$TC actions add action mirred ingress mirror dev lo pass index 1", 214 "expExitCode": "0", 214 "expExitCode": "0", 215 "verifyCmd": "$TC actions get action m 215 "verifyCmd": "$TC actions get action mirred index 1", 216 "matchPattern": "action order [0-9]*: 216 "matchPattern": "action order [0-9]*: mirred \\(Ingress Mirror to device lo\\) pass.*index 1 ref", 217 "matchCount": "1", 217 "matchCount": "1", 218 "teardown": [ 218 "teardown": [ 219 "$TC actions flush action mirred" 219 "$TC actions flush action mirred" 220 ] 220 ] 221 }, 221 }, 222 { 222 { 223 "id": "1054", 223 "id": "1054", 224 "name": "Add mirred mirror action with 224 "name": "Add mirred mirror action with control pipe", 225 "category": [ 225 "category": [ 226 "actions", 226 "actions", 227 "mirred" 227 "mirred" 228 ], 228 ], 229 "plugins": { 229 "plugins": { 230 "requires": "nsPlugin" 230 "requires": "nsPlugin" 231 }, 231 }, 232 "setup": [ 232 "setup": [ 233 [ 233 [ 234 "$TC actions flush action mirr 234 "$TC actions flush action mirred", 235 0, 235 0, 236 1, 236 1, 237 255 237 255 238 ] 238 ] 239 ], 239 ], 240 "cmdUnderTest": "$TC actions add actio 240 "cmdUnderTest": "$TC actions add action mirred ingress mirror dev lo pipe index 15", 241 "expExitCode": "0", 241 "expExitCode": "0", 242 "verifyCmd": "$TC actions get action m 242 "verifyCmd": "$TC actions get action mirred index 15", 243 "matchPattern": "action order [0-9]*: 243 "matchPattern": "action order [0-9]*: mirred \\(Ingress Mirror to device lo\\) pipe.*index 15 ref", 244 "matchCount": "1", 244 "matchCount": "1", 245 "teardown": [ 245 "teardown": [ 246 "$TC actions flush action mirred" 246 "$TC actions flush action mirred" 247 ] 247 ] 248 }, 248 }, 249 { 249 { 250 "id": "9887", 250 "id": "9887", 251 "name": "Add mirred mirror action with 251 "name": "Add mirred mirror action with control continue", 252 "category": [ 252 "category": [ 253 "actions", 253 "actions", 254 "mirred" 254 "mirred" 255 ], 255 ], 256 "plugins": { 256 "plugins": { 257 "requires": "nsPlugin" 257 "requires": "nsPlugin" 258 }, 258 }, 259 "setup": [ 259 "setup": [ 260 [ 260 [ 261 "$TC actions flush action mirr 261 "$TC actions flush action mirred", 262 0, 262 0, 263 1, 263 1, 264 255 264 255 265 ] 265 ] 266 ], 266 ], 267 "cmdUnderTest": "$TC actions add actio 267 "cmdUnderTest": "$TC actions add action mirred ingress mirror dev lo continue index 15", 268 "expExitCode": "0", 268 "expExitCode": "0", 269 "verifyCmd": "$TC actions get action m 269 "verifyCmd": "$TC actions get action mirred index 15", 270 "matchPattern": "action order [0-9]*: 270 "matchPattern": "action order [0-9]*: mirred \\(Ingress Mirror to device lo\\) continue.*index 15 ref", 271 "matchCount": "1", 271 "matchCount": "1", 272 "teardown": [ 272 "teardown": [ 273 "$TC actions flush action mirred" 273 "$TC actions flush action mirred" 274 ] 274 ] 275 }, 275 }, 276 { 276 { 277 "id": "e4aa", 277 "id": "e4aa", 278 "name": "Add mirred mirror action with 278 "name": "Add mirred mirror action with control reclassify", 279 "category": [ 279 "category": [ 280 "actions", 280 "actions", 281 "mirred" 281 "mirred" 282 ], 282 ], 283 "plugins": { 283 "plugins": { 284 "requires": "nsPlugin" 284 "requires": "nsPlugin" 285 }, 285 }, 286 "setup": [ 286 "setup": [ 287 [ 287 [ 288 "$TC actions flush action mirr 288 "$TC actions flush action mirred", 289 0, 289 0, 290 1, 290 1, 291 255 291 255 292 ] 292 ] 293 ], 293 ], 294 "cmdUnderTest": "$TC actions add actio 294 "cmdUnderTest": "$TC actions add action mirred ingress mirror dev lo reclassify index 150", 295 "expExitCode": "0", 295 "expExitCode": "0", 296 "verifyCmd": "$TC actions get action m 296 "verifyCmd": "$TC actions get action mirred index 150", 297 "matchPattern": "action order [0-9]*: 297 "matchPattern": "action order [0-9]*: mirred \\(Ingress Mirror to device lo\\) reclassify.*index 150 ref", 298 "matchCount": "1", 298 "matchCount": "1", 299 "teardown": [ 299 "teardown": [ 300 "$TC actions flush action mirred" 300 "$TC actions flush action mirred" 301 ] 301 ] 302 }, 302 }, 303 { 303 { 304 "id": "ece9", 304 "id": "ece9", 305 "name": "Add mirred mirror action with 305 "name": "Add mirred mirror action with control drop", 306 "category": [ 306 "category": [ 307 "actions", 307 "actions", 308 "mirred" 308 "mirred" 309 ], 309 ], 310 "plugins": { 310 "plugins": { 311 "requires": "nsPlugin" 311 "requires": "nsPlugin" 312 }, 312 }, 313 "setup": [ 313 "setup": [ 314 [ 314 [ 315 "$TC actions flush action mirr 315 "$TC actions flush action mirred", 316 0, 316 0, 317 1, 317 1, 318 255 318 255 319 ] 319 ] 320 ], 320 ], 321 "cmdUnderTest": "$TC actions add actio 321 "cmdUnderTest": "$TC actions add action mirred ingress mirror dev lo drop index 99", 322 "expExitCode": "0", 322 "expExitCode": "0", 323 "verifyCmd": "$TC actions get action m 323 "verifyCmd": "$TC actions get action mirred index 99", 324 "matchPattern": "action order [0-9]*: 324 "matchPattern": "action order [0-9]*: mirred \\(Ingress Mirror to device lo\\) drop.*index 99 ref", 325 "matchCount": "1", 325 "matchCount": "1", 326 "teardown": [ 326 "teardown": [ 327 "$TC actions flush action mirred" 327 "$TC actions flush action mirred" 328 ] 328 ] 329 }, 329 }, 330 { 330 { 331 "id": "0031", 331 "id": "0031", 332 "name": "Add mirred mirror action with 332 "name": "Add mirred mirror action with control jump", 333 "category": [ 333 "category": [ 334 "actions", 334 "actions", 335 "mirred" 335 "mirred" 336 ], 336 ], 337 "plugins": { 337 "plugins": { 338 "requires": "nsPlugin" 338 "requires": "nsPlugin" 339 }, 339 }, 340 "setup": [ 340 "setup": [ 341 [ 341 [ 342 "$TC actions flush action mirr 342 "$TC actions flush action mirred", 343 0, 343 0, 344 1, 344 1, 345 255 345 255 346 ] 346 ] 347 ], 347 ], 348 "cmdUnderTest": "$TC actions add actio 348 "cmdUnderTest": "$TC actions add action mirred ingress mirror dev lo jump 10 index 99", 349 "expExitCode": "0", 349 "expExitCode": "0", 350 "verifyCmd": "$TC actions get action m 350 "verifyCmd": "$TC actions get action mirred index 99", 351 "matchPattern": "action order [0-9]*: 351 "matchPattern": "action order [0-9]*: mirred \\(Ingress Mirror to device lo\\) jump 10.*index 99 ref", 352 "matchCount": "1", 352 "matchCount": "1", 353 "teardown": [ 353 "teardown": [ 354 "$TC actions flush action mirred" 354 "$TC actions flush action mirred" 355 ] 355 ] 356 }, 356 }, 357 { 357 { 358 "id": "407c", 358 "id": "407c", 359 "name": "Add mirred mirror action with 359 "name": "Add mirred mirror action with cookie", 360 "category": [ 360 "category": [ 361 "actions", 361 "actions", 362 "mirred" 362 "mirred" 363 ], 363 ], 364 "plugins": { 364 "plugins": { 365 "requires": "nsPlugin" 365 "requires": "nsPlugin" 366 }, 366 }, 367 "setup": [ 367 "setup": [ 368 [ 368 [ 369 "$TC actions flush action mirr 369 "$TC actions flush action mirred", 370 0, 370 0, 371 1, 371 1, 372 255 372 255 373 ] 373 ] 374 ], 374 ], 375 "cmdUnderTest": "$TC actions add actio 375 "cmdUnderTest": "$TC actions add action mirred ingress mirror dev lo reclassify cookie aa11bb22cc33dd44ee55", 376 "expExitCode": "0", 376 "expExitCode": "0", 377 "verifyCmd": "$TC actions ls action mi 377 "verifyCmd": "$TC actions ls action mirred", 378 "matchPattern": "action order [0-9]*: 378 "matchPattern": "action order [0-9]*: mirred \\(Ingress Mirror to device lo\\) reclassify.*cookie aa11bb22cc33dd44ee55", 379 "matchCount": "1", 379 "matchCount": "1", 380 "teardown": [ 380 "teardown": [ 381 "$TC actions flush action mirred" 381 "$TC actions flush action mirred" 382 ] 382 ] 383 }, 383 }, 384 { 384 { 385 "id": "8b69", 385 "id": "8b69", 386 "name": "Add mirred mirror action with 386 "name": "Add mirred mirror action with index at 32-bit maximum", 387 "category": [ 387 "category": [ 388 "actions", 388 "actions", 389 "mirred" 389 "mirred" 390 ], 390 ], 391 "plugins": { 391 "plugins": { 392 "requires": "nsPlugin" 392 "requires": "nsPlugin" 393 }, 393 }, 394 "setup": [ 394 "setup": [ 395 [ 395 [ 396 "$TC actions flush action mirr 396 "$TC actions flush action mirred", 397 0, 397 0, 398 1, 398 1, 399 255 399 255 400 ] 400 ] 401 ], 401 ], 402 "cmdUnderTest": "$TC actions add actio 402 "cmdUnderTest": "$TC actions add action mirred ingress mirror dev lo pipe index 4294967295", 403 "expExitCode": "0", 403 "expExitCode": "0", 404 "verifyCmd": "$TC actions get action m 404 "verifyCmd": "$TC actions get action mirred index 4294967295", 405 "matchPattern": "action order [0-9]*: 405 "matchPattern": "action order [0-9]*: mirred \\(Ingress Mirror to device lo\\) pipe.*index 4294967295", 406 "matchCount": "1", 406 "matchCount": "1", 407 "teardown": [ 407 "teardown": [ 408 "$TC actions flush action mirred" 408 "$TC actions flush action mirred" 409 ] 409 ] 410 }, 410 }, 411 { 411 { 412 "id": "3f66", 412 "id": "3f66", 413 "name": "Add mirred mirror action with 413 "name": "Add mirred mirror action with index exceeding 32-bit maximum", 414 "category": [ 414 "category": [ 415 "actions", 415 "actions", 416 "mirred" 416 "mirred" 417 ], 417 ], 418 "plugins": { 418 "plugins": { 419 "requires": "nsPlugin" 419 "requires": "nsPlugin" 420 }, 420 }, 421 "setup": [ 421 "setup": [ 422 [ 422 [ 423 "$TC actions flush action mirr 423 "$TC actions flush action mirred", 424 0, 424 0, 425 1, 425 1, 426 255 426 255 427 ] 427 ] 428 ], 428 ], 429 "cmdUnderTest": "$TC actions add actio 429 "cmdUnderTest": "$TC actions add action mirred ingress mirror dev lo pipe index 429496729555", 430 "expExitCode": "255", 430 "expExitCode": "255", 431 "verifyCmd": "$TC actions get action m 431 "verifyCmd": "$TC actions get action mirred index 429496729555", 432 "matchPattern": "action order [0-9]*: 432 "matchPattern": "action order [0-9]*: mirred \\(Ingress Mirror to device lo\\) pipe.*index 429496729555", 433 "matchCount": "0", 433 "matchCount": "0", 434 "teardown": [] 434 "teardown": [] 435 }, 435 }, 436 { 436 { 437 "id": "a70e", 437 "id": "a70e", 438 "name": "Delete mirred mirror action", 438 "name": "Delete mirred mirror action", 439 "category": [ 439 "category": [ 440 "actions", 440 "actions", 441 "mirred" 441 "mirred" 442 ], 442 ], 443 "plugins": { 443 "plugins": { 444 "requires": "nsPlugin" 444 "requires": "nsPlugin" 445 }, 445 }, 446 "setup": [ 446 "setup": [ 447 [ 447 [ 448 "$TC actions flush action mirr 448 "$TC actions flush action mirred", 449 0, 449 0, 450 1, 450 1, 451 255 451 255 452 ], 452 ], 453 "$TC actions add action mirred egr 453 "$TC actions add action mirred egress mirror index 5 dev lo" 454 ], 454 ], 455 "cmdUnderTest": "$TC actions del actio 455 "cmdUnderTest": "$TC actions del action mirred index 5", 456 "expExitCode": "0", 456 "expExitCode": "0", 457 "verifyCmd": "$TC actions list action 457 "verifyCmd": "$TC actions list action mirred", 458 "matchPattern": "action order [0-9]*: 458 "matchPattern": "action order [0-9]*: mirred \\(Egress Mirror to device lo\\).*index 5 ref", 459 "matchCount": "0", 459 "matchCount": "0", 460 "teardown": [ 460 "teardown": [ 461 "$TC actions flush action mirred" 461 "$TC actions flush action mirred" 462 ] 462 ] 463 }, 463 }, 464 { 464 { 465 "id": "3fb3", 465 "id": "3fb3", 466 "name": "Delete mirred redirect action 466 "name": "Delete mirred redirect action", 467 "category": [ 467 "category": [ 468 "actions", 468 "actions", 469 "mirred" 469 "mirred" 470 ], 470 ], 471 "plugins": { 471 "plugins": { 472 "requires": "nsPlugin" 472 "requires": "nsPlugin" 473 }, 473 }, 474 "setup": [ 474 "setup": [ 475 [ 475 [ 476 "$TC actions flush action mirr 476 "$TC actions flush action mirred", 477 0, 477 0, 478 1, 478 1, 479 255 479 255 480 ], 480 ], 481 "$TC actions add action mirred egr 481 "$TC actions add action mirred egress redirect index 5 dev lo" 482 ], 482 ], 483 "cmdUnderTest": "$TC actions del actio 483 "cmdUnderTest": "$TC actions del action mirred index 5", 484 "expExitCode": "0", 484 "expExitCode": "0", 485 "verifyCmd": "$TC actions list action 485 "verifyCmd": "$TC actions list action mirred", 486 "matchPattern": "action order [0-9]*: 486 "matchPattern": "action order [0-9]*: mirred \\(Egress Redirect to device lo\\).*index 5 ref", 487 "matchCount": "0", 487 "matchCount": "0", 488 "teardown": [ 488 "teardown": [ 489 "$TC actions flush action mirred" 489 "$TC actions flush action mirred" 490 ] 490 ] 491 }, 491 }, 492 { 492 { 493 "id": "2a9a", 493 "id": "2a9a", 494 "name": "Replace mirred action with in 494 "name": "Replace mirred action with invalid goto chain control", 495 "category": [ 495 "category": [ 496 "actions", 496 "actions", 497 "mirred" 497 "mirred" 498 ], 498 ], 499 "plugins": { 499 "plugins": { 500 "requires": "nsPlugin" 500 "requires": "nsPlugin" 501 }, 501 }, 502 "setup": [ 502 "setup": [ 503 [ 503 [ 504 "$TC actions flush action mirr 504 "$TC actions flush action mirred", 505 0, 505 0, 506 1, 506 1, 507 255 507 255 508 ], 508 ], 509 "$TC actions add action mirred ing 509 "$TC actions add action mirred ingress mirror dev lo drop index 90" 510 ], 510 ], 511 "cmdUnderTest": "$TC actions replace a 511 "cmdUnderTest": "$TC actions replace action mirred ingress mirror dev lo goto chain 42 index 90 cookie c1a0c1a0", 512 "expExitCode": "255", 512 "expExitCode": "255", 513 "verifyCmd": "$TC actions get action m 513 "verifyCmd": "$TC actions get action mirred index 90", 514 "matchPattern": "action order [0-9]*: 514 "matchPattern": "action order [0-9]*: mirred \\(Ingress Mirror to device lo\\) drop.*index 90 ref", 515 "matchCount": "1", 515 "matchCount": "1", 516 "teardown": [ 516 "teardown": [ 517 "$TC actions flush action mirred" 517 "$TC actions flush action mirred" 518 ] 518 ] 519 }, 519 }, 520 { 520 { 521 "id": "4749", 521 "id": "4749", 522 "name": "Add batch of 32 mirred redire 522 "name": "Add batch of 32 mirred redirect egress actions with cookie", 523 "category": [ 523 "category": [ 524 "actions", 524 "actions", 525 "mirred" 525 "mirred" 526 ], 526 ], 527 "plugins": { 527 "plugins": { 528 "requires": "nsPlugin" 528 "requires": "nsPlugin" 529 }, 529 }, 530 "setup": [ 530 "setup": [ 531 [ 531 [ 532 "$TC actions flush action mirr 532 "$TC actions flush action mirred", 533 0, 533 0, 534 1, 534 1, 535 255 535 255 536 ] 536 ] 537 ], 537 ], 538 "cmdUnderTest": "bash -c \"for i in \\ 538 "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action mirred egress redirect dev lo index \\$i cookie aabbccddeeff112233445566778800a1 \\\"; args=\"\\$args\\$cmd\"; done && $TC actions add \\$args\"", 539 "expExitCode": "0", 539 "expExitCode": "0", 540 "verifyCmd": "$TC actions list action 540 "verifyCmd": "$TC actions list action mirred", 541 "matchPattern": "^[ \t]+index [0-9]+ r 541 "matchPattern": "^[ \t]+index [0-9]+ ref", 542 "matchCount": "32", 542 "matchCount": "32", 543 "teardown": [ 543 "teardown": [ 544 "$TC actions flush action mirred" 544 "$TC actions flush action mirred" 545 ] 545 ] 546 }, 546 }, 547 { 547 { 548 "id": "5c69", 548 "id": "5c69", 549 "name": "Delete batch of 32 mirred red 549 "name": "Delete batch of 32 mirred redirect egress actions", 550 "category": [ 550 "category": [ 551 "actions", 551 "actions", 552 "mirred" 552 "mirred" 553 ], 553 ], 554 "plugins": { 554 "plugins": { 555 "requires": "nsPlugin" 555 "requires": "nsPlugin" 556 }, 556 }, 557 "setup": [ 557 "setup": [ 558 [ 558 [ 559 "$TC actions flush action mirr 559 "$TC actions flush action mirred", 560 0, 560 0, 561 1, 561 1, 562 255 562 255 563 ], 563 ], 564 "bash -c \"for i in \\`seq 1 32\\` 564 "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action mirred egress redirect dev lo index \\$i \\\"; args=\\\"\\$args\\$cmd\\\"; done && $TC actions add \\$args\"" 565 ], 565 ], 566 "cmdUnderTest": "bash -c \"for i in \\ 566 "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action mirred index \\$i \\\"; args=\"\\$args\\$cmd\"; done && $TC actions del \\$args\"", 567 "expExitCode": "0", 567 "expExitCode": "0", 568 "verifyCmd": "$TC actions list action 568 "verifyCmd": "$TC actions list action mirred", 569 "matchPattern": "^[ \t]+index [0-9]+ r 569 "matchPattern": "^[ \t]+index [0-9]+ ref", 570 "matchCount": "0", 570 "matchCount": "0", 571 "teardown": [] 571 "teardown": [] 572 }, 572 }, 573 { 573 { 574 "id": "d3c0", 574 "id": "d3c0", 575 "name": "Add batch of 32 mirred mirror 575 "name": "Add batch of 32 mirred mirror ingress actions with cookie", 576 "category": [ 576 "category": [ 577 "actions", 577 "actions", 578 "mirred" 578 "mirred" 579 ], 579 ], 580 "plugins": { 580 "plugins": { 581 "requires": "nsPlugin" 581 "requires": "nsPlugin" 582 }, 582 }, 583 "setup": [ 583 "setup": [ 584 [ 584 [ 585 "$TC actions flush action mirr 585 "$TC actions flush action mirred", 586 0, 586 0, 587 1, 587 1, 588 255 588 255 589 ] 589 ] 590 ], 590 ], 591 "cmdUnderTest": "bash -c \"for i in \\ 591 "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action mirred ingress mirror dev lo index \\$i cookie aabbccddeeff112233445566778800a1 \\\"; args=\"\\$args\\$cmd\"; done && $TC actions add \\$args\"", 592 "expExitCode": "0", 592 "expExitCode": "0", 593 "verifyCmd": "$TC actions list action 593 "verifyCmd": "$TC actions list action mirred", 594 "matchPattern": "^[ \t]+index [0-9]+ r 594 "matchPattern": "^[ \t]+index [0-9]+ ref", 595 "matchCount": "32", 595 "matchCount": "32", 596 "teardown": [ 596 "teardown": [ 597 "$TC actions flush action mirred" 597 "$TC actions flush action mirred" 598 ] 598 ] 599 }, 599 }, 600 { 600 { 601 "id": "e684", 601 "id": "e684", 602 "name": "Delete batch of 32 mirred mir 602 "name": "Delete batch of 32 mirred mirror ingress actions", 603 "category": [ 603 "category": [ 604 "actions", 604 "actions", 605 "mirred" 605 "mirred" 606 ], 606 ], 607 "plugins": { 607 "plugins": { 608 "requires": "nsPlugin" 608 "requires": "nsPlugin" 609 }, 609 }, 610 "setup": [ 610 "setup": [ 611 [ 611 [ 612 "$TC actions flush action mirr 612 "$TC actions flush action mirred", 613 0, 613 0, 614 1, 614 1, 615 255 615 255 616 ], 616 ], 617 "bash -c \"for i in \\`seq 1 32\\` 617 "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action mirred ingress mirror dev lo index \\$i \\\"; args=\\\"\\$args\\$cmd\\\"; done && $TC actions add \\$args\"" 618 ], 618 ], 619 "cmdUnderTest": "bash -c \"for i in \\ 619 "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action mirred index \\$i \\\"; args=\"\\$args\\$cmd\"; done && $TC actions del \\$args\"", 620 "expExitCode": "0", 620 "expExitCode": "0", 621 "verifyCmd": "$TC actions list action 621 "verifyCmd": "$TC actions list action mirred", 622 "matchPattern": "^[ \t]+index [0-9]+ r 622 "matchPattern": "^[ \t]+index [0-9]+ ref", 623 "matchCount": "0", 623 "matchCount": "0", 624 "teardown": [] 624 "teardown": [] 625 }, 625 }, 626 { 626 { 627 "id": "31e3", 627 "id": "31e3", 628 "name": "Add mirred mirror to egress a 628 "name": "Add mirred mirror to egress action with no_percpu flag", 629 "category": [ 629 "category": [ 630 "actions", 630 "actions", 631 "mirred" 631 "mirred" 632 ], 632 ], 633 "plugins": { 633 "plugins": { 634 "requires": "nsPlugin" 634 "requires": "nsPlugin" 635 }, 635 }, 636 "setup": [ 636 "setup": [ 637 [ 637 [ 638 "$TC actions flush action mirr 638 "$TC actions flush action mirred", 639 0, 639 0, 640 1, 640 1, 641 255 641 255 642 ] 642 ] 643 ], 643 ], 644 "cmdUnderTest": "$TC actions add actio 644 "cmdUnderTest": "$TC actions add action mirred egress mirror dev lo no_percpu", 645 "expExitCode": "0", 645 "expExitCode": "0", 646 "verifyCmd": "$TC actions list action 646 "verifyCmd": "$TC actions list action mirred", 647 "matchPattern": "action order [0-9]*: 647 "matchPattern": "action order [0-9]*: mirred \\(Egress Mirror to device lo\\).*no_percpu", 648 "matchCount": "1", 648 "matchCount": "1", 649 "teardown": [ 649 "teardown": [ 650 "$TC actions flush action mirred" 650 "$TC actions flush action mirred" 651 ] 651 ] 652 }, 652 }, 653 { 653 { 654 "id": "456d", 654 "id": "456d", 655 "name": "Add mirred mirror to egress b 655 "name": "Add mirred mirror to egress block action", 656 "category": [ 656 "category": [ 657 "actions", 657 "actions", 658 "mirred" 658 "mirred" 659 ], 659 ], 660 "dependsOn": "$TC actions add action m 660 "dependsOn": "$TC actions add action mirred help 2>&1 | grep -q blockid", 661 "plugins": { 661 "plugins": { 662 "requires": "nsPlugin" 662 "requires": "nsPlugin" 663 }, 663 }, 664 "setup": [ 664 "setup": [ 665 [ 665 [ 666 "$TC actions flush action mirr 666 "$TC actions flush action mirred", 667 0, 667 0, 668 1, 668 1, 669 255 669 255 670 ], 670 ], 671 [ 671 [ 672 "$TC qdisc add dev $DEV1 egres 672 "$TC qdisc add dev $DEV1 egress_block 21 clsact", 673 0 673 0 674 ] 674 ] 675 ], 675 ], 676 "cmdUnderTest": "$TC actions add actio 676 "cmdUnderTest": "$TC actions add action mirred egress mirror index 1 blockid 21", 677 "expExitCode": "0", 677 "expExitCode": "0", 678 "verifyCmd": "$TC -j actions get actio 678 "verifyCmd": "$TC -j actions get action mirred index 1", 679 "matchJSON": [ 679 "matchJSON": [ 680 { 680 { 681 "total acts": 0 681 "total acts": 0 682 }, 682 }, 683 { 683 { 684 "actions": [ 684 "actions": [ 685 { 685 { 686 "order": 1, 686 "order": 1, 687 "kind": "mirred", 687 "kind": "mirred", 688 "mirred_action": "mirr 688 "mirred_action": "mirror", 689 "direction": "egress", 689 "direction": "egress", 690 "to_blockid": 21, 690 "to_blockid": 21, 691 "control_action": { 691 "control_action": { 692 "type": "pipe" 692 "type": "pipe" 693 }, 693 }, 694 "index": 1, 694 "index": 1, 695 "ref": 1, 695 "ref": 1, 696 "bind": 0, 696 "bind": 0, 697 "not_in_hw": true 697 "not_in_hw": true 698 } 698 } 699 ] 699 ] 700 } 700 } 701 ], 701 ], 702 "matchCount": "1", 702 "matchCount": "1", 703 "teardown": [ 703 "teardown": [ 704 "$TC qdisc del dev $DEV1 egress_bl 704 "$TC qdisc del dev $DEV1 egress_block 21 clsact", 705 "$TC actions flush action mirred" 705 "$TC actions flush action mirred" 706 ] 706 ] 707 }, 707 }, 708 { 708 { 709 "id": "2358", 709 "id": "2358", 710 "name": "Add mirred mirror to ingress 710 "name": "Add mirred mirror to ingress block action", 711 "category": [ 711 "category": [ 712 "actions", 712 "actions", 713 "mirred" 713 "mirred" 714 ], 714 ], 715 "dependsOn": "$TC actions add action m 715 "dependsOn": "$TC actions add action mirred help 2>&1 | grep -q blockid", 716 "plugins": { 716 "plugins": { 717 "requires": "nsPlugin" 717 "requires": "nsPlugin" 718 }, 718 }, 719 "setup": [ 719 "setup": [ 720 [ 720 [ 721 "$TC actions flush action mirr 721 "$TC actions flush action mirred", 722 0, 722 0, 723 1, 723 1, 724 255 724 255 725 ], 725 ], 726 [ 726 [ 727 "$TC qdisc add dev $DEV1 ingre 727 "$TC qdisc add dev $DEV1 ingress_block 21 clsact", 728 0 728 0 729 ] 729 ] 730 ], 730 ], 731 "cmdUnderTest": "$TC actions add actio 731 "cmdUnderTest": "$TC actions add action mirred ingress mirror index 1 blockid 21", 732 "expExitCode": "0", 732 "expExitCode": "0", 733 "verifyCmd": "$TC -j actions get actio 733 "verifyCmd": "$TC -j actions get action mirred index 1", 734 "matchJSON": [ 734 "matchJSON": [ 735 { 735 { 736 "total acts": 0 736 "total acts": 0 737 }, 737 }, 738 { 738 { 739 "actions": [ 739 "actions": [ 740 { 740 { 741 "order": 1, 741 "order": 1, 742 "kind": "mirred", 742 "kind": "mirred", 743 "mirred_action": "mirr 743 "mirred_action": "mirror", 744 "direction": "ingress" 744 "direction": "ingress", 745 "to_blockid": 21, 745 "to_blockid": 21, 746 "control_action": { 746 "control_action": { 747 "type": "pipe" 747 "type": "pipe" 748 }, 748 }, 749 "index": 1, 749 "index": 1, 750 "ref": 1, 750 "ref": 1, 751 "bind": 0, 751 "bind": 0, 752 "not_in_hw": true 752 "not_in_hw": true 753 } 753 } 754 ] 754 ] 755 } 755 } 756 ], 756 ], 757 "matchCount": "1", 757 "matchCount": "1", 758 "teardown": [ 758 "teardown": [ 759 "$TC qdisc del dev $DEV1 ingress_b 759 "$TC qdisc del dev $DEV1 ingress_block 21 clsact", 760 "$TC actions flush action mirred" 760 "$TC actions flush action mirred" 761 ] 761 ] 762 }, 762 }, 763 { 763 { 764 "id": "fdb1", 764 "id": "fdb1", 765 "name": "Add mirred redirect to egress 765 "name": "Add mirred redirect to egress block action", 766 "category": [ 766 "category": [ 767 "actions", 767 "actions", 768 "mirred" 768 "mirred" 769 ], 769 ], 770 "dependsOn": "$TC actions add action m 770 "dependsOn": "$TC actions add action mirred help 2>&1 | grep -q blockid", 771 "plugins": { 771 "plugins": { 772 "requires": "nsPlugin" 772 "requires": "nsPlugin" 773 }, 773 }, 774 "setup": [ 774 "setup": [ 775 [ 775 [ 776 "$TC actions flush action mirr 776 "$TC actions flush action mirred", 777 0, 777 0, 778 1, 778 1, 779 255 779 255 780 ], 780 ], 781 [ 781 [ 782 "$TC qdisc add dev $DEV1 ingre 782 "$TC qdisc add dev $DEV1 ingress_block 21 clsact", 783 0 783 0 784 ] 784 ] 785 ], 785 ], 786 "cmdUnderTest": "$TC actions add actio 786 "cmdUnderTest": "$TC actions add action mirred egress redirect index 1 blockid 21", 787 "expExitCode": "0", 787 "expExitCode": "0", 788 "verifyCmd": "$TC -j actions get actio 788 "verifyCmd": "$TC -j actions get action mirred index 1", 789 "matchJSON": [ 789 "matchJSON": [ 790 { 790 { 791 "total acts": 0 791 "total acts": 0 792 }, 792 }, 793 { 793 { 794 "actions": [ 794 "actions": [ 795 { 795 { 796 "order": 1, 796 "order": 1, 797 "kind": "mirred", 797 "kind": "mirred", 798 "mirred_action": "redi 798 "mirred_action": "redirect", 799 "direction": "egress", 799 "direction": "egress", 800 "to_blockid": 21, 800 "to_blockid": 21, 801 "control_action": { 801 "control_action": { 802 "type": "stolen" 802 "type": "stolen" 803 }, 803 }, 804 "index": 1, 804 "index": 1, 805 "ref": 1, 805 "ref": 1, 806 "bind": 0, 806 "bind": 0, 807 "not_in_hw": true 807 "not_in_hw": true 808 } 808 } 809 ] 809 ] 810 } 810 } 811 ], 811 ], 812 "matchCount": "1", 812 "matchCount": "1", 813 "teardown": [ 813 "teardown": [ 814 "$TC qdisc del dev $DEV1 ingress_b 814 "$TC qdisc del dev $DEV1 ingress_block 21 clsact", 815 "$TC actions flush action mirred" 815 "$TC actions flush action mirred" 816 ] 816 ] 817 }, 817 }, 818 { 818 { 819 "id": "20cc", 819 "id": "20cc", 820 "name": "Add mirred redirect to ingres 820 "name": "Add mirred redirect to ingress block action", 821 "category": [ 821 "category": [ 822 "actions", 822 "actions", 823 "mirred" 823 "mirred" 824 ], 824 ], 825 "dependsOn": "$TC actions add action m 825 "dependsOn": "$TC actions add action mirred help 2>&1 | grep -q blockid", 826 "plugins": { 826 "plugins": { 827 "requires": "nsPlugin" 827 "requires": "nsPlugin" 828 }, 828 }, 829 "setup": [ 829 "setup": [ 830 [ 830 [ 831 "$TC actions flush action mirr 831 "$TC actions flush action mirred", 832 0, 832 0, 833 1, 833 1, 834 255 834 255 835 ], 835 ], 836 [ 836 [ 837 "$TC qdisc add dev $DEV1 ingre 837 "$TC qdisc add dev $DEV1 ingress_block 21 clsact", 838 0 838 0 839 ] 839 ] 840 ], 840 ], 841 "cmdUnderTest": "$TC actions add actio 841 "cmdUnderTest": "$TC actions add action mirred ingress redirect index 1 blockid 21", 842 "expExitCode": "0", 842 "expExitCode": "0", 843 "verifyCmd": "$TC -j actions get actio 843 "verifyCmd": "$TC -j actions get action mirred index 1", 844 "matchJSON": [ 844 "matchJSON": [ 845 { 845 { 846 "total acts": 0 846 "total acts": 0 847 }, 847 }, 848 { 848 { 849 "actions": [ 849 "actions": [ 850 { 850 { 851 "order": 1, 851 "order": 1, 852 "kind": "mirred", 852 "kind": "mirred", 853 "mirred_action": "redi 853 "mirred_action": "redirect", 854 "direction": "ingress" 854 "direction": "ingress", 855 "to_blockid": 21, 855 "to_blockid": 21, 856 "control_action": { 856 "control_action": { 857 "type": "stolen" 857 "type": "stolen" 858 }, 858 }, 859 "index": 1, 859 "index": 1, 860 "ref": 1, 860 "ref": 1, 861 "bind": 0, 861 "bind": 0, 862 "not_in_hw": true 862 "not_in_hw": true 863 } 863 } 864 ] 864 ] 865 } 865 } 866 ], 866 ], 867 "matchCount": "1", 867 "matchCount": "1", 868 "teardown": [ 868 "teardown": [ 869 "$TC qdisc del dev $DEV1 ingress_b 869 "$TC qdisc del dev $DEV1 ingress_block 21 clsact", 870 "$TC actions flush action mirred" 870 "$TC actions flush action mirred" 871 ] 871 ] 872 }, 872 }, 873 { 873 { 874 "id": "e739", 874 "id": "e739", 875 "name": "Try to add mirred action with 875 "name": "Try to add mirred action with both dev and block", 876 "category": [ 876 "category": [ 877 "actions", 877 "actions", 878 "mirred" 878 "mirred" 879 ], 879 ], 880 "dependsOn": "$TC actions add action m 880 "dependsOn": "$TC actions add action mirred help 2>&1 | grep -q blockid", 881 "plugins": { 881 "plugins": { 882 "requires": "nsPlugin" 882 "requires": "nsPlugin" 883 }, 883 }, 884 "setup": [ 884 "setup": [ 885 [ 885 [ 886 "$TC actions flush action mirr 886 "$TC actions flush action mirred", 887 0, 887 0, 888 1, 888 1, 889 255 889 255 890 ], 890 ], 891 [ 891 [ 892 "$TC qdisc add dev $DEV1 ingre 892 "$TC qdisc add dev $DEV1 ingress_block 21 clsact", 893 0 893 0 894 ] 894 ] 895 ], 895 ], 896 "cmdUnderTest": "$TC actions add actio 896 "cmdUnderTest": "$TC actions add action mirred ingress redirect index 1 blockid 21 dev $DEV1", 897 "expExitCode": "255", 897 "expExitCode": "255", 898 "verifyCmd": "$TC -j actions list acti 898 "verifyCmd": "$TC -j actions list action mirred", 899 "matchJSON": [], 899 "matchJSON": [], 900 "matchCount": "1", 900 "matchCount": "1", 901 "teardown": [ 901 "teardown": [ 902 "$TC qdisc del dev $DEV1 ingress_b 902 "$TC qdisc del dev $DEV1 ingress_block 21 clsact", 903 "$TC actions flush action mirred" 903 "$TC actions flush action mirred" 904 ] 904 ] 905 }, 905 }, 906 { 906 { 907 "id": "2f47", 907 "id": "2f47", 908 "name": "Try to add mirred action with 908 "name": "Try to add mirred action without specifying neither dev nor block", 909 "category": [ 909 "category": [ 910 "actions", 910 "actions", 911 "mirred" 911 "mirred" 912 ], 912 ], 913 "plugins": { 913 "plugins": { 914 "requires": "nsPlugin" 914 "requires": "nsPlugin" 915 }, 915 }, 916 "setup": [ 916 "setup": [ 917 [ 917 [ 918 "$TC actions flush action mirr 918 "$TC actions flush action mirred", 919 0, 919 0, 920 1, 920 1, 921 255 921 255 922 ], 922 ], 923 [ 923 [ 924 "$TC qdisc add dev $DEV1 ingre 924 "$TC qdisc add dev $DEV1 ingress_block 21 clsact", 925 0 925 0 926 ] 926 ] 927 ], 927 ], 928 "cmdUnderTest": "$TC actions add actio 928 "cmdUnderTest": "$TC actions add action mirred ingress redirect index 1", 929 "expExitCode": "255", 929 "expExitCode": "255", 930 "verifyCmd": "$TC -j actions list acti 930 "verifyCmd": "$TC -j actions list action mirred", 931 "matchJSON": [], 931 "matchJSON": [], 932 "matchCount": "1", 932 "matchCount": "1", 933 "teardown": [ 933 "teardown": [ 934 "$TC qdisc del dev $DEV1 ingress_b 934 "$TC qdisc del dev $DEV1 ingress_block 21 clsact", 935 "$TC actions flush action mirred" 935 "$TC actions flush action mirred" 936 ] 936 ] 937 }, 937 }, 938 { 938 { 939 "id": "3188", 939 "id": "3188", 940 "name": "Replace mirred redirect to de 940 "name": "Replace mirred redirect to dev action with redirect to block", 941 "category": [ 941 "category": [ 942 "actions", 942 "actions", 943 "mirred" 943 "mirred" 944 ], 944 ], 945 "dependsOn": "$TC actions add action m 945 "dependsOn": "$TC actions add action mirred help 2>&1 | grep -q blockid", 946 "plugins": { 946 "plugins": { 947 "requires": "nsPlugin" 947 "requires": "nsPlugin" 948 }, 948 }, 949 "setup": [ 949 "setup": [ 950 [ 950 [ 951 "$TC actions flush action mirr 951 "$TC actions flush action mirred", 952 0, 952 0, 953 1, 953 1, 954 255 954 255 955 ], 955 ], 956 [ 956 [ 957 "$TC qdisc add dev $DEV1 ingre 957 "$TC qdisc add dev $DEV1 ingress_block 21 clsact", 958 0 958 0 959 ], 959 ], 960 [ 960 [ 961 "$TC actions add action mirred 961 "$TC actions add action mirred ingress redirect index 1 dev $DEV1", 962 0 962 0 963 ] 963 ] 964 ], 964 ], 965 "cmdUnderTest": "$TC actions replace a 965 "cmdUnderTest": "$TC actions replace action mirred egress redirect index 1 blockid 21", 966 "expExitCode": "0", 966 "expExitCode": "0", 967 "verifyCmd": "$TC -j actions get actio 967 "verifyCmd": "$TC -j actions get action mirred index 1", 968 "matchJSON": [ 968 "matchJSON": [ 969 { 969 { 970 "total acts": 0 970 "total acts": 0 971 }, 971 }, 972 { 972 { 973 "actions": [ 973 "actions": [ 974 { 974 { 975 "order": 1, 975 "order": 1, 976 "kind": "mirred", 976 "kind": "mirred", 977 "mirred_action": "redi 977 "mirred_action": "redirect", 978 "direction": "egress", 978 "direction": "egress", 979 "to_blockid": 21, 979 "to_blockid": 21, 980 "control_action": { 980 "control_action": { 981 "type": "stolen" 981 "type": "stolen" 982 }, 982 }, 983 "index": 1, 983 "index": 1, 984 "ref": 1, 984 "ref": 1, 985 "bind": 0, 985 "bind": 0, 986 "not_in_hw": true 986 "not_in_hw": true 987 } 987 } 988 ] 988 ] 989 } 989 } 990 ], 990 ], 991 "matchCount": "1", 991 "matchCount": "1", 992 "teardown": [ 992 "teardown": [ 993 "$TC qdisc del dev $DEV1 ingress_b 993 "$TC qdisc del dev $DEV1 ingress_block 21 clsact", 994 "$TC actions flush action mirred" 994 "$TC actions flush action mirred" 995 ] 995 ] 996 }, 996 }, 997 { 997 { 998 "id": "83cc", 998 "id": "83cc", 999 "name": "Replace mirred redirect to bl 999 "name": "Replace mirred redirect to block action with mirror to dev", 1000 "category": [ 1000 "category": [ 1001 "actions", 1001 "actions", 1002 "mirred" 1002 "mirred" 1003 ], 1003 ], 1004 "dependsOn": "$TC actions add action 1004 "dependsOn": "$TC actions add action mirred help 2>&1 | grep -q blockid", 1005 "plugins": { 1005 "plugins": { 1006 "requires": "nsPlugin" 1006 "requires": "nsPlugin" 1007 }, 1007 }, 1008 "setup": [ 1008 "setup": [ 1009 [ 1009 [ 1010 "$TC actions flush action mir 1010 "$TC actions flush action mirred", 1011 0, 1011 0, 1012 1, 1012 1, 1013 255 1013 255 1014 ], 1014 ], 1015 [ 1015 [ 1016 "$TC qdisc add dev $DEV1 ingr 1016 "$TC qdisc add dev $DEV1 ingress_block 21 clsact", 1017 0 1017 0 1018 ], 1018 ], 1019 [ 1019 [ 1020 "$TC actions add action mirre 1020 "$TC actions add action mirred egress redirect index 1 blockid 21", 1021 0 1021 0 1022 ] 1022 ] 1023 ], 1023 ], 1024 "cmdUnderTest": "$TC actions replace 1024 "cmdUnderTest": "$TC actions replace action mirred ingress mirror index 1 dev lo", 1025 "expExitCode": "0", 1025 "expExitCode": "0", 1026 "verifyCmd": "$TC -j actions get acti 1026 "verifyCmd": "$TC -j actions get action mirred index 1", 1027 "matchJSON": [ 1027 "matchJSON": [ 1028 { 1028 { 1029 "total acts": 0 1029 "total acts": 0 1030 }, 1030 }, 1031 { 1031 { 1032 "actions": [ 1032 "actions": [ 1033 { 1033 { 1034 "order": 1, 1034 "order": 1, 1035 "kind": "mirred", 1035 "kind": "mirred", 1036 "mirred_action": "mir 1036 "mirred_action": "mirror", 1037 "direction": "ingress 1037 "direction": "ingress", 1038 "to_dev": "lo", 1038 "to_dev": "lo", 1039 "control_action": { 1039 "control_action": { 1040 "type": "pipe" 1040 "type": "pipe" 1041 }, 1041 }, 1042 "index": 1, 1042 "index": 1, 1043 "ref": 1, 1043 "ref": 1, 1044 "bind": 0, 1044 "bind": 0, 1045 "not_in_hw": true 1045 "not_in_hw": true 1046 } 1046 } 1047 ] 1047 ] 1048 } 1048 } 1049 ], 1049 ], 1050 "matchCount": "1", 1050 "matchCount": "1", 1051 "teardown": [ 1051 "teardown": [ 1052 "$TC qdisc del dev $DEV1 ingress_ 1052 "$TC qdisc del dev $DEV1 ingress_block 21 clsact", 1053 "$TC actions flush action mirred" 1053 "$TC actions flush action mirred" 1054 ] 1054 ] 1055 } 1055 } 1056 ] 1056 ]
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.