bpf.json 10.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315
  1. [
  2. {
  3. "id": "d959",
  4. "name": "Add cBPF action with valid bytecode",
  5. "category": [
  6. "actions",
  7. "bpf"
  8. ],
  9. "setup": [
  10. [
  11. "$TC action flush action bpf",
  12. 0,
  13. 1,
  14. 255
  15. ]
  16. ],
  17. "cmdUnderTest": "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 2048,6 0 0 262144,6 0 0 0' index 100",
  18. "expExitCode": "0",
  19. "verifyCmd": "$TC action get action bpf index 100",
  20. "matchPattern": "action order [0-9]*: bpf bytecode '4,40 0 0 12,21 0 1 2048,6 0 0 262144,6 0 0 0' default-action pipe.*index 100 ref",
  21. "matchCount": "1",
  22. "teardown": [
  23. "$TC action flush action bpf"
  24. ]
  25. },
  26. {
  27. "id": "f84a",
  28. "name": "Add cBPF action with invalid bytecode",
  29. "category": [
  30. "actions",
  31. "bpf"
  32. ],
  33. "setup": [
  34. [
  35. "$TC actions flush action bpf",
  36. 0,
  37. 1,
  38. 255
  39. ]
  40. ],
  41. "cmdUnderTest": "$TC action add action bpf bytecode '4,40 0 0 12,31 0 1 2048,6 0 0 262144,6 0 0 0' index 100",
  42. "expExitCode": "255",
  43. "verifyCmd": "$TC action get action bpf index 100",
  44. "matchPattern": "action order [0-9]*: bpf bytecode '4,40 0 0 12,31 0 1 2048,6 0 0 262144,6 0 0 0' default-action pipe.*index 100 ref",
  45. "matchCount": "0",
  46. "teardown": [
  47. "$TC actions flush action bpf"
  48. ]
  49. },
  50. {
  51. "id": "e939",
  52. "name": "Add eBPF action with valid object-file",
  53. "category": [
  54. "actions",
  55. "bpf"
  56. ],
  57. "setup": [
  58. [
  59. "$TC action flush action bpf",
  60. 0,
  61. 1,
  62. 255
  63. ]
  64. ],
  65. "cmdUnderTest": "$TC action add action bpf object-file $EBPFDIR/action-ebpf section action-ok index 667",
  66. "expExitCode": "0",
  67. "verifyCmd": "$TC action get action bpf index 667",
  68. "matchPattern": "action order [0-9]*: bpf action-ebpf:\\[action-ok\\] id [0-9].* tag [0-9a-f]{16}( jited)? default-action pipe.*index 667 ref",
  69. "matchCount": "1",
  70. "teardown": [
  71. "$TC action flush action bpf"
  72. ]
  73. },
  74. {
  75. "id": "282d",
  76. "name": "Add eBPF action with invalid object-file",
  77. "category": [
  78. "actions",
  79. "bpf"
  80. ],
  81. "setup": [
  82. [
  83. "$TC action flush action bpf",
  84. 0,
  85. 1,
  86. 255
  87. ]
  88. ],
  89. "cmdUnderTest": "$TC action add action bpf object-file $EBPFDIR/action-ebpf section action-ko index 667",
  90. "expExitCode": "255",
  91. "verifyCmd": "$TC action get action bpf index 667",
  92. "matchPattern": "action order [0-9]*: bpf action-ebpf:\\[action-ko\\] id [0-9].*index 667 ref",
  93. "matchCount": "0",
  94. "teardown": [
  95. [
  96. "$TC action flush action bpf",
  97. 0,
  98. 1,
  99. 255
  100. ]
  101. ]
  102. },
  103. {
  104. "id": "d819",
  105. "name": "Replace cBPF bytecode and action control",
  106. "category": [
  107. "actions",
  108. "bpf"
  109. ],
  110. "setup": [
  111. [
  112. "$TC actions flush action bpf",
  113. 0,
  114. 1,
  115. 255
  116. ],
  117. [
  118. "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 2048,6 0 0 262144,6 0 0 0' index 555",
  119. 0,
  120. 1,
  121. 255
  122. ]
  123. ],
  124. "cmdUnderTest": "$TC action replace action bpf bytecode '4,40 0 0 12,21 0 1 2054,6 0 0 262144,6 0 0 0' drop index 555",
  125. "expExitCode": "0",
  126. "verifyCmd": "$TC action get action bpf index 555",
  127. "matchPattern": "action order [0-9]*: bpf bytecode '4,40 0 0 12,21 0 1 2054,6 0 0 262144,6 0 0 0' default-action drop.*index 555 ref",
  128. "matchCount": "1",
  129. "teardown": [
  130. "$TC action flush action bpf"
  131. ]
  132. },
  133. {
  134. "id": "6ae3",
  135. "name": "Delete cBPF action ",
  136. "category": [
  137. "actions",
  138. "bpf"
  139. ],
  140. "setup": [
  141. [
  142. "$TC actions flush action bpf",
  143. 0,
  144. 1,
  145. 255
  146. ],
  147. [
  148. "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 2048,6 0 0 262144,6 0 0 0' index 444",
  149. 0,
  150. 1,
  151. 255
  152. ]
  153. ],
  154. "cmdUnderTest": "$TC action delete action bpf index 444",
  155. "expExitCode": "0",
  156. "verifyCmd": "$TC action get action bpf index 444",
  157. "matchPattern": "action order [0-9]*: bpf bytecode '4,40 0 0 12,21 0 1 2048,6 0 0 262144,6 0 0 0' default-action pipe.*index 444 ref",
  158. "matchCount": "0",
  159. "teardown": [
  160. "$TC action flush action bpf"
  161. ]
  162. },
  163. {
  164. "id": "3e0d",
  165. "name": "List cBPF actions",
  166. "category": [
  167. "actions",
  168. "bpf"
  169. ],
  170. "setup": [
  171. [
  172. "$TC action flush action bpf",
  173. 0,
  174. 1,
  175. 255
  176. ],
  177. "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 2048,6 0 0 262144,6 0 0 0' ok index 101",
  178. "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 2054,6 0 0 262144,6 0 0 0' drop index 102",
  179. "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 33024,6 0 0 262144,6 0 0 0' continue index 103"
  180. ],
  181. "cmdUnderTest": "$TC action list action bpf",
  182. "expExitCode": "0",
  183. "verifyCmd": "$TC action list action bpf",
  184. "matchPattern": "action order [0-9]*: bpf bytecode",
  185. "matchCount": "3",
  186. "teardown": [
  187. "$TC actions flush action bpf"
  188. ]
  189. },
  190. {
  191. "id": "55ce",
  192. "name": "Flush BPF actions",
  193. "category": [
  194. "actions",
  195. "bpf"
  196. ],
  197. "setup": [
  198. [
  199. "$TC actions flush action bpf",
  200. 0,
  201. 1,
  202. 255
  203. ],
  204. "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 2048,6 0 0 262144,6 0 0 0' ok index 101",
  205. "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 2054,6 0 0 262144,6 0 0 0' drop index 102",
  206. "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 33024,6 0 0 262144,6 0 0 0' continue index 103"
  207. ],
  208. "cmdUnderTest": "$TC action flush action bpf",
  209. "expExitCode": "0",
  210. "verifyCmd": "$TC action list action bpf",
  211. "matchPattern": "action order [0-9]*: bpf bytecode",
  212. "matchCount": "0",
  213. "teardown": [
  214. "$TC actions flush action bpf"
  215. ]
  216. },
  217. {
  218. "id": "ccc3",
  219. "name": "Add cBPF action with duplicate index",
  220. "category": [
  221. "actions",
  222. "bpf"
  223. ],
  224. "setup": [
  225. [
  226. "$TC actions flush action bpf",
  227. 0,
  228. 1,
  229. 255
  230. ],
  231. "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 2048,6 0 0 262144,6 0 0 0' index 4294967295"
  232. ],
  233. "cmdUnderTest": "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 2054,6 0 0 262144,6 0 0 0' index 4294967295",
  234. "expExitCode": "255",
  235. "verifyCmd": "$TC action get action bpf index 4294967295",
  236. "matchPattern": "action order [0-9]*: bpf bytecode '4,40 0 0 12,21 0 1 2048,6 0 0 262144,6 0 0 0' default-action pipe.*index 4294967295",
  237. "matchCount": "1",
  238. "teardown": [
  239. "$TC action flush action bpf"
  240. ]
  241. },
  242. {
  243. "id": "89c7",
  244. "name": "Add cBPF action with invalid index",
  245. "category": [
  246. "actions",
  247. "bpf"
  248. ],
  249. "setup": [
  250. [
  251. "$TC actions flush action bpf",
  252. 0,
  253. 1,
  254. 255
  255. ]
  256. ],
  257. "cmdUnderTest": "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 2054,6 0 0 262144,6 0 0 0' index 4294967296 cookie 123456",
  258. "expExitCode": "255",
  259. "verifyCmd": "$TC action ls action bpf",
  260. "matchPattern": "action order [0-9]*: bpf bytecode '4,40 0 0 12,21 0 1 2048,6 0 0 262144,6 0 0 0' default-action pipe.*cookie 123456",
  261. "matchCount": "0",
  262. "teardown": [
  263. "$TC action flush action bpf"
  264. ]
  265. },
  266. {
  267. "id": "7ab9",
  268. "name": "Add cBPF action with cookie",
  269. "category": [
  270. "actions",
  271. "bpf"
  272. ],
  273. "setup": [
  274. [
  275. "$TC actions flush action bpf",
  276. 0,
  277. 1,
  278. 255
  279. ]
  280. ],
  281. "cmdUnderTest": "$TC action add action bpf bytecode '4,40 0 0 12,21 0 1 2054,6 0 0 262144,6 0 0 0' cookie d0d0d0d0d0d0d0d0",
  282. "expExitCode": "0",
  283. "verifyCmd": "$TC action list action bpf",
  284. "matchPattern": "action order [0-9]*: bpf.*cookie d0d0d0d0d0d0d0",
  285. "matchCount": "1",
  286. "teardown": [
  287. "$TC action flush action bpf"
  288. ]
  289. },
  290. {
  291. "id": "b8a1",
  292. "name": "Replace bpf action with invalid goto_chain control",
  293. "category": [
  294. "actions",
  295. "bpf"
  296. ],
  297. "setup": [
  298. [
  299. "$TC actions flush action bpf",
  300. 0,
  301. 1,
  302. 255
  303. ],
  304. "$TC action add action bpf bytecode '1,6 0 0 4294967295' pass index 90"
  305. ],
  306. "cmdUnderTest": "$TC action replace action bpf bytecode '1,6 0 0 4294967295' goto chain 42 index 90 cookie c1a0c1a0",
  307. "expExitCode": "255",
  308. "verifyCmd": "$TC action list action bpf",
  309. "matchPattern": "action order [0-9]*: bpf.* default-action pass.*index 90",
  310. "matchCount": "1",
  311. "teardown": [
  312. "$TC action flush action bpf"
  313. ]
  314. }
  315. ]