1[ 2 { 3 "id": "2b11", 4 "name": "Add tunnel_key set action with mandatory parameters", 5 "category": [ 6 "actions", 7 "tunnel_key" 8 ], 9 "setup": [ 10 [ 11 "$TC actions flush action tunnel_key", 12 0, 13 1, 14 255 15 ] 16 ], 17 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 10.10.10.1 dst_ip 20.20.20.2 id 1", 18 "expExitCode": "0", 19 "verifyCmd": "$TC actions list action tunnel_key", 20 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 10.10.10.1.*dst_ip 20.20.20.2.*key_id 1", 21 "matchCount": "1", 22 "teardown": [ 23 "$TC actions flush action tunnel_key" 24 ] 25 }, 26 { 27 "id": "dc6b", 28 "name": "Add tunnel_key set action with missing mandatory src_ip parameter", 29 "category": [ 30 "actions", 31 "tunnel_key" 32 ], 33 "setup": [ 34 [ 35 "$TC actions flush action tunnel_key", 36 0, 37 1, 38 255 39 ] 40 ], 41 "cmdUnderTest": "$TC actions add action tunnel_key set dst_ip 20.20.20.2 id 100", 42 "expExitCode": "255", 43 "verifyCmd": "$TC actions list action tunnel_key", 44 "matchPattern": "action order [0-9]+: tunnel_key set.*dst_ip 20.20.20.2.*key_id 100", 45 "matchCount": "0", 46 "teardown": [ 47 [ 48 "$TC actions flush action tunnel_key", 49 0, 50 1, 51 255 52 ] 53 ] 54 }, 55 { 56 "id": "7f25", 57 "name": "Add tunnel_key set action with missing mandatory dst_ip parameter", 58 "category": [ 59 "actions", 60 "tunnel_key" 61 ], 62 "setup": [ 63 [ 64 "$TC actions flush action tunnel_key", 65 0, 66 1, 67 255 68 ] 69 ], 70 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 10.10.10.1 id 100", 71 "expExitCode": "255", 72 "verifyCmd": "$TC actions list action tunnel_key", 73 "matchPattern": "action order [0-9]+: tunnel_key set.*src_ip 10.10.10.1.*key_id 100", 74 "matchCount": "0", 75 "teardown": [ 76 [ 77 "$TC actions flush action tunnel_key", 78 0, 79 1, 80 255 81 ] 82 ] 83 }, 84 { 85 "id": "a5e0", 86 "name": "Add tunnel_key set action with invalid src_ip parameter", 87 "category": [ 88 "actions", 89 "tunnel_key" 90 ], 91 "setup": [ 92 [ 93 "$TC actions flush action tunnel_key", 94 0, 95 1, 96 255 97 ] 98 ], 99 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 300.168.100.1 dst_ip 192.168.200.1 id 7 index 1", 100 "expExitCode": "1", 101 "verifyCmd": "$TC actions get action tunnel_key index 1", 102 "matchPattern": "action order [0-9]+: tunnel_key set.*src_ip 300.168.100.1.*dst_ip 192.168.200.1.*key_id 7.*index 1 ref", 103 "matchCount": "0", 104 "teardown": [ 105 [ 106 "$TC actions flush action tunnel_key", 107 0, 108 1, 109 255 110 ] 111 ] 112 }, 113 { 114 "id": "eaa8", 115 "name": "Add tunnel_key set action with invalid dst_ip parameter", 116 "category": [ 117 "actions", 118 "tunnel_key" 119 ], 120 "setup": [ 121 [ 122 "$TC actions flush action tunnel_key", 123 0, 124 1, 125 255 126 ] 127 ], 128 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 192.168.100.1 dst_ip 192.168.800.1 id 10 index 11", 129 "expExitCode": "1", 130 "verifyCmd": "$TC actions get action tunnel_key index 11", 131 "matchPattern": "action order [0-9]+: tunnel_key set.*src_ip 192.168.100.1.*dst_ip 192.168.800.1.*key_id 10.*index 11 ref", 132 "matchCount": "0", 133 "teardown": [ 134 [ 135 "$TC actions flush action tunnel_key", 136 0, 137 1, 138 255 139 ] 140 ] 141 }, 142 { 143 "id": "3b09", 144 "name": "Add tunnel_key set action with invalid id parameter", 145 "category": [ 146 "actions", 147 "tunnel_key" 148 ], 149 "setup": [ 150 [ 151 "$TC actions flush action tunnel_key", 152 0, 153 1, 154 255 155 ] 156 ], 157 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 112233445566778899 index 1", 158 "expExitCode": "255", 159 "verifyCmd": "$TC actions get action tunnel_key index 1", 160 "matchPattern": "action order [0-9]+: tunnel_key set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 112233445566778899.*index 1 ref", 161 "matchCount": "0", 162 "teardown": [ 163 [ 164 "$TC actions flush action tunnel_key", 165 0, 166 1, 167 255 168 ] 169 ] 170 }, 171 { 172 "id": "9625", 173 "name": "Add tunnel_key set action with invalid dst_port parameter", 174 "category": [ 175 "actions", 176 "tunnel_key" 177 ], 178 "setup": [ 179 [ 180 "$TC actions flush action tunnel_key", 181 0, 182 1, 183 255 184 ] 185 ], 186 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 11 dst_port 998877 index 1", 187 "expExitCode": "255", 188 "verifyCmd": "$TC actions get action tunnel_key index 1", 189 "matchPattern": "action order [0-9]+: tunnel_key set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 11.*dst_port 998877.*index 1 ref", 190 "matchCount": "0", 191 "teardown": [ 192 [ 193 "$TC actions flush action tunnel_key", 194 0, 195 1, 196 255 197 ] 198 ] 199 }, 200 { 201 "id": "05af", 202 "name": "Add tunnel_key set action with optional dst_port parameter", 203 "category": [ 204 "actions", 205 "tunnel_key" 206 ], 207 "setup": [ 208 [ 209 "$TC actions flush action tunnel_key", 210 0, 211 1, 212 255 213 ] 214 ], 215 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 192.168.100.1 dst_ip 192.168.200.1 id 789 dst_port 4000 index 10", 216 "expExitCode": "0", 217 "verifyCmd": "$TC actions get action tunnel_key index 10", 218 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 192.168.100.1.*dst_ip 192.168.200.1.*key_id 789.*dst_port 4000.*index 10 ref", 219 "matchCount": "1", 220 "teardown": [ 221 "$TC actions flush action tunnel_key" 222 ] 223 }, 224 { 225 "id": "da80", 226 "name": "Add tunnel_key set action with index at 32-bit maximum", 227 "category": [ 228 "actions", 229 "tunnel_key" 230 ], 231 "setup": [ 232 [ 233 "$TC actions flush action tunnel_key", 234 0, 235 1, 236 255 237 ] 238 ], 239 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 11 index 4294967295", 240 "expExitCode": "0", 241 "verifyCmd": "$TC actions get action tunnel_key index 4294967295", 242 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*id 11.*index 4294967295 ref", 243 "matchCount": "1", 244 "teardown": [ 245 "$TC actions flush action tunnel_key" 246 ] 247 }, 248 { 249 "id": "d407", 250 "name": "Add tunnel_key set action with index exceeding 32-bit maximum", 251 "category": [ 252 "actions", 253 "tunnel_key" 254 ], 255 "setup": [ 256 [ 257 "$TC actions flush action tunnel_key", 258 0, 259 1, 260 255 261 ] 262 ], 263 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 11 index 4294967295678", 264 "expExitCode": "255", 265 "verifyCmd": "$TC actions get action tunnel_key index 4294967295678", 266 "matchPattern": "action order [0-9]+: tunnel_key set.*index 4294967295678 ref", 267 "matchCount": "0", 268 "teardown": [ 269 [ 270 "$TC actions flush action tunnel_key", 271 0, 272 1, 273 255 274 ] 275 ] 276 }, 277 { 278 "id": "5cba", 279 "name": "Add tunnel_key set action with id value at 32-bit maximum", 280 "category": [ 281 "actions", 282 "tunnel_key" 283 ], 284 "setup": [ 285 [ 286 "$TC actions flush action tunnel_key", 287 0, 288 1, 289 255 290 ] 291 ], 292 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 4294967295 index 1", 293 "expExitCode": "0", 294 "verifyCmd": "$TC actions get action tunnel_key index 1", 295 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 4294967295.*index 1", 296 "matchCount": "1", 297 "teardown": [ 298 "$TC actions flush action tunnel_key" 299 ] 300 }, 301 { 302 "id": "e84a", 303 "name": "Add tunnel_key set action with id value exceeding 32-bit maximum", 304 "category": [ 305 "actions", 306 "tunnel_key" 307 ], 308 "setup": [ 309 [ 310 "$TC actions flush action tunnel_key", 311 0, 312 1, 313 255 314 ] 315 ], 316 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 42949672955 index 1", 317 "expExitCode": "255", 318 "verifyCmd": "$TC actions get action tunnel_key index 4294967295", 319 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 42949672955.*index 1", 320 "matchCount": "0", 321 "teardown": [ 322 [ 323 "$TC actions flush action tunnel_key", 324 0, 325 1, 326 255 327 ] 328 ] 329 }, 330 { 331 "id": "9c19", 332 "name": "Add tunnel_key set action with dst_port value at 16-bit maximum", 333 "category": [ 334 "actions", 335 "tunnel_key" 336 ], 337 "setup": [ 338 [ 339 "$TC actions flush action tunnel_key", 340 0, 341 1, 342 255 343 ] 344 ], 345 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 429 dst_port 65535 index 1", 346 "expExitCode": "0", 347 "verifyCmd": "$TC actions get action tunnel_key index 1", 348 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 429.*dst_port 65535.*index 1", 349 "matchCount": "1", 350 "teardown": [ 351 "$TC actions flush action tunnel_key" 352 ] 353 }, 354 { 355 "id": "3bd9", 356 "name": "Add tunnel_key set action with dst_port value exceeding 16-bit maximum", 357 "category": [ 358 "actions", 359 "tunnel_key" 360 ], 361 "setup": [ 362 [ 363 "$TC actions flush action tunnel_key", 364 0, 365 1, 366 255 367 ] 368 ], 369 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 429 dst_port 65535789 index 1", 370 "expExitCode": "255", 371 "verifyCmd": "$TC actions get action tunnel_key index 1", 372 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 429.*dst_port 65535789.*index 1", 373 "matchCount": "0", 374 "teardown": [ 375 [ 376 "$TC actions flush action tunnel_key", 377 0, 378 1, 379 255 380 ] 381 ] 382 }, 383 { 384 "id": "68e2", 385 "name": "Add tunnel_key unset action", 386 "category": [ 387 "actions", 388 "tunnel_key" 389 ], 390 "setup": [ 391 [ 392 "$TC actions flush action tunnel_key", 393 0, 394 1, 395 255 396 ] 397 ], 398 "cmdUnderTest": "$TC actions add action tunnel_key unset index 1", 399 "expExitCode": "0", 400 "verifyCmd": "$TC actions get action tunnel_key index 1", 401 "matchPattern": "action order [0-9]+: tunnel_key.*unset.*index 1 ref", 402 "matchCount": "1", 403 "teardown": [ 404 "$TC actions flush action tunnel_key" 405 ] 406 }, 407 { 408 "id": "6192", 409 "name": "Add tunnel_key unset continue action", 410 "category": [ 411 "actions", 412 "tunnel_key" 413 ], 414 "setup": [ 415 [ 416 "$TC actions flush action tunnel_key", 417 0, 418 1, 419 255 420 ] 421 ], 422 "cmdUnderTest": "$TC actions add action tunnel_key unset continue index 1", 423 "expExitCode": "0", 424 "verifyCmd": "$TC actions get action tunnel_key index 1", 425 "matchPattern": "action order [0-9]+: tunnel_key.*unset continue.*index 1 ref", 426 "matchCount": "1", 427 "teardown": [ 428 "$TC actions flush action tunnel_key" 429 ] 430 }, 431 { 432 "id": "061d", 433 "name": "Add tunnel_key set continue action with cookie", 434 "category": [ 435 "actions", 436 "tunnel_key" 437 ], 438 "setup": [ 439 [ 440 "$TC actions flush action tunnel_key", 441 0, 442 1, 443 255 444 ] 445 ], 446 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 192.168.10.1 dst_ip 192.168.20.2 id 123 continue index 1 cookie aa11bb22cc33dd44ee55ff66aa11b1b2", 447 "expExitCode": "0", 448 "verifyCmd": "$TC actions get action tunnel_key index 1", 449 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 192.168.10.1.*dst_ip 192.168.20.2.*key_id 123.*csum continue.*index 1.*cookie aa11bb22cc33dd44ee55ff66aa11b1b2", 450 "matchCount": "1", 451 "teardown": [ 452 "$TC actions flush action tunnel_key" 453 ] 454 }, 455 { 456 "id": "8acb", 457 "name": "Add tunnel_key set continue action with invalid cookie", 458 "category": [ 459 "actions", 460 "tunnel_key" 461 ], 462 "setup": [ 463 [ 464 "$TC actions flush action tunnel_key", 465 0, 466 1, 467 255 468 ] 469 ], 470 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 192.168.10.1 dst_ip 192.168.20.2 id 123 continue index 1 cookie aa11bb22cc33dd44ee55ff66aa11b1b2777888", 471 "expExitCode": "255", 472 "verifyCmd": "$TC actions get action tunnel_key index 1", 473 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 192.168.10.1.*dst_ip 192.168.20.2.*key_id 123.*csum continue.*index 1.*cookie aa11bb22cc33dd44ee55ff66aa11b1b2777888", 474 "matchCount": "0", 475 "teardown": [ 476 [ 477 "$TC actions flush action tunnel_key", 478 0, 479 1, 480 255 481 ] 482 ] 483 }, 484 { 485 "id": "a07e", 486 "name": "Add tunnel_key action with no set/unset command specified", 487 "category": [ 488 "actions", 489 "tunnel_key" 490 ], 491 "setup": [ 492 [ 493 "$TC actions flush action tunnel_key", 494 0, 495 1, 496 255 497 ] 498 ], 499 "cmdUnderTest": "$TC actions add action tunnel_key src_ip 10.10.10.1 dst_ip 20.20.20.2 id 1", 500 "expExitCode": "255", 501 "verifyCmd": "$TC actions get action tunnel_key index 1", 502 "matchPattern": "action order [0-9]+: tunnel_key.*src_ip 10.10.10.1.*dst_ip 20.20.20.2.*key_id 1", 503 "matchCount": "0", 504 "teardown": [ 505 [ 506 "$TC actions flush action tunnel_key", 507 0, 508 1, 509 255 510 ] 511 ] 512 }, 513 { 514 "id": "b227", 515 "name": "Add tunnel_key action with csum option", 516 "category": [ 517 "actions", 518 "tunnel_key" 519 ], 520 "setup": [ 521 [ 522 "$TC actions flush action tunnel_key", 523 0, 524 1, 525 255 526 ] 527 ], 528 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 10.10.10.1 dst_ip 20.20.20.2 id 1 csum index 99", 529 "expExitCode": "0", 530 "verifyCmd": "$TC actions get action tunnel_key index 99", 531 "matchPattern": "action order [0-9]+: tunnel_key.*src_ip 10.10.10.1.*dst_ip 20.20.20.2.*key_id 1.*csum pipe.*index 99", 532 "matchCount": "1", 533 "teardown": [ 534 "$TC actions flush action tunnel_key" 535 ] 536 }, 537 { 538 "id": "58a7", 539 "name": "Add tunnel_key action with nocsum option", 540 "category": [ 541 "actions", 542 "tunnel_key" 543 ], 544 "setup": [ 545 [ 546 "$TC actions flush action tunnel_key", 547 0, 548 1, 549 255 550 ] 551 ], 552 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 10.10.10.1 dst_ip 10.10.10.2 id 7823 nocsum index 234", 553 "expExitCode": "0", 554 "verifyCmd": "$TC actions get action tunnel_key index 234", 555 "matchPattern": "action order [0-9]+: tunnel_key.*src_ip 10.10.10.1.*dst_ip 10.10.10.2.*key_id 7823.*nocsum pipe.*index 234", 556 "matchCount": "1", 557 "teardown": [ 558 "$TC actions flush action tunnel_key" 559 ] 560 }, 561 { 562 "id": "2575", 563 "name": "Add tunnel_key action with not-supported parameter", 564 "category": [ 565 "actions", 566 "tunnel_key" 567 ], 568 "setup": [ 569 [ 570 "$TC actions flush action tunnel_key", 571 0, 572 1, 573 255 574 ] 575 ], 576 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 10.10.10.1 dst_ip 10.10.10.2 id 7 foobar 999 index 4", 577 "expExitCode": "255", 578 "verifyCmd": "$TC actions get action tunnel_key index 4", 579 "matchPattern": "action order [0-9]+: tunnel_key.*src_ip 10.10.10.1.*dst_ip 10.10.10.2.*key_id 7.*foobar 999.*index 4", 580 "matchCount": "0", 581 "teardown": [ 582 [ 583 "$TC actions flush action tunnel_key", 584 0, 585 1, 586 255 587 ] 588 ] 589 }, 590 { 591 "id": "7a88", 592 "name": "Add tunnel_key action with cookie parameter", 593 "category": [ 594 "actions", 595 "tunnel_key" 596 ], 597 "setup": [ 598 [ 599 "$TC actions flush action tunnel_key", 600 0, 601 1, 602 255 603 ] 604 ], 605 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 10.10.10.1 dst_ip 10.10.10.2 id 7 index 4 cookie aa11bb22cc33dd44ee55ff66aa11b1b2", 606 "expExitCode": "0", 607 "verifyCmd": "$TC actions get action tunnel_key index 4", 608 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 10.10.10.1.*dst_ip 10.10.10.2.*key_id 7.*csum pipe.*index 4 ref.*cookie aa11bb22cc33dd44ee55ff66aa11b1b2", 609 "matchCount": "1", 610 "teardown": [ 611 "$TC actions flush action tunnel_key" 612 ] 613 }, 614 { 615 "id": "4f20", 616 "name": "Add tunnel_key action with a single geneve option parameter", 617 "category": [ 618 "actions", 619 "tunnel_key" 620 ], 621 "setup": [ 622 [ 623 "$TC actions flush action tunnel_key", 624 0, 625 1, 626 255 627 ] 628 ], 629 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 42 dst_port 6081 geneve_opts 0102:80:00880022 index 1", 630 "expExitCode": "0", 631 "verifyCmd": "$TC actions get action tunnel_key index 1", 632 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 42.*dst_port 6081.*geneve_opt[s]? 0102:80:00880022.*index 1", 633 "matchCount": "1", 634 "teardown": [ 635 "$TC actions flush action tunnel_key" 636 ] 637 }, 638 { 639 "id": "e33d", 640 "name": "Add tunnel_key action with multiple geneve options parameter", 641 "category": [ 642 "actions", 643 "tunnel_key" 644 ], 645 "setup": [ 646 [ 647 "$TC actions flush action tunnel_key", 648 0, 649 1, 650 255 651 ] 652 ], 653 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 42 dst_port 6081 geneve_opts 0102:80:00880022,0408:42:0040007611223344,0111:02:1020304011223344 index 1", 654 "expExitCode": "0", 655 "verifyCmd": "$TC actions get action tunnel_key index 1", 656 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 42.*dst_port 6081.*geneve_opt[s]? 0102:80:00880022,0408:42:0040007611223344,0111:02:1020304011223344.*index 1", 657 "matchCount": "1", 658 "teardown": [ 659 "$TC actions flush action tunnel_key" 660 ] 661 }, 662 { 663 "id": "0778", 664 "name": "Add tunnel_key action with invalid class geneve option parameter", 665 "category": [ 666 "actions", 667 "tunnel_key" 668 ], 669 "setup": [ 670 [ 671 "$TC actions flush action tunnel_key", 672 0, 673 1, 674 255 675 ] 676 ], 677 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 42 dst_port 6081 geneve_opts 824212:80:00880022 index 1", 678 "expExitCode": "255", 679 "verifyCmd": "$TC actions get action tunnel_key index 1", 680 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 42.*dst_port 6081.*geneve_opt[s]? 824212:80:00880022.*index 1", 681 "matchCount": "0", 682 "teardown": [ 683 "$TC actions flush action tunnel_key" 684 ] 685 }, 686 { 687 "id": "4ae8", 688 "name": "Add tunnel_key action with invalid type geneve option parameter", 689 "category": [ 690 "actions", 691 "tunnel_key" 692 ], 693 "setup": [ 694 [ 695 "$TC actions flush action tunnel_key", 696 0, 697 1, 698 255 699 ] 700 ], 701 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 42 dst_port 6081 geneve_opts 0102:4224:00880022 index 1", 702 "expExitCode": "255", 703 "verifyCmd": "$TC actions get action tunnel_key index 1", 704 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 42.*dst_port 6081.*geneve_opt[s]? 0102:4224:00880022.*index 1", 705 "matchCount": "0", 706 "teardown": [ 707 "$TC actions flush action tunnel_key" 708 ] 709 }, 710 { 711 "id": "4039", 712 "name": "Add tunnel_key action with short data length geneve option parameter", 713 "category": [ 714 "actions", 715 "tunnel_key" 716 ], 717 "setup": [ 718 [ 719 "$TC actions flush action tunnel_key", 720 0, 721 1, 722 255 723 ] 724 ], 725 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 42 dst_port 6081 geneve_opts 0102:80:4288 index 1", 726 "expExitCode": "255", 727 "verifyCmd": "$TC actions get action tunnel_key index 1", 728 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 42.*dst_port 6081.*geneve_opt[s]? 0102:80:4288.*index 1", 729 "matchCount": "0", 730 "teardown": [ 731 "$TC actions flush action tunnel_key" 732 ] 733 }, 734 { 735 "id": "26a6", 736 "name": "Add tunnel_key action with non-multiple of 4 data length geneve option parameter", 737 "category": [ 738 "actions", 739 "tunnel_key" 740 ], 741 "setup": [ 742 [ 743 "$TC actions flush action tunnel_key", 744 0, 745 1, 746 255 747 ] 748 ], 749 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 42 dst_port 6081 geneve_opts 0102:80:4288428822 index 1", 750 "expExitCode": "255", 751 "verifyCmd": "$TC actions get action tunnel_key index 1", 752 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 42.*dst_port 6081.*geneve_opt[s]? 0102:80:4288428822.*index 1", 753 "matchCount": "0", 754 "teardown": [ 755 "$TC actions flush action tunnel_key" 756 ] 757 }, 758 { 759 "id": "f44d", 760 "name": "Add tunnel_key action with incomplete geneve options parameter", 761 "category": [ 762 "actions", 763 "tunnel_key" 764 ], 765 "setup": [ 766 [ 767 "$TC actions flush action tunnel_key", 768 0, 769 1, 770 255 771 ] 772 ], 773 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 id 42 dst_port 6081 geneve_opts 0102:80:00880022,0408:42: index 1", 774 "expExitCode": "255", 775 "verifyCmd": "$TC actions get action tunnel_key index 1", 776 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*key_id 42.*dst_port 6081.*geneve_opt[s]? 0102:80:00880022,0408:42:.*index 1", 777 "matchCount": "0", 778 "teardown": [ 779 "$TC actions flush action tunnel_key" 780 ] 781 }, 782 { 783 "id": "7afc", 784 "name": "Replace tunnel_key set action with all parameters", 785 "category": [ 786 "actions", 787 "tunnel_key" 788 ], 789 "setup": [ 790 [ 791 "$TC actions flush action tunnel_key", 792 0, 793 1, 794 255 795 ], 796 "$TC actions add action tunnel_key set src_ip 10.10.10.1 dst_ip 20.20.20.2 dst_port 3128 csum id 1 index 1" 797 ], 798 "cmdUnderTest": "$TC actions replace action tunnel_key set src_ip 11.11.11.1 dst_ip 21.21.21.2 dst_port 3129 nocsum id 11 index 1", 799 "expExitCode": "0", 800 "verifyCmd": "$TC actions get action tunnel_key index 1", 801 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 11.11.11.1.*dst_ip 21.21.21.2.*key_id 11.*dst_port 3129.*nocsum pipe.*index 1", 802 "matchCount": "1", 803 "teardown": [ 804 "$TC actions flush action tunnel_key" 805 ] 806 }, 807 { 808 "id": "364d", 809 "name": "Replace tunnel_key set action with all parameters and cookie", 810 "category": [ 811 "actions", 812 "tunnel_key" 813 ], 814 "setup": [ 815 [ 816 "$TC actions flush action tunnel_key", 817 0, 818 1, 819 255 820 ], 821 "$TC actions add action tunnel_key set src_ip 10.10.10.1 dst_ip 20.20.20.2 dst_port 3128 nocsum id 1 index 1 cookie 123456" 822 ], 823 "cmdUnderTest": "$TC actions replace action tunnel_key set src_ip 11.11.11.1 dst_ip 21.21.21.2 dst_port 3129 id 11 csum reclassify index 1 cookie 123456", 824 "expExitCode": "0", 825 "verifyCmd": "$TC actions get action tunnel_key index 1", 826 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 11.11.11.1.*dst_ip 21.21.21.2.*key_id 11.*dst_port 3129.*csum reclassify.*index 1.*cookie 123456", 827 "matchCount": "1", 828 "teardown": [ 829 "$TC actions flush action tunnel_key" 830 ] 831 }, 832 { 833 "id": "937c", 834 "name": "Fetch all existing tunnel_key actions", 835 "category": [ 836 "actions", 837 "tunnel_key" 838 ], 839 "setup": [ 840 [ 841 "$TC actions flush action tunnel_key", 842 0, 843 1, 844 255 845 ], 846 "$TC actions add action tunnel_key set src_ip 10.10.10.1 dst_ip 20.20.20.2 dst_port 3128 nocsum id 1 pipe index 1", 847 "$TC actions add action tunnel_key set src_ip 11.10.10.1 dst_ip 21.20.20.2 dst_port 3129 csum id 2 jump 10 index 2", 848 "$TC actions add action tunnel_key set src_ip 12.10.10.1 dst_ip 22.20.20.2 dst_port 3130 csum id 3 pass index 3", 849 "$TC actions add action tunnel_key set src_ip 13.10.10.1 dst_ip 23.20.20.2 dst_port 3131 nocsum id 4 continue index 4" 850 ], 851 "cmdUnderTest": "$TC actions list action tunnel_key", 852 "expExitCode": "0", 853 "verifyCmd": "$TC actions list action tunnel_key", 854 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 10.10.10.1.*dst_ip 20.20.20.2.*key_id 1.*dst_port 3128.*nocsum pipe.*index 1.*set.*src_ip 11.10.10.1.*dst_ip 21.20.20.2.*key_id 2.*dst_port 3129.*csum jump 10.*index 2.*set.*src_ip 12.10.10.1.*dst_ip 22.20.20.2.*key_id 3.*dst_port 3130.*csum pass.*index 3.*set.*src_ip 13.10.10.1.*dst_ip 23.20.20.2.*key_id 4.*dst_port 3131.*nocsum continue.*index 4", 855 "matchCount": "1", 856 "teardown": [ 857 "$TC actions flush action tunnel_key" 858 ] 859 }, 860 { 861 "id": "6783", 862 "name": "Flush all existing tunnel_key actions", 863 "category": [ 864 "actions", 865 "tunnel_key" 866 ], 867 "setup": [ 868 [ 869 "$TC actions flush action tunnel_key", 870 0, 871 1, 872 255 873 ], 874 "$TC actions add action tunnel_key set src_ip 10.10.10.1 dst_ip 20.20.20.2 dst_port 3128 nocsum id 1 pipe index 1", 875 "$TC actions add action tunnel_key set src_ip 11.10.10.1 dst_ip 21.20.20.2 dst_port 3129 csum id 2 reclassify index 2", 876 "$TC actions add action tunnel_key set src_ip 12.10.10.1 dst_ip 22.20.20.2 dst_port 3130 csum id 3 pass index 3", 877 "$TC actions add action tunnel_key set src_ip 13.10.10.1 dst_ip 23.20.20.2 dst_port 3131 nocsum id 4 continue index 4" 878 ], 879 "cmdUnderTest": "$TC actions flush action tunnel_key", 880 "expExitCode": "0", 881 "verifyCmd": "$TC actions list action tunnel_key", 882 "matchPattern": "action order [0-9]+:.*", 883 "matchCount": "0", 884 "teardown": [ 885 "$TC actions flush action tunnel_key" 886 ] 887 }, 888 { 889 "id": "8242", 890 "name": "Replace tunnel_key set action with invalid goto chain", 891 "category": [ 892 "actions", 893 "tunnel_key" 894 ], 895 "setup": [ 896 [ 897 "$TC actions flush action tunnel_key", 898 0, 899 1, 900 255 901 ], 902 "$TC actions add action tunnel_key set src_ip 10.10.10.1 dst_ip 20.20.20.2 dst_port 3128 nocsum id 1 pass index 90" 903 ], 904 "cmdUnderTest": "$TC actions replace action tunnel_key set src_ip 10.10.10.2 dst_ip 20.20.20.1 dst_port 3129 id 2 csum goto chain 42 index 90 cookie c1a0c1a0", 905 "expExitCode": "255", 906 "verifyCmd": "$TC actions get action tunnel_key index 90", 907 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 10.10.10.1.*dst_ip 20.20.20.2.*key_id 1.*dst_port 3128.*csum pass.*index 90 ref", 908 "matchCount": "1", 909 "teardown": [ 910 "$TC actions flush action tunnel_key" 911 ] 912 }, 913 { 914 "id": "0cd2", 915 "name": "Add tunnel_key set action with no_percpu flag", 916 "category": [ 917 "actions", 918 "tunnel_key" 919 ], 920 "setup": [ 921 [ 922 "$TC actions flush action tunnel_key", 923 0, 924 1, 925 255 926 ] 927 ], 928 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 10.10.10.1 dst_ip 20.20.20.2 id 1 no_percpu", 929 "expExitCode": "0", 930 "verifyCmd": "$TC actions list action tunnel_key", 931 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 10.10.10.1.*dst_ip 20.20.20.2.*key_id 1.*no_percpu", 932 "matchCount": "1", 933 "teardown": [ 934 "$TC actions flush action tunnel_key" 935 ] 936 }, 937 { 938 "id": "3671", 939 "name": "Delete tunnel_key set action with valid index", 940 "category": [ 941 "actions", 942 "tunnel_key" 943 ], 944 "setup": [ 945 [ 946 "$TC actions flush action tunnel_key", 947 0, 948 1, 949 255 950 ], 951 "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 index 1" 952 ], 953 "cmdUnderTest": "$TC actions del action tunnel_key index 1", 954 "expExitCode": "0", 955 "verifyCmd": "$TC actions list action tunnel_key", 956 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*index 1", 957 "matchCount": "0", 958 "teardown": [ 959 "$TC actions flush action tunnel_key" 960 ] 961 }, 962 { 963 "id": "8597", 964 "name": "Delete tunnel_key set action with invalid index", 965 "category": [ 966 "actions", 967 "tunnel_key" 968 ], 969 "setup": [ 970 [ 971 "$TC actions flush action tunnel_key", 972 0, 973 1, 974 255 975 ], 976 "$TC actions add action tunnel_key set src_ip 1.1.1.1 dst_ip 2.2.2.2 index 1" 977 ], 978 "cmdUnderTest": "$TC actions del action tunnel_key index 10", 979 "expExitCode": "255", 980 "verifyCmd": "$TC actions list action tunnel_key", 981 "matchPattern": "action order [0-9]+: tunnel_key.*set.*src_ip 1.1.1.1.*dst_ip 2.2.2.2.*index 1", 982 "matchCount": "1", 983 "teardown": [ 984 "$TC actions flush action tunnel_key" 985 ] 986 }, 987 { 988 "id": "6bda", 989 "name": "Add tunnel_key action with nofrag option", 990 "category": [ 991 "actions", 992 "tunnel_key" 993 ], 994 "dependsOn": "$TC actions add action tunnel_key help 2>&1 | grep -q nofrag", 995 "setup": [ 996 [ 997 "$TC action flush action tunnel_key", 998 0, 999 1, 1000 255 1001 ] 1002 ], 1003 "cmdUnderTest": "$TC actions add action tunnel_key set src_ip 10.10.10.1 dst_ip 10.10.10.2 id 1111 nofrag index 222", 1004 "expExitCode": "0", 1005 "verifyCmd": "$TC actions get action tunnel_key index 222", 1006 "matchPattern": "action order [0-9]+: tunnel_key.*src_ip 10.10.10.1.*dst_ip 10.10.10.2.*key_id 1111.*csum.*nofrag pipe.*index 222", 1007 "matchCount": "1", 1008 "teardown": [ 1009 "$TC actions flush action tunnel_key" 1010 ] 1011 } 1012] 1013