1*4882a593Smuzhiyun[ 2*4882a593Smuzhiyun { 3*4882a593Smuzhiyun "id": "6236", 4*4882a593Smuzhiyun "name": "Add skbedit action with valid mark", 5*4882a593Smuzhiyun "category": [ 6*4882a593Smuzhiyun "actions", 7*4882a593Smuzhiyun "skbedit" 8*4882a593Smuzhiyun ], 9*4882a593Smuzhiyun "setup": [ 10*4882a593Smuzhiyun [ 11*4882a593Smuzhiyun "$TC actions flush action skbedit", 12*4882a593Smuzhiyun 0, 13*4882a593Smuzhiyun 1, 14*4882a593Smuzhiyun 255 15*4882a593Smuzhiyun ] 16*4882a593Smuzhiyun ], 17*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit mark 1", 18*4882a593Smuzhiyun "expExitCode": "0", 19*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 20*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit mark 1", 21*4882a593Smuzhiyun "matchCount": "1", 22*4882a593Smuzhiyun "teardown": [ 23*4882a593Smuzhiyun "$TC actions flush action skbedit" 24*4882a593Smuzhiyun ] 25*4882a593Smuzhiyun }, 26*4882a593Smuzhiyun { 27*4882a593Smuzhiyun "id": "c8cf", 28*4882a593Smuzhiyun "name": "Add skbedit action with 32-bit maximum mark", 29*4882a593Smuzhiyun "category": [ 30*4882a593Smuzhiyun "actions", 31*4882a593Smuzhiyun "skbedit" 32*4882a593Smuzhiyun ], 33*4882a593Smuzhiyun "setup": [ 34*4882a593Smuzhiyun [ 35*4882a593Smuzhiyun "$TC actions flush action skbedit", 36*4882a593Smuzhiyun 0, 37*4882a593Smuzhiyun 1, 38*4882a593Smuzhiyun 255 39*4882a593Smuzhiyun ] 40*4882a593Smuzhiyun ], 41*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit mark 4294967295 pipe index 1", 42*4882a593Smuzhiyun "expExitCode": "0", 43*4882a593Smuzhiyun "verifyCmd": "$TC actions get action skbedit index 1", 44*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit mark 4294967295.*pipe.*index 1", 45*4882a593Smuzhiyun "matchCount": "1", 46*4882a593Smuzhiyun "teardown": [ 47*4882a593Smuzhiyun "$TC actions flush action skbedit" 48*4882a593Smuzhiyun ] 49*4882a593Smuzhiyun }, 50*4882a593Smuzhiyun { 51*4882a593Smuzhiyun "id": "407b", 52*4882a593Smuzhiyun "name": "Add skbedit action with mark exceeding 32-bit maximum", 53*4882a593Smuzhiyun "category": [ 54*4882a593Smuzhiyun "actions", 55*4882a593Smuzhiyun "skbedit" 56*4882a593Smuzhiyun ], 57*4882a593Smuzhiyun "setup": [ 58*4882a593Smuzhiyun [ 59*4882a593Smuzhiyun "$TC actions flush action skbedit", 60*4882a593Smuzhiyun 0, 61*4882a593Smuzhiyun 1, 62*4882a593Smuzhiyun 255 63*4882a593Smuzhiyun ] 64*4882a593Smuzhiyun ], 65*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit mark 666777888999", 66*4882a593Smuzhiyun "expExitCode": "255", 67*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 68*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit mark", 69*4882a593Smuzhiyun "matchCount": "0", 70*4882a593Smuzhiyun "teardown": [] 71*4882a593Smuzhiyun }, 72*4882a593Smuzhiyun { 73*4882a593Smuzhiyun "id": "d4cd", 74*4882a593Smuzhiyun "name": "Add skbedit action with valid mark and mask", 75*4882a593Smuzhiyun "category": [ 76*4882a593Smuzhiyun "actions", 77*4882a593Smuzhiyun "skbedit" 78*4882a593Smuzhiyun ], 79*4882a593Smuzhiyun "setup": [ 80*4882a593Smuzhiyun [ 81*4882a593Smuzhiyun "$TC actions flush action skbedit", 82*4882a593Smuzhiyun 0, 83*4882a593Smuzhiyun 1, 84*4882a593Smuzhiyun 255 85*4882a593Smuzhiyun ] 86*4882a593Smuzhiyun ], 87*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit mark 1/0xaabb", 88*4882a593Smuzhiyun "expExitCode": "0", 89*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 90*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit mark 1/0xaabb", 91*4882a593Smuzhiyun "matchCount": "1", 92*4882a593Smuzhiyun "teardown": [ 93*4882a593Smuzhiyun "$TC actions flush action skbedit" 94*4882a593Smuzhiyun ] 95*4882a593Smuzhiyun }, 96*4882a593Smuzhiyun { 97*4882a593Smuzhiyun "id": "baa7", 98*4882a593Smuzhiyun "name": "Add skbedit action with valid mark and 32-bit maximum mask", 99*4882a593Smuzhiyun "category": [ 100*4882a593Smuzhiyun "actions", 101*4882a593Smuzhiyun "skbedit" 102*4882a593Smuzhiyun ], 103*4882a593Smuzhiyun "setup": [ 104*4882a593Smuzhiyun [ 105*4882a593Smuzhiyun "$TC actions flush action skbedit", 106*4882a593Smuzhiyun 0, 107*4882a593Smuzhiyun 1, 108*4882a593Smuzhiyun 255 109*4882a593Smuzhiyun ] 110*4882a593Smuzhiyun ], 111*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit mark 1/0xffffffff", 112*4882a593Smuzhiyun "expExitCode": "0", 113*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 114*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit mark 1/0xffffffff", 115*4882a593Smuzhiyun "matchCount": "1", 116*4882a593Smuzhiyun "teardown": [ 117*4882a593Smuzhiyun "$TC actions flush action skbedit" 118*4882a593Smuzhiyun ] 119*4882a593Smuzhiyun }, 120*4882a593Smuzhiyun { 121*4882a593Smuzhiyun "id": "62a5", 122*4882a593Smuzhiyun "name": "Add skbedit action with valid mark and mask exceeding 32-bit maximum", 123*4882a593Smuzhiyun "category": [ 124*4882a593Smuzhiyun "actions", 125*4882a593Smuzhiyun "skbedit" 126*4882a593Smuzhiyun ], 127*4882a593Smuzhiyun "setup": [ 128*4882a593Smuzhiyun [ 129*4882a593Smuzhiyun "$TC actions flush action skbedit", 130*4882a593Smuzhiyun 0, 131*4882a593Smuzhiyun 1, 132*4882a593Smuzhiyun 255 133*4882a593Smuzhiyun ] 134*4882a593Smuzhiyun ], 135*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit mark 1/0xaabbccddeeff112233", 136*4882a593Smuzhiyun "expExitCode": "255", 137*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 138*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit mark 1/0xaabbccddeeff112233", 139*4882a593Smuzhiyun "matchCount": "0", 140*4882a593Smuzhiyun "teardown": [] 141*4882a593Smuzhiyun }, 142*4882a593Smuzhiyun { 143*4882a593Smuzhiyun "id": "bc15", 144*4882a593Smuzhiyun "name": "Add skbedit action with valid mark and mask with invalid format", 145*4882a593Smuzhiyun "category": [ 146*4882a593Smuzhiyun "actions", 147*4882a593Smuzhiyun "skbedit" 148*4882a593Smuzhiyun ], 149*4882a593Smuzhiyun "setup": [ 150*4882a593Smuzhiyun [ 151*4882a593Smuzhiyun "$TC actions flush action skbedit", 152*4882a593Smuzhiyun 0, 153*4882a593Smuzhiyun 1, 154*4882a593Smuzhiyun 255 155*4882a593Smuzhiyun ] 156*4882a593Smuzhiyun ], 157*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit mark 1/-1234", 158*4882a593Smuzhiyun "expExitCode": "255", 159*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 160*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit mark 1/-1234", 161*4882a593Smuzhiyun "matchCount": "0", 162*4882a593Smuzhiyun "teardown": [] 163*4882a593Smuzhiyun }, 164*4882a593Smuzhiyun { 165*4882a593Smuzhiyun "id": "57c2", 166*4882a593Smuzhiyun "name": "Replace skbedit action with new mask", 167*4882a593Smuzhiyun "category": [ 168*4882a593Smuzhiyun "actions", 169*4882a593Smuzhiyun "skbedit" 170*4882a593Smuzhiyun ], 171*4882a593Smuzhiyun "setup": [ 172*4882a593Smuzhiyun [ 173*4882a593Smuzhiyun "$TC actions flush action skbedit", 174*4882a593Smuzhiyun 0, 175*4882a593Smuzhiyun 1, 176*4882a593Smuzhiyun 255 177*4882a593Smuzhiyun ], 178*4882a593Smuzhiyun "$TC actions add action skbedit mark 1/0x11223344 index 1" 179*4882a593Smuzhiyun ], 180*4882a593Smuzhiyun "cmdUnderTest": "$TC actions replace action skbedit mark 1/0xaabb index 1", 181*4882a593Smuzhiyun "expExitCode": "0", 182*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 183*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit mark 1/0xaabb", 184*4882a593Smuzhiyun "matchCount": "1", 185*4882a593Smuzhiyun "teardown": [ 186*4882a593Smuzhiyun "$TC actions flush action skbedit" 187*4882a593Smuzhiyun ] 188*4882a593Smuzhiyun }, 189*4882a593Smuzhiyun { 190*4882a593Smuzhiyun "id": "081d", 191*4882a593Smuzhiyun "name": "Add skbedit action with priority", 192*4882a593Smuzhiyun "category": [ 193*4882a593Smuzhiyun "actions", 194*4882a593Smuzhiyun "skbedit" 195*4882a593Smuzhiyun ], 196*4882a593Smuzhiyun "setup": [ 197*4882a593Smuzhiyun [ 198*4882a593Smuzhiyun "$TC actions flush action skbedit", 199*4882a593Smuzhiyun 0, 200*4882a593Smuzhiyun 1, 201*4882a593Smuzhiyun 255 202*4882a593Smuzhiyun ] 203*4882a593Smuzhiyun ], 204*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit prio 99", 205*4882a593Smuzhiyun "expExitCode": "0", 206*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 207*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit priority :99", 208*4882a593Smuzhiyun "matchCount": "1", 209*4882a593Smuzhiyun "teardown": [ 210*4882a593Smuzhiyun "$TC actions flush action skbedit" 211*4882a593Smuzhiyun ] 212*4882a593Smuzhiyun }, 213*4882a593Smuzhiyun { 214*4882a593Smuzhiyun "id": "cc37", 215*4882a593Smuzhiyun "name": "Add skbedit action with invalid priority", 216*4882a593Smuzhiyun "category": [ 217*4882a593Smuzhiyun "actions", 218*4882a593Smuzhiyun "skbedit" 219*4882a593Smuzhiyun ], 220*4882a593Smuzhiyun "setup": [ 221*4882a593Smuzhiyun [ 222*4882a593Smuzhiyun "$TC actions flush action skbedit", 223*4882a593Smuzhiyun 0, 224*4882a593Smuzhiyun 1, 225*4882a593Smuzhiyun 255 226*4882a593Smuzhiyun ] 227*4882a593Smuzhiyun ], 228*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit prio foo", 229*4882a593Smuzhiyun "expExitCode": "255", 230*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 231*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit priority", 232*4882a593Smuzhiyun "matchCount": "0", 233*4882a593Smuzhiyun "teardown": [ 234*4882a593Smuzhiyun "$TC actions flush action skbedit" 235*4882a593Smuzhiyun ] 236*4882a593Smuzhiyun }, 237*4882a593Smuzhiyun { 238*4882a593Smuzhiyun "id": "3c95", 239*4882a593Smuzhiyun "name": "Add skbedit action with queue_mapping", 240*4882a593Smuzhiyun "category": [ 241*4882a593Smuzhiyun "actions", 242*4882a593Smuzhiyun "skbedit" 243*4882a593Smuzhiyun ], 244*4882a593Smuzhiyun "setup": [ 245*4882a593Smuzhiyun [ 246*4882a593Smuzhiyun "$TC actions flush action skbedit", 247*4882a593Smuzhiyun 0, 248*4882a593Smuzhiyun 1, 249*4882a593Smuzhiyun 255 250*4882a593Smuzhiyun ] 251*4882a593Smuzhiyun ], 252*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit queue_mapping 909", 253*4882a593Smuzhiyun "expExitCode": "0", 254*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 255*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit queue_mapping 909", 256*4882a593Smuzhiyun "matchCount": "1", 257*4882a593Smuzhiyun "teardown": [ 258*4882a593Smuzhiyun "$TC actions flush action skbedit" 259*4882a593Smuzhiyun ] 260*4882a593Smuzhiyun }, 261*4882a593Smuzhiyun { 262*4882a593Smuzhiyun "id": "985c", 263*4882a593Smuzhiyun "name": "Add skbedit action with queue_mapping exceeding 16-bit maximum", 264*4882a593Smuzhiyun "category": [ 265*4882a593Smuzhiyun "actions", 266*4882a593Smuzhiyun "skbedit" 267*4882a593Smuzhiyun ], 268*4882a593Smuzhiyun "setup": [ 269*4882a593Smuzhiyun [ 270*4882a593Smuzhiyun "$TC actions flush action skbedit", 271*4882a593Smuzhiyun 0, 272*4882a593Smuzhiyun 1, 273*4882a593Smuzhiyun 255 274*4882a593Smuzhiyun ] 275*4882a593Smuzhiyun ], 276*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit queue_mapping 67000", 277*4882a593Smuzhiyun "expExitCode": "255", 278*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 279*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit queue_mapping", 280*4882a593Smuzhiyun "matchCount": "0", 281*4882a593Smuzhiyun "teardown": [ 282*4882a593Smuzhiyun "$TC actions flush action skbedit" 283*4882a593Smuzhiyun ] 284*4882a593Smuzhiyun }, 285*4882a593Smuzhiyun { 286*4882a593Smuzhiyun "id": "224f", 287*4882a593Smuzhiyun "name": "Add skbedit action with ptype host", 288*4882a593Smuzhiyun "category": [ 289*4882a593Smuzhiyun "actions", 290*4882a593Smuzhiyun "skbedit" 291*4882a593Smuzhiyun ], 292*4882a593Smuzhiyun "setup": [ 293*4882a593Smuzhiyun [ 294*4882a593Smuzhiyun "$TC actions flush action skbedit", 295*4882a593Smuzhiyun 0, 296*4882a593Smuzhiyun 1, 297*4882a593Smuzhiyun 255 298*4882a593Smuzhiyun ] 299*4882a593Smuzhiyun ], 300*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit ptype host", 301*4882a593Smuzhiyun "expExitCode": "0", 302*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 303*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit ptype host", 304*4882a593Smuzhiyun "matchCount": "1", 305*4882a593Smuzhiyun "teardown": [ 306*4882a593Smuzhiyun "$TC actions flush action skbedit" 307*4882a593Smuzhiyun ] 308*4882a593Smuzhiyun }, 309*4882a593Smuzhiyun { 310*4882a593Smuzhiyun "id": "d1a3", 311*4882a593Smuzhiyun "name": "Add skbedit action with ptype otherhost", 312*4882a593Smuzhiyun "category": [ 313*4882a593Smuzhiyun "actions", 314*4882a593Smuzhiyun "skbedit" 315*4882a593Smuzhiyun ], 316*4882a593Smuzhiyun "setup": [ 317*4882a593Smuzhiyun [ 318*4882a593Smuzhiyun "$TC actions flush action skbedit", 319*4882a593Smuzhiyun 0, 320*4882a593Smuzhiyun 1, 321*4882a593Smuzhiyun 255 322*4882a593Smuzhiyun ] 323*4882a593Smuzhiyun ], 324*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit ptype otherhost", 325*4882a593Smuzhiyun "expExitCode": "0", 326*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 327*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit ptype otherhost", 328*4882a593Smuzhiyun "matchCount": "1", 329*4882a593Smuzhiyun "teardown": [ 330*4882a593Smuzhiyun "$TC actions flush action skbedit" 331*4882a593Smuzhiyun ] 332*4882a593Smuzhiyun }, 333*4882a593Smuzhiyun { 334*4882a593Smuzhiyun "id": "b9c6", 335*4882a593Smuzhiyun "name": "Add skbedit action with invalid ptype", 336*4882a593Smuzhiyun "category": [ 337*4882a593Smuzhiyun "actions", 338*4882a593Smuzhiyun "skbedit" 339*4882a593Smuzhiyun ], 340*4882a593Smuzhiyun "setup": [ 341*4882a593Smuzhiyun [ 342*4882a593Smuzhiyun "$TC actions flush action skbedit", 343*4882a593Smuzhiyun 0, 344*4882a593Smuzhiyun 1, 345*4882a593Smuzhiyun 255 346*4882a593Smuzhiyun ] 347*4882a593Smuzhiyun ], 348*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit ptype openair", 349*4882a593Smuzhiyun "expExitCode": "255", 350*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 351*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit ptype openair", 352*4882a593Smuzhiyun "matchCount": "0", 353*4882a593Smuzhiyun "teardown": [ 354*4882a593Smuzhiyun "$TC actions flush action skbedit" 355*4882a593Smuzhiyun ] 356*4882a593Smuzhiyun }, 357*4882a593Smuzhiyun { 358*4882a593Smuzhiyun "id": "464a", 359*4882a593Smuzhiyun "name": "Add skbedit action with control pipe", 360*4882a593Smuzhiyun "category": [ 361*4882a593Smuzhiyun "actions", 362*4882a593Smuzhiyun "skbedit" 363*4882a593Smuzhiyun ], 364*4882a593Smuzhiyun "setup": [ 365*4882a593Smuzhiyun [ 366*4882a593Smuzhiyun "$TC actions flush action skbedit", 367*4882a593Smuzhiyun 0, 368*4882a593Smuzhiyun 1, 369*4882a593Smuzhiyun 255 370*4882a593Smuzhiyun ] 371*4882a593Smuzhiyun ], 372*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit ptype host pipe index 11", 373*4882a593Smuzhiyun "expExitCode": "0", 374*4882a593Smuzhiyun "verifyCmd": "$TC actions get action skbedit index 11", 375*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit ptype host pipe.*index 11 ref", 376*4882a593Smuzhiyun "matchCount": "1", 377*4882a593Smuzhiyun "teardown": [ 378*4882a593Smuzhiyun "$TC actions flush action skbedit" 379*4882a593Smuzhiyun ] 380*4882a593Smuzhiyun }, 381*4882a593Smuzhiyun { 382*4882a593Smuzhiyun "id": "212f", 383*4882a593Smuzhiyun "name": "Add skbedit action with control reclassify", 384*4882a593Smuzhiyun "category": [ 385*4882a593Smuzhiyun "actions", 386*4882a593Smuzhiyun "skbedit" 387*4882a593Smuzhiyun ], 388*4882a593Smuzhiyun "setup": [ 389*4882a593Smuzhiyun [ 390*4882a593Smuzhiyun "$TC actions flush action skbedit", 391*4882a593Smuzhiyun 0, 392*4882a593Smuzhiyun 1, 393*4882a593Smuzhiyun 255 394*4882a593Smuzhiyun ] 395*4882a593Smuzhiyun ], 396*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit mark 56789 reclassify index 90", 397*4882a593Smuzhiyun "expExitCode": "0", 398*4882a593Smuzhiyun "verifyCmd": "$TC actions get action skbedit index 90", 399*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit mark 56789 reclassify.*index 90 ref", 400*4882a593Smuzhiyun "matchCount": "1", 401*4882a593Smuzhiyun "teardown": [ 402*4882a593Smuzhiyun "$TC actions flush action skbedit" 403*4882a593Smuzhiyun ] 404*4882a593Smuzhiyun }, 405*4882a593Smuzhiyun { 406*4882a593Smuzhiyun "id": "0651", 407*4882a593Smuzhiyun "name": "Add skbedit action with control pass", 408*4882a593Smuzhiyun "category": [ 409*4882a593Smuzhiyun "actions", 410*4882a593Smuzhiyun "skbedit" 411*4882a593Smuzhiyun ], 412*4882a593Smuzhiyun "setup": [ 413*4882a593Smuzhiyun [ 414*4882a593Smuzhiyun "$TC actions flush action skbedit", 415*4882a593Smuzhiyun 0, 416*4882a593Smuzhiyun 1, 417*4882a593Smuzhiyun 255 418*4882a593Smuzhiyun ] 419*4882a593Smuzhiyun ], 420*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit queue_mapping 3 pass index 271", 421*4882a593Smuzhiyun "expExitCode": "0", 422*4882a593Smuzhiyun "verifyCmd": "$TC actions get action skbedit index 271", 423*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit queue_mapping 3 pass.*index 271 ref", 424*4882a593Smuzhiyun "matchCount": "1", 425*4882a593Smuzhiyun "teardown": [ 426*4882a593Smuzhiyun "$TC actions flush action skbedit" 427*4882a593Smuzhiyun ] 428*4882a593Smuzhiyun }, 429*4882a593Smuzhiyun { 430*4882a593Smuzhiyun "id": "cc53", 431*4882a593Smuzhiyun "name": "Add skbedit action with control drop", 432*4882a593Smuzhiyun "category": [ 433*4882a593Smuzhiyun "actions", 434*4882a593Smuzhiyun "skbedit" 435*4882a593Smuzhiyun ], 436*4882a593Smuzhiyun "setup": [ 437*4882a593Smuzhiyun [ 438*4882a593Smuzhiyun "$TC actions flush action skbedit", 439*4882a593Smuzhiyun 0, 440*4882a593Smuzhiyun 1, 441*4882a593Smuzhiyun 255 442*4882a593Smuzhiyun ] 443*4882a593Smuzhiyun ], 444*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit queue_mapping 3 drop index 271", 445*4882a593Smuzhiyun "expExitCode": "0", 446*4882a593Smuzhiyun "verifyCmd": "$TC actions get action skbedit index 271", 447*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit queue_mapping 3 drop.*index 271 ref", 448*4882a593Smuzhiyun "matchCount": "1", 449*4882a593Smuzhiyun "teardown": [ 450*4882a593Smuzhiyun "$TC actions flush action skbedit" 451*4882a593Smuzhiyun ] 452*4882a593Smuzhiyun }, 453*4882a593Smuzhiyun { 454*4882a593Smuzhiyun "id": "ec16", 455*4882a593Smuzhiyun "name": "Add skbedit action with control jump", 456*4882a593Smuzhiyun "category": [ 457*4882a593Smuzhiyun "actions", 458*4882a593Smuzhiyun "skbedit" 459*4882a593Smuzhiyun ], 460*4882a593Smuzhiyun "setup": [ 461*4882a593Smuzhiyun [ 462*4882a593Smuzhiyun "$TC actions flush action skbedit", 463*4882a593Smuzhiyun 0, 464*4882a593Smuzhiyun 1, 465*4882a593Smuzhiyun 255 466*4882a593Smuzhiyun ] 467*4882a593Smuzhiyun ], 468*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit priority 8 jump 9 index 2", 469*4882a593Smuzhiyun "expExitCode": "0", 470*4882a593Smuzhiyun "verifyCmd": "$TC actions get action skbedit index 2", 471*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit priority :8 jump 9.*index 2 ref", 472*4882a593Smuzhiyun "matchCount": "1", 473*4882a593Smuzhiyun "teardown": [ 474*4882a593Smuzhiyun "$TC actions flush action skbedit" 475*4882a593Smuzhiyun ] 476*4882a593Smuzhiyun }, 477*4882a593Smuzhiyun { 478*4882a593Smuzhiyun "id": "db54", 479*4882a593Smuzhiyun "name": "Add skbedit action with control continue", 480*4882a593Smuzhiyun "category": [ 481*4882a593Smuzhiyun "actions", 482*4882a593Smuzhiyun "skbedit" 483*4882a593Smuzhiyun ], 484*4882a593Smuzhiyun "setup": [ 485*4882a593Smuzhiyun [ 486*4882a593Smuzhiyun "$TC actions flush action skbedit", 487*4882a593Smuzhiyun 0, 488*4882a593Smuzhiyun 1, 489*4882a593Smuzhiyun 255 490*4882a593Smuzhiyun ] 491*4882a593Smuzhiyun ], 492*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit priority 16 continue index 32", 493*4882a593Smuzhiyun "expExitCode": "0", 494*4882a593Smuzhiyun "verifyCmd": "$TC actions get action skbedit index 32", 495*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit priority :16 continue.*index 32 ref", 496*4882a593Smuzhiyun "matchCount": "1", 497*4882a593Smuzhiyun "teardown": [ 498*4882a593Smuzhiyun "$TC actions flush action skbedit" 499*4882a593Smuzhiyun ] 500*4882a593Smuzhiyun }, 501*4882a593Smuzhiyun { 502*4882a593Smuzhiyun "id": "1055", 503*4882a593Smuzhiyun "name": "Add skbedit action with cookie", 504*4882a593Smuzhiyun "category": [ 505*4882a593Smuzhiyun "actions", 506*4882a593Smuzhiyun "skbedit" 507*4882a593Smuzhiyun ], 508*4882a593Smuzhiyun "setup": [ 509*4882a593Smuzhiyun [ 510*4882a593Smuzhiyun "$TC actions flush action skbedit", 511*4882a593Smuzhiyun 0, 512*4882a593Smuzhiyun 1, 513*4882a593Smuzhiyun 255 514*4882a593Smuzhiyun ] 515*4882a593Smuzhiyun ], 516*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit priority 16 continue index 32 cookie deadbeef", 517*4882a593Smuzhiyun "expExitCode": "0", 518*4882a593Smuzhiyun "verifyCmd": "$TC actions get action skbedit index 32", 519*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit priority :16 continue.*index 32 ref.*cookie deadbeef", 520*4882a593Smuzhiyun "matchCount": "1", 521*4882a593Smuzhiyun "teardown": [ 522*4882a593Smuzhiyun "$TC actions flush action skbedit" 523*4882a593Smuzhiyun ] 524*4882a593Smuzhiyun }, 525*4882a593Smuzhiyun { 526*4882a593Smuzhiyun "id": "5172", 527*4882a593Smuzhiyun "name": "List skbedit actions", 528*4882a593Smuzhiyun "category": [ 529*4882a593Smuzhiyun "actions", 530*4882a593Smuzhiyun "skbedit" 531*4882a593Smuzhiyun ], 532*4882a593Smuzhiyun "setup": [ 533*4882a593Smuzhiyun [ 534*4882a593Smuzhiyun "$TC actions flush action skbedit", 535*4882a593Smuzhiyun 0, 536*4882a593Smuzhiyun 1, 537*4882a593Smuzhiyun 255 538*4882a593Smuzhiyun ], 539*4882a593Smuzhiyun "$TC actions add action skbedit ptype otherhost", 540*4882a593Smuzhiyun "$TC actions add action skbedit ptype broadcast", 541*4882a593Smuzhiyun "$TC actions add action skbedit mark 59", 542*4882a593Smuzhiyun "$TC actions add action skbedit mark 409" 543*4882a593Smuzhiyun ], 544*4882a593Smuzhiyun "cmdUnderTest": "$TC actions list action skbedit", 545*4882a593Smuzhiyun "expExitCode": "0", 546*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 547*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit", 548*4882a593Smuzhiyun "matchCount": "4", 549*4882a593Smuzhiyun "teardown": [ 550*4882a593Smuzhiyun "$TC actions flush action skbedit" 551*4882a593Smuzhiyun ] 552*4882a593Smuzhiyun }, 553*4882a593Smuzhiyun { 554*4882a593Smuzhiyun "id": "a6d6", 555*4882a593Smuzhiyun "name": "Add skbedit action with index at 32-bit maximum", 556*4882a593Smuzhiyun "category": [ 557*4882a593Smuzhiyun "actions", 558*4882a593Smuzhiyun "skbedit" 559*4882a593Smuzhiyun ], 560*4882a593Smuzhiyun "setup": [ 561*4882a593Smuzhiyun [ 562*4882a593Smuzhiyun "$TC actions flush action skbedit", 563*4882a593Smuzhiyun 0, 564*4882a593Smuzhiyun 1, 565*4882a593Smuzhiyun 255 566*4882a593Smuzhiyun ] 567*4882a593Smuzhiyun ], 568*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit mark 808 index 4294967295", 569*4882a593Smuzhiyun "expExitCode": "0", 570*4882a593Smuzhiyun "verifyCmd": "$TC actions get action skbedit index 4294967295", 571*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit mark 808.*index 4294967295", 572*4882a593Smuzhiyun "matchCount": "1", 573*4882a593Smuzhiyun "teardown": [ 574*4882a593Smuzhiyun "$TC actions flush action skbedit" 575*4882a593Smuzhiyun ] 576*4882a593Smuzhiyun }, 577*4882a593Smuzhiyun { 578*4882a593Smuzhiyun "id": "f0f4", 579*4882a593Smuzhiyun "name": "Add skbedit action with index exceeding 32-bit maximum", 580*4882a593Smuzhiyun "category": [ 581*4882a593Smuzhiyun "actions", 582*4882a593Smuzhiyun "skbedit" 583*4882a593Smuzhiyun ], 584*4882a593Smuzhiyun "setup": [ 585*4882a593Smuzhiyun [ 586*4882a593Smuzhiyun "$TC actions flush action skbedit", 587*4882a593Smuzhiyun 0, 588*4882a593Smuzhiyun 1, 589*4882a593Smuzhiyun 255 590*4882a593Smuzhiyun ] 591*4882a593Smuzhiyun ], 592*4882a593Smuzhiyun "cmdUnderTest": "$TC actions add action skbedit mark 808 pass index 4294967297", 593*4882a593Smuzhiyun "expExitCode": "255", 594*4882a593Smuzhiyun "verifyCmd": "$TC actions get action skbedit index 4294967297", 595*4882a593Smuzhiyun "matchPattern": "action order [0-9]*:.*skbedit.*mark 808.*pass.*index 4294967297", 596*4882a593Smuzhiyun "matchCount": "0", 597*4882a593Smuzhiyun "teardown": [] 598*4882a593Smuzhiyun }, 599*4882a593Smuzhiyun { 600*4882a593Smuzhiyun "id": "38f3", 601*4882a593Smuzhiyun "name": "Delete skbedit action", 602*4882a593Smuzhiyun "category": [ 603*4882a593Smuzhiyun "actions", 604*4882a593Smuzhiyun "skbedit" 605*4882a593Smuzhiyun ], 606*4882a593Smuzhiyun "setup": [ 607*4882a593Smuzhiyun [ 608*4882a593Smuzhiyun "$TC actions flush action skbedit", 609*4882a593Smuzhiyun 0, 610*4882a593Smuzhiyun 1, 611*4882a593Smuzhiyun 255 612*4882a593Smuzhiyun ], 613*4882a593Smuzhiyun "$TC actions add action skbedit mark 42 index 9009" 614*4882a593Smuzhiyun ], 615*4882a593Smuzhiyun "cmdUnderTest": "$TC actions del action skbedit index 9009", 616*4882a593Smuzhiyun "expExitCode": "0", 617*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 618*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit mark 42", 619*4882a593Smuzhiyun "matchCount": "0", 620*4882a593Smuzhiyun "teardown": [ 621*4882a593Smuzhiyun "$TC actions flush action skbedit" 622*4882a593Smuzhiyun ] 623*4882a593Smuzhiyun }, 624*4882a593Smuzhiyun { 625*4882a593Smuzhiyun "id": "ce97", 626*4882a593Smuzhiyun "name": "Flush skbedit actions", 627*4882a593Smuzhiyun "category": [ 628*4882a593Smuzhiyun "actions", 629*4882a593Smuzhiyun "skbedit" 630*4882a593Smuzhiyun ], 631*4882a593Smuzhiyun "setup": [ 632*4882a593Smuzhiyun "$TC actions add action skbedit mark 500", 633*4882a593Smuzhiyun "$TC actions add action skbedit mark 501", 634*4882a593Smuzhiyun "$TC actions add action skbedit mark 502", 635*4882a593Smuzhiyun "$TC actions add action skbedit mark 503", 636*4882a593Smuzhiyun "$TC actions add action skbedit mark 504", 637*4882a593Smuzhiyun "$TC actions add action skbedit mark 505", 638*4882a593Smuzhiyun "$TC actions add action skbedit mark 506" 639*4882a593Smuzhiyun ], 640*4882a593Smuzhiyun "cmdUnderTest": "$TC actions flush action skbedit", 641*4882a593Smuzhiyun "expExitCode": "0", 642*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 643*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit", 644*4882a593Smuzhiyun "matchCount": "0", 645*4882a593Smuzhiyun "teardown": [ 646*4882a593Smuzhiyun "$TC actions flush action skbedit" 647*4882a593Smuzhiyun ] 648*4882a593Smuzhiyun }, 649*4882a593Smuzhiyun { 650*4882a593Smuzhiyun "id": "1b2b", 651*4882a593Smuzhiyun "name": "Replace skbedit action with invalid goto_chain control", 652*4882a593Smuzhiyun "category": [ 653*4882a593Smuzhiyun "actions", 654*4882a593Smuzhiyun "skbedit" 655*4882a593Smuzhiyun ], 656*4882a593Smuzhiyun "setup": [ 657*4882a593Smuzhiyun [ 658*4882a593Smuzhiyun "$TC actions flush action skbedit", 659*4882a593Smuzhiyun 0, 660*4882a593Smuzhiyun 1, 661*4882a593Smuzhiyun 255 662*4882a593Smuzhiyun ], 663*4882a593Smuzhiyun "$TC actions add action skbedit ptype host pass index 90" 664*4882a593Smuzhiyun ], 665*4882a593Smuzhiyun "cmdUnderTest": "$TC actions replace action skbedit ptype host goto chain 42 index 90 cookie c1a0c1a0", 666*4882a593Smuzhiyun "expExitCode": "255", 667*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 668*4882a593Smuzhiyun "matchPattern": "action order [0-9]*: skbedit ptype host pass.*index 90 ref", 669*4882a593Smuzhiyun "matchCount": "1", 670*4882a593Smuzhiyun "teardown": [ 671*4882a593Smuzhiyun "$TC actions flush action skbedit" 672*4882a593Smuzhiyun ] 673*4882a593Smuzhiyun }, 674*4882a593Smuzhiyun { 675*4882a593Smuzhiyun "id": "630c", 676*4882a593Smuzhiyun "name": "Add batch of 32 skbedit actions with all parameters and cookie", 677*4882a593Smuzhiyun "category": [ 678*4882a593Smuzhiyun "actions", 679*4882a593Smuzhiyun "skbedit" 680*4882a593Smuzhiyun ], 681*4882a593Smuzhiyun "setup": [ 682*4882a593Smuzhiyun [ 683*4882a593Smuzhiyun "$TC actions flush action skbedit", 684*4882a593Smuzhiyun 0, 685*4882a593Smuzhiyun 1, 686*4882a593Smuzhiyun 255 687*4882a593Smuzhiyun ] 688*4882a593Smuzhiyun ], 689*4882a593Smuzhiyun "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action skbedit queue_mapping 2 priority 10 mark 7/0xaabbccdd ptype host inheritdsfield index \\$i cookie aabbccddeeff112233445566778800a1 \\\"; args=\"\\$args\\$cmd\"; done && $TC actions add \\$args\"", 690*4882a593Smuzhiyun "expExitCode": "0", 691*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 692*4882a593Smuzhiyun "matchPattern": "^[ \t]+index [0-9]+ ref", 693*4882a593Smuzhiyun "matchCount": "32", 694*4882a593Smuzhiyun "teardown": [ 695*4882a593Smuzhiyun "$TC actions flush action skbedit" 696*4882a593Smuzhiyun ] 697*4882a593Smuzhiyun }, 698*4882a593Smuzhiyun { 699*4882a593Smuzhiyun "id": "706d", 700*4882a593Smuzhiyun "name": "Delete batch of 32 skbedit actions with all parameters", 701*4882a593Smuzhiyun "category": [ 702*4882a593Smuzhiyun "actions", 703*4882a593Smuzhiyun "skbedit" 704*4882a593Smuzhiyun ], 705*4882a593Smuzhiyun "setup": [ 706*4882a593Smuzhiyun [ 707*4882a593Smuzhiyun "$TC actions flush action skbedit", 708*4882a593Smuzhiyun 0, 709*4882a593Smuzhiyun 1, 710*4882a593Smuzhiyun 255 711*4882a593Smuzhiyun ], 712*4882a593Smuzhiyun "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action skbedit queue_mapping 2 priority 10 mark 7/0xaabbccdd ptype host inheritdsfield index \\$i \\\"; args=\\\"\\$args\\$cmd\\\"; done && $TC actions add \\$args\"" 713*4882a593Smuzhiyun ], 714*4882a593Smuzhiyun "cmdUnderTest": "bash -c \"for i in \\`seq 1 32\\`; do cmd=\\\"action skbedit index \\$i \\\"; args=\"\\$args\\$cmd\"; done && $TC actions del \\$args\"", 715*4882a593Smuzhiyun "expExitCode": "0", 716*4882a593Smuzhiyun "verifyCmd": "$TC actions list action skbedit", 717*4882a593Smuzhiyun "matchPattern": "^[ \t]+index [0-9]+ ref", 718*4882a593Smuzhiyun "matchCount": "0", 719*4882a593Smuzhiyun "teardown": [] 720*4882a593Smuzhiyun } 721*4882a593Smuzhiyun] 722