iproutejs 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (510) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +245 -0
  3. package/lib/commands/address/add.interfaces.d.ts +94 -0
  4. package/lib/commands/address/add.interfaces.js +3 -0
  5. package/lib/commands/address/add.interfaces.js.map +1 -0
  6. package/lib/commands/address/add.schema.d.ts +3 -0
  7. package/lib/commands/address/add.schema.js +121 -0
  8. package/lib/commands/address/add.schema.js.map +1 -0
  9. package/lib/commands/address/delete.interfaces.d.ts +56 -0
  10. package/lib/commands/address/delete.interfaces.js +3 -0
  11. package/lib/commands/address/delete.interfaces.js.map +1 -0
  12. package/lib/commands/address/delete.schema.d.ts +3 -0
  13. package/lib/commands/address/delete.schema.js +64 -0
  14. package/lib/commands/address/delete.schema.js.map +1 -0
  15. package/lib/commands/address/flush.interfaces.d.ts +89 -0
  16. package/lib/commands/address/flush.interfaces.js +3 -0
  17. package/lib/commands/address/flush.interfaces.js.map +1 -0
  18. package/lib/commands/address/flush.schema.d.ts +3 -0
  19. package/lib/commands/address/flush.schema.js +165 -0
  20. package/lib/commands/address/flush.schema.js.map +1 -0
  21. package/lib/commands/address/show.interfaces.d.ts +166 -0
  22. package/lib/commands/address/show.interfaces.js +3 -0
  23. package/lib/commands/address/show.interfaces.js.map +1 -0
  24. package/lib/commands/address/show.schema.d.ts +3 -0
  25. package/lib/commands/address/show.schema.js +176 -0
  26. package/lib/commands/address/show.schema.js.map +1 -0
  27. package/lib/commands/address.constants.d.ts +33 -0
  28. package/lib/commands/address.constants.js +39 -0
  29. package/lib/commands/address.constants.js.map +1 -0
  30. package/lib/commands/address.d.ts +179 -0
  31. package/lib/commands/address.js +265 -0
  32. package/lib/commands/address.js.map +1 -0
  33. package/lib/commands/addrlabel/add.interfaces.d.ts +12 -0
  34. package/lib/commands/addrlabel/add.interfaces.js +3 -0
  35. package/lib/commands/addrlabel/add.interfaces.js.map +1 -0
  36. package/lib/commands/addrlabel/add.schema.d.ts +3 -0
  37. package/lib/commands/addrlabel/add.schema.js +26 -0
  38. package/lib/commands/addrlabel/add.schema.js.map +1 -0
  39. package/lib/commands/addrlabel/del.interfaces.d.ts +6 -0
  40. package/lib/commands/addrlabel/del.interfaces.js +3 -0
  41. package/lib/commands/addrlabel/del.interfaces.js.map +1 -0
  42. package/lib/commands/addrlabel/del.schema.d.ts +3 -0
  43. package/lib/commands/addrlabel/del.schema.js +27 -0
  44. package/lib/commands/addrlabel/del.schema.js.map +1 -0
  45. package/lib/commands/addrlabel/list.interfaces.d.ts +9 -0
  46. package/lib/commands/addrlabel/list.interfaces.js +3 -0
  47. package/lib/commands/addrlabel/list.interfaces.js.map +1 -0
  48. package/lib/commands/addrlabel.d.ts +104 -0
  49. package/lib/commands/addrlabel.js +149 -0
  50. package/lib/commands/addrlabel.js.map +1 -0
  51. package/lib/commands/batch.d.ts +60 -0
  52. package/lib/commands/batch.js +90 -0
  53. package/lib/commands/batch.js.map +1 -0
  54. package/lib/commands/link/add.interfaces.d.ts +122 -0
  55. package/lib/commands/link/add.interfaces.js +4 -0
  56. package/lib/commands/link/add.interfaces.js.map +1 -0
  57. package/lib/commands/link/add.schema.d.ts +4 -0
  58. package/lib/commands/link/add.schema.js +172 -0
  59. package/lib/commands/link/add.schema.js.map +1 -0
  60. package/lib/commands/link/delete.interfaces.d.ts +22 -0
  61. package/lib/commands/link/delete.interfaces.js +3 -0
  62. package/lib/commands/link/delete.interfaces.js.map +1 -0
  63. package/lib/commands/link/delete.schema.d.ts +3 -0
  64. package/lib/commands/link/delete.schema.js +29 -0
  65. package/lib/commands/link/delete.schema.js.map +1 -0
  66. package/lib/commands/link/extended-virtual-link-types/bond-slave.interfaces.d.ts +8 -0
  67. package/lib/commands/link/extended-virtual-link-types/bond-slave.interfaces.js +3 -0
  68. package/lib/commands/link/extended-virtual-link-types/bond-slave.interfaces.js.map +1 -0
  69. package/lib/commands/link/extended-virtual-link-types/bond-slave.schema.d.ts +3 -0
  70. package/lib/commands/link/extended-virtual-link-types/bond-slave.schema.js +16 -0
  71. package/lib/commands/link/extended-virtual-link-types/bond-slave.schema.js.map +1 -0
  72. package/lib/commands/link/extended-virtual-link-types/bridge-slave.interfaces.d.ts +77 -0
  73. package/lib/commands/link/extended-virtual-link-types/bridge-slave.interfaces.js +3 -0
  74. package/lib/commands/link/extended-virtual-link-types/bridge-slave.interfaces.js.map +1 -0
  75. package/lib/commands/link/extended-virtual-link-types/bridge-slave.schema.d.ts +3 -0
  76. package/lib/commands/link/extended-virtual-link-types/bridge-slave.schema.js +126 -0
  77. package/lib/commands/link/extended-virtual-link-types/bridge-slave.schema.js.map +1 -0
  78. package/lib/commands/link/set.interfaces.d.ts +271 -0
  79. package/lib/commands/link/set.interfaces.js +4 -0
  80. package/lib/commands/link/set.interfaces.js.map +1 -0
  81. package/lib/commands/link/set.schema.d.ts +5 -0
  82. package/lib/commands/link/set.schema.js +284 -0
  83. package/lib/commands/link/set.schema.js.map +1 -0
  84. package/lib/commands/link/show.interfaces.d.ts +116 -0
  85. package/lib/commands/link/show.interfaces.js +3 -0
  86. package/lib/commands/link/show.interfaces.js.map +1 -0
  87. package/lib/commands/link/show.schema.d.ts +3 -0
  88. package/lib/commands/link/show.schema.js +43 -0
  89. package/lib/commands/link/show.schema.js.map +1 -0
  90. package/lib/commands/link/virtual-link-types/bareup.interfaces.d.ts +30 -0
  91. package/lib/commands/link/virtual-link-types/bareup.interfaces.js +3 -0
  92. package/lib/commands/link/virtual-link-types/bareup.interfaces.js.map +1 -0
  93. package/lib/commands/link/virtual-link-types/bareup.schema.d.ts +3 -0
  94. package/lib/commands/link/virtual-link-types/bareup.schema.js +43 -0
  95. package/lib/commands/link/virtual-link-types/bareup.schema.js.map +1 -0
  96. package/lib/commands/link/virtual-link-types/bridge.interfaces.d.ts +140 -0
  97. package/lib/commands/link/virtual-link-types/bridge.interfaces.js +3 -0
  98. package/lib/commands/link/virtual-link-types/bridge.interfaces.js.map +1 -0
  99. package/lib/commands/link/virtual-link-types/bridge.schema.d.ts +3 -0
  100. package/lib/commands/link/virtual-link-types/bridge.schema.js +186 -0
  101. package/lib/commands/link/virtual-link-types/bridge.schema.js.map +1 -0
  102. package/lib/commands/link/virtual-link-types/can.interfaces.d.ts +71 -0
  103. package/lib/commands/link/virtual-link-types/can.interfaces.js +3 -0
  104. package/lib/commands/link/virtual-link-types/can.interfaces.js.map +1 -0
  105. package/lib/commands/link/virtual-link-types/can.schema.d.ts +3 -0
  106. package/lib/commands/link/virtual-link-types/can.schema.js +141 -0
  107. package/lib/commands/link/virtual-link-types/can.schema.js.map +1 -0
  108. package/lib/commands/link/virtual-link-types/erspan-ip6erspan.interfaces.d.ts +58 -0
  109. package/lib/commands/link/virtual-link-types/erspan-ip6erspan.interfaces.js +3 -0
  110. package/lib/commands/link/virtual-link-types/erspan-ip6erspan.interfaces.js.map +1 -0
  111. package/lib/commands/link/virtual-link-types/erspan-ip6erspan.schema.d.ts +3 -0
  112. package/lib/commands/link/virtual-link-types/erspan-ip6erspan.schema.js +64 -0
  113. package/lib/commands/link/virtual-link-types/erspan-ip6erspan.schema.js.map +1 -0
  114. package/lib/commands/link/virtual-link-types/geneve.interfaces.d.ts +54 -0
  115. package/lib/commands/link/virtual-link-types/geneve.interfaces.js +3 -0
  116. package/lib/commands/link/virtual-link-types/geneve.interfaces.js.map +1 -0
  117. package/lib/commands/link/virtual-link-types/geneve.schema.d.ts +3 -0
  118. package/lib/commands/link/virtual-link-types/geneve.schema.js +93 -0
  119. package/lib/commands/link/virtual-link-types/geneve.schema.js.map +1 -0
  120. package/lib/commands/link/virtual-link-types/gre-gretap.interfaces.d.ts +106 -0
  121. package/lib/commands/link/virtual-link-types/gre-gretap.interfaces.js +3 -0
  122. package/lib/commands/link/virtual-link-types/gre-gretap.interfaces.js.map +1 -0
  123. package/lib/commands/link/virtual-link-types/gre-gretap.schema.d.ts +3 -0
  124. package/lib/commands/link/virtual-link-types/gre-gretap.schema.js +208 -0
  125. package/lib/commands/link/virtual-link-types/gre-gretap.schema.js.map +1 -0
  126. package/lib/commands/link/virtual-link-types/hsr.interfaces.d.ts +20 -0
  127. package/lib/commands/link/virtual-link-types/hsr.interfaces.js +3 -0
  128. package/lib/commands/link/virtual-link-types/hsr.interfaces.js.map +1 -0
  129. package/lib/commands/link/virtual-link-types/hsr.schema.d.ts +3 -0
  130. package/lib/commands/link/virtual-link-types/hsr.schema.js +36 -0
  131. package/lib/commands/link/virtual-link-types/hsr.schema.js.map +1 -0
  132. package/lib/commands/link/virtual-link-types/ip6gre-ip6gretap.interfaces.d.ts +80 -0
  133. package/lib/commands/link/virtual-link-types/ip6gre-ip6gretap.interfaces.js +3 -0
  134. package/lib/commands/link/virtual-link-types/ip6gre-ip6gretap.interfaces.js.map +1 -0
  135. package/lib/commands/link/virtual-link-types/ip6gre-ip6gretap.schema.d.ts +3 -0
  136. package/lib/commands/link/virtual-link-types/ip6gre-ip6gretap.schema.js +170 -0
  137. package/lib/commands/link/virtual-link-types/ip6gre-ip6gretap.schema.js.map +1 -0
  138. package/lib/commands/link/virtual-link-types/ipip-sit.interfaces.d.ts +51 -0
  139. package/lib/commands/link/virtual-link-types/ipip-sit.interfaces.js +3 -0
  140. package/lib/commands/link/virtual-link-types/ipip-sit.interfaces.js.map +1 -0
  141. package/lib/commands/link/virtual-link-types/ipip-sit.schema.d.ts +3 -0
  142. package/lib/commands/link/virtual-link-types/ipip-sit.schema.js +74 -0
  143. package/lib/commands/link/virtual-link-types/ipip-sit.schema.js.map +1 -0
  144. package/lib/commands/link/virtual-link-types/ipoib.interfaces.d.ts +11 -0
  145. package/lib/commands/link/virtual-link-types/ipoib.interfaces.js +3 -0
  146. package/lib/commands/link/virtual-link-types/ipoib.interfaces.js.map +1 -0
  147. package/lib/commands/link/virtual-link-types/ipoib.schema.d.ts +3 -0
  148. package/lib/commands/link/virtual-link-types/ipoib.schema.js +22 -0
  149. package/lib/commands/link/virtual-link-types/ipoib.schema.js.map +1 -0
  150. package/lib/commands/link/virtual-link-types/macsec.interfaces.d.ts +44 -0
  151. package/lib/commands/link/virtual-link-types/macsec.interfaces.js +3 -0
  152. package/lib/commands/link/virtual-link-types/macsec.interfaces.js.map +1 -0
  153. package/lib/commands/link/virtual-link-types/macsec.schema.d.ts +3 -0
  154. package/lib/commands/link/virtual-link-types/macsec.schema.js +87 -0
  155. package/lib/commands/link/virtual-link-types/macsec.schema.js.map +1 -0
  156. package/lib/commands/link/virtual-link-types/macvlan-macvtap.interfaces.d.ts +59 -0
  157. package/lib/commands/link/virtual-link-types/macvlan-macvtap.interfaces.js +3 -0
  158. package/lib/commands/link/virtual-link-types/macvlan-macvtap.interfaces.js.map +1 -0
  159. package/lib/commands/link/virtual-link-types/macvlan-macvtap.schema.d.ts +4 -0
  160. package/lib/commands/link/virtual-link-types/macvlan-macvtap.schema.js +60 -0
  161. package/lib/commands/link/virtual-link-types/macvlan-macvtap.schema.js.map +1 -0
  162. package/lib/commands/link/virtual-link-types/rmnet.interfaces.d.ts +8 -0
  163. package/lib/commands/link/virtual-link-types/rmnet.interfaces.js +3 -0
  164. package/lib/commands/link/virtual-link-types/rmnet.interfaces.js.map +1 -0
  165. package/lib/commands/link/virtual-link-types/rmnet.schema.d.ts +3 -0
  166. package/lib/commands/link/virtual-link-types/rmnet.schema.js +16 -0
  167. package/lib/commands/link/virtual-link-types/rmnet.schema.js.map +1 -0
  168. package/lib/commands/link/virtual-link-types/veth-vxcan.interfaces.d.ts +8 -0
  169. package/lib/commands/link/virtual-link-types/veth-vxcan.interfaces.js +3 -0
  170. package/lib/commands/link/virtual-link-types/veth-vxcan.interfaces.js.map +1 -0
  171. package/lib/commands/link/virtual-link-types/veth-vxcan.schema.d.ts +3 -0
  172. package/lib/commands/link/virtual-link-types/veth-vxcan.schema.js +16 -0
  173. package/lib/commands/link/virtual-link-types/veth-vxcan.schema.js.map +1 -0
  174. package/lib/commands/link/virtual-link-types/vlan.interfaces.d.ts +36 -0
  175. package/lib/commands/link/virtual-link-types/vlan.interfaces.js +3 -0
  176. package/lib/commands/link/virtual-link-types/vlan.interfaces.js.map +1 -0
  177. package/lib/commands/link/virtual-link-types/vlan.schema.d.ts +3 -0
  178. package/lib/commands/link/virtual-link-types/vlan.schema.js +65 -0
  179. package/lib/commands/link/virtual-link-types/vlan.schema.js.map +1 -0
  180. package/lib/commands/link/virtual-link-types/vrf.interfaces.d.ts +8 -0
  181. package/lib/commands/link/virtual-link-types/vrf.interfaces.js +3 -0
  182. package/lib/commands/link/virtual-link-types/vrf.interfaces.js.map +1 -0
  183. package/lib/commands/link/virtual-link-types/vrf.schema.d.ts +3 -0
  184. package/lib/commands/link/virtual-link-types/vrf.schema.js +16 -0
  185. package/lib/commands/link/virtual-link-types/vrf.schema.js.map +1 -0
  186. package/lib/commands/link/virtual-link-types/vxlan.interfaces.d.ts +127 -0
  187. package/lib/commands/link/virtual-link-types/vxlan.interfaces.js +3 -0
  188. package/lib/commands/link/virtual-link-types/vxlan.interfaces.js.map +1 -0
  189. package/lib/commands/link/virtual-link-types/vxlan.schema.d.ts +3 -0
  190. package/lib/commands/link/virtual-link-types/vxlan.schema.js +176 -0
  191. package/lib/commands/link/virtual-link-types/vxlan.schema.js.map +1 -0
  192. package/lib/commands/link/virtual-link-types/xfrm.interfaces.d.ts +16 -0
  193. package/lib/commands/link/virtual-link-types/xfrm.interfaces.js +3 -0
  194. package/lib/commands/link/virtual-link-types/xfrm.interfaces.js.map +1 -0
  195. package/lib/commands/link/virtual-link-types/xfrm.schema.d.ts +3 -0
  196. package/lib/commands/link/virtual-link-types/xfrm.schema.js +21 -0
  197. package/lib/commands/link/virtual-link-types/xfrm.schema.js.map +1 -0
  198. package/lib/commands/link/xdp-options/object.interfaces.d.ts +36 -0
  199. package/lib/commands/link/xdp-options/object.interfaces.js +3 -0
  200. package/lib/commands/link/xdp-options/object.interfaces.js.map +1 -0
  201. package/lib/commands/link/xdp-options/object.schema.d.ts +3 -0
  202. package/lib/commands/link/xdp-options/object.schema.js +25 -0
  203. package/lib/commands/link/xdp-options/object.schema.js.map +1 -0
  204. package/lib/commands/link/xdp-options/off.interfaces.d.ts +8 -0
  205. package/lib/commands/link/xdp-options/off.interfaces.js +3 -0
  206. package/lib/commands/link/xdp-options/off.interfaces.js.map +1 -0
  207. package/lib/commands/link/xdp-options/off.schema.d.ts +3 -0
  208. package/lib/commands/link/xdp-options/off.schema.js +15 -0
  209. package/lib/commands/link/xdp-options/off.schema.js.map +1 -0
  210. package/lib/commands/link/xdp-options/pinned.interfaces.d.ts +13 -0
  211. package/lib/commands/link/xdp-options/pinned.interfaces.js +3 -0
  212. package/lib/commands/link/xdp-options/pinned.interfaces.js.map +1 -0
  213. package/lib/commands/link/xdp-options/pinned.schema.d.ts +3 -0
  214. package/lib/commands/link/xdp-options/pinned.schema.js +15 -0
  215. package/lib/commands/link/xdp-options/pinned.schema.js.map +1 -0
  216. package/lib/commands/link.constants.d.ts +425 -0
  217. package/lib/commands/link.constants.js +366 -0
  218. package/lib/commands/link.constants.js.map +1 -0
  219. package/lib/commands/link.d.ts +113 -0
  220. package/lib/commands/link.js +159 -0
  221. package/lib/commands/link.js.map +1 -0
  222. package/lib/commands/maddress/add.interfaces.d.ts +10 -0
  223. package/lib/commands/maddress/add.interfaces.js +3 -0
  224. package/lib/commands/maddress/add.interfaces.js.map +1 -0
  225. package/lib/commands/maddress/add.schema.d.ts +3 -0
  226. package/lib/commands/maddress/add.schema.js +22 -0
  227. package/lib/commands/maddress/add.schema.js.map +1 -0
  228. package/lib/commands/maddress/show.interfaces.d.ts +25 -0
  229. package/lib/commands/maddress/show.interfaces.js +3 -0
  230. package/lib/commands/maddress/show.interfaces.js.map +1 -0
  231. package/lib/commands/maddress/show.schema.d.ts +3 -0
  232. package/lib/commands/maddress/show.schema.js +17 -0
  233. package/lib/commands/maddress/show.schema.js.map +1 -0
  234. package/lib/commands/maddress.d.ts +82 -0
  235. package/lib/commands/maddress.js +121 -0
  236. package/lib/commands/maddress.js.map +1 -0
  237. package/lib/commands/monitor/monitor.interfaces.d.ts +24 -0
  238. package/lib/commands/monitor/monitor.interfaces.js +3 -0
  239. package/lib/commands/monitor/monitor.interfaces.js.map +1 -0
  240. package/lib/commands/monitor/monitor.schema.d.ts +3 -0
  241. package/lib/commands/monitor/monitor.schema.js +33 -0
  242. package/lib/commands/monitor/monitor.schema.js.map +1 -0
  243. package/lib/commands/monitor.constants.d.ts +17 -0
  244. package/lib/commands/monitor.constants.js +22 -0
  245. package/lib/commands/monitor.constants.js.map +1 -0
  246. package/lib/commands/monitor.d.ts +52 -0
  247. package/lib/commands/monitor.js +75 -0
  248. package/lib/commands/monitor.js.map +1 -0
  249. package/lib/commands/mroute/show.interfaces.d.ts +26 -0
  250. package/lib/commands/mroute/show.interfaces.js +3 -0
  251. package/lib/commands/mroute/show.interfaces.js.map +1 -0
  252. package/lib/commands/mroute/show.schema.d.ts +3 -0
  253. package/lib/commands/mroute/show.schema.js +44 -0
  254. package/lib/commands/mroute/show.schema.js.map +1 -0
  255. package/lib/commands/mroute.d.ts +29 -0
  256. package/lib/commands/mroute.js +53 -0
  257. package/lib/commands/mroute.js.map +1 -0
  258. package/lib/commands/neighbour/add.interfaces.d.ts +34 -0
  259. package/lib/commands/neighbour/add.interfaces.js +3 -0
  260. package/lib/commands/neighbour/add.interfaces.js.map +1 -0
  261. package/lib/commands/neighbour/add.schema.d.ts +3 -0
  262. package/lib/commands/neighbour/add.schema.js +49 -0
  263. package/lib/commands/neighbour/add.schema.js.map +1 -0
  264. package/lib/commands/neighbour/del.interfaces.d.ts +23 -0
  265. package/lib/commands/neighbour/del.interfaces.js +3 -0
  266. package/lib/commands/neighbour/del.interfaces.js.map +1 -0
  267. package/lib/commands/neighbour/del.schema.d.ts +3 -0
  268. package/lib/commands/neighbour/del.schema.js +37 -0
  269. package/lib/commands/neighbour/del.schema.js.map +1 -0
  270. package/lib/commands/neighbour/get.interfaces.d.ts +12 -0
  271. package/lib/commands/neighbour/get.interfaces.js +3 -0
  272. package/lib/commands/neighbour/get.interfaces.js.map +1 -0
  273. package/lib/commands/neighbour/get.schema.d.ts +3 -0
  274. package/lib/commands/neighbour/get.schema.js +26 -0
  275. package/lib/commands/neighbour/get.schema.js.map +1 -0
  276. package/lib/commands/neighbour/show.interfaces.d.ts +37 -0
  277. package/lib/commands/neighbour/show.interfaces.js +3 -0
  278. package/lib/commands/neighbour/show.interfaces.js.map +1 -0
  279. package/lib/commands/neighbour/show.schema.d.ts +3 -0
  280. package/lib/commands/neighbour/show.schema.js +39 -0
  281. package/lib/commands/neighbour/show.schema.js.map +1 -0
  282. package/lib/commands/neighbour.constants.d.ts +34 -0
  283. package/lib/commands/neighbour.constants.js +39 -0
  284. package/lib/commands/neighbour.constants.js.map +1 -0
  285. package/lib/commands/neighbour.d.ts +169 -0
  286. package/lib/commands/neighbour.js +238 -0
  287. package/lib/commands/neighbour.js.map +1 -0
  288. package/lib/commands/ntable/change.interfaces.d.ts +42 -0
  289. package/lib/commands/ntable/change.interfaces.js +3 -0
  290. package/lib/commands/ntable/change.interfaces.js.map +1 -0
  291. package/lib/commands/ntable/change.schema.d.ts +3 -0
  292. package/lib/commands/ntable/change.schema.js +101 -0
  293. package/lib/commands/ntable/change.schema.js.map +1 -0
  294. package/lib/commands/ntable/show.interfaces.d.ts +59 -0
  295. package/lib/commands/ntable/show.interfaces.js +3 -0
  296. package/lib/commands/ntable/show.interfaces.js.map +1 -0
  297. package/lib/commands/ntable/show.schema.d.ts +3 -0
  298. package/lib/commands/ntable/show.schema.js +22 -0
  299. package/lib/commands/ntable/show.schema.js.map +1 -0
  300. package/lib/commands/ntable.d.ts +43 -0
  301. package/lib/commands/ntable.js +75 -0
  302. package/lib/commands/ntable.js.map +1 -0
  303. package/lib/commands/route/add.interfaces.d.ts +261 -0
  304. package/lib/commands/route/add.interfaces.js +4 -0
  305. package/lib/commands/route/add.interfaces.js.map +1 -0
  306. package/lib/commands/route/add.schema.d.ts +3 -0
  307. package/lib/commands/route/add.schema.js +366 -0
  308. package/lib/commands/route/add.schema.js.map +1 -0
  309. package/lib/commands/route/encap-types/bpf.interfaces.d.ts +14 -0
  310. package/lib/commands/route/encap-types/bpf.interfaces.js +3 -0
  311. package/lib/commands/route/encap-types/bpf.interfaces.js.map +1 -0
  312. package/lib/commands/route/encap-types/bpf.schema.d.ts +3 -0
  313. package/lib/commands/route/encap-types/bpf.schema.js +31 -0
  314. package/lib/commands/route/encap-types/bpf.schema.js.map +1 -0
  315. package/lib/commands/route/encap-types/ioam6.interfaces.d.ts +19 -0
  316. package/lib/commands/route/encap-types/ioam6.interfaces.js +3 -0
  317. package/lib/commands/route/encap-types/ioam6.interfaces.js.map +1 -0
  318. package/lib/commands/route/encap-types/ioam6.schema.d.ts +3 -0
  319. package/lib/commands/route/encap-types/ioam6.schema.js +30 -0
  320. package/lib/commands/route/encap-types/ioam6.schema.js.map +1 -0
  321. package/lib/commands/route/encap-types/ip.interfaces.d.ts +17 -0
  322. package/lib/commands/route/encap-types/ip.interfaces.js +3 -0
  323. package/lib/commands/route/encap-types/ip.interfaces.js.map +1 -0
  324. package/lib/commands/route/encap-types/ip.schema.d.ts +3 -0
  325. package/lib/commands/route/encap-types/ip.schema.js +48 -0
  326. package/lib/commands/route/encap-types/ip.schema.js.map +1 -0
  327. package/lib/commands/route/encap-types/mpls.interfaces.d.ts +11 -0
  328. package/lib/commands/route/encap-types/mpls.interfaces.js +3 -0
  329. package/lib/commands/route/encap-types/mpls.interfaces.js.map +1 -0
  330. package/lib/commands/route/encap-types/mpls.schema.d.ts +3 -0
  331. package/lib/commands/route/encap-types/mpls.schema.js +46 -0
  332. package/lib/commands/route/encap-types/mpls.schema.js.map +1 -0
  333. package/lib/commands/route/encap-types/seg6.interfaces.d.ts +20 -0
  334. package/lib/commands/route/encap-types/seg6.interfaces.js +3 -0
  335. package/lib/commands/route/encap-types/seg6.interfaces.js.map +1 -0
  336. package/lib/commands/route/encap-types/seg6.schema.d.ts +3 -0
  337. package/lib/commands/route/encap-types/seg6.schema.js +38 -0
  338. package/lib/commands/route/encap-types/seg6.schema.js.map +1 -0
  339. package/lib/commands/route/encap-types/seg6local.interfaces.d.ts +76 -0
  340. package/lib/commands/route/encap-types/seg6local.interfaces.js +3 -0
  341. package/lib/commands/route/encap-types/seg6local.interfaces.js.map +1 -0
  342. package/lib/commands/route/encap-types/seg6local.schema.d.ts +6 -0
  343. package/lib/commands/route/encap-types/seg6local.schema.js +181 -0
  344. package/lib/commands/route/encap-types/seg6local.schema.js.map +1 -0
  345. package/lib/commands/route/get.interfaces.d.ts +37 -0
  346. package/lib/commands/route/get.interfaces.js +3 -0
  347. package/lib/commands/route/get.interfaces.js.map +1 -0
  348. package/lib/commands/route/get.schema.d.ts +3 -0
  349. package/lib/commands/route/get.schema.js +86 -0
  350. package/lib/commands/route/get.schema.js.map +1 -0
  351. package/lib/commands/route/show.constants.d.ts +105 -0
  352. package/lib/commands/route/show.constants.js +112 -0
  353. package/lib/commands/route/show.constants.js.map +1 -0
  354. package/lib/commands/route/show.interfaces.d.ts +96 -0
  355. package/lib/commands/route/show.interfaces.js +3 -0
  356. package/lib/commands/route/show.interfaces.js.map +1 -0
  357. package/lib/commands/route/show.schema.d.ts +3 -0
  358. package/lib/commands/route/show.schema.js +161 -0
  359. package/lib/commands/route/show.schema.js.map +1 -0
  360. package/lib/commands/route.constants.d.ts +129 -0
  361. package/lib/commands/route.constants.js +136 -0
  362. package/lib/commands/route.constants.js.map +1 -0
  363. package/lib/commands/route.d.ts +268 -0
  364. package/lib/commands/route.js +362 -0
  365. package/lib/commands/route.js.map +1 -0
  366. package/lib/commands/rule/add.interfaces.d.ts +41 -0
  367. package/lib/commands/rule/add.interfaces.js +3 -0
  368. package/lib/commands/rule/add.interfaces.js.map +1 -0
  369. package/lib/commands/rule/add.schema.d.ts +3 -0
  370. package/lib/commands/rule/add.schema.js +182 -0
  371. package/lib/commands/rule/add.schema.js.map +1 -0
  372. package/lib/commands/rule/show.interfaces.d.ts +86 -0
  373. package/lib/commands/rule/show.interfaces.js +3 -0
  374. package/lib/commands/rule/show.interfaces.js.map +1 -0
  375. package/lib/commands/rule/show.schema.d.ts +3 -0
  376. package/lib/commands/rule/show.schema.js +157 -0
  377. package/lib/commands/rule/show.schema.js.map +1 -0
  378. package/lib/commands/rule.constants.d.ts +34 -0
  379. package/lib/commands/rule.constants.js +40 -0
  380. package/lib/commands/rule.constants.js.map +1 -0
  381. package/lib/commands/rule.d.ts +143 -0
  382. package/lib/commands/rule.js +205 -0
  383. package/lib/commands/rule.js.map +1 -0
  384. package/lib/commands/tunnel/6rd.interfaces.d.ts +17 -0
  385. package/lib/commands/tunnel/6rd.interfaces.js +3 -0
  386. package/lib/commands/tunnel/6rd.interfaces.js.map +1 -0
  387. package/lib/commands/tunnel/6rd.schema.d.ts +3 -0
  388. package/lib/commands/tunnel/6rd.schema.js +33 -0
  389. package/lib/commands/tunnel/6rd.schema.js.map +1 -0
  390. package/lib/commands/tunnel/add.interfaces.d.ts +124 -0
  391. package/lib/commands/tunnel/add.interfaces.js +3 -0
  392. package/lib/commands/tunnel/add.interfaces.js.map +1 -0
  393. package/lib/commands/tunnel/add.schema.d.ts +3 -0
  394. package/lib/commands/tunnel/add.schema.js +213 -0
  395. package/lib/commands/tunnel/add.schema.js.map +1 -0
  396. package/lib/commands/tunnel/prl.interfaces.d.ts +17 -0
  397. package/lib/commands/tunnel/prl.interfaces.js +3 -0
  398. package/lib/commands/tunnel/prl.interfaces.js.map +1 -0
  399. package/lib/commands/tunnel/prl.schema.d.ts +3 -0
  400. package/lib/commands/tunnel/prl.schema.js +34 -0
  401. package/lib/commands/tunnel/prl.schema.js.map +1 -0
  402. package/lib/commands/tunnel.constants.d.ts +23 -0
  403. package/lib/commands/tunnel.constants.js +24 -0
  404. package/lib/commands/tunnel.constants.js.map +1 -0
  405. package/lib/commands/tunnel.d.ts +151 -0
  406. package/lib/commands/tunnel.js +210 -0
  407. package/lib/commands/tunnel.js.map +1 -0
  408. package/lib/commands/tuntap/add.interfaces.d.ts +25 -0
  409. package/lib/commands/tuntap/add.interfaces.js +3 -0
  410. package/lib/commands/tuntap/add.interfaces.js.map +1 -0
  411. package/lib/commands/tuntap/add.schema.d.ts +3 -0
  412. package/lib/commands/tuntap/add.schema.js +77 -0
  413. package/lib/commands/tuntap/add.schema.js.map +1 -0
  414. package/lib/commands/tuntap/show.interfaces.d.ts +17 -0
  415. package/lib/commands/tuntap/show.interfaces.js +3 -0
  416. package/lib/commands/tuntap/show.interfaces.js.map +1 -0
  417. package/lib/commands/tuntap/show.schema.d.ts +3 -0
  418. package/lib/commands/tuntap/show.schema.js +80 -0
  419. package/lib/commands/tuntap/show.schema.js.map +1 -0
  420. package/lib/commands/tuntap.constants.d.ts +8 -0
  421. package/lib/commands/tuntap.constants.js +13 -0
  422. package/lib/commands/tuntap.constants.js.map +1 -0
  423. package/lib/commands/tuntap.d.ts +83 -0
  424. package/lib/commands/tuntap.js +121 -0
  425. package/lib/commands/tuntap.js.map +1 -0
  426. package/lib/common/classes/command-with-filepath.d.ts +16 -0
  427. package/lib/common/classes/command-with-filepath.js +53 -0
  428. package/lib/common/classes/command-with-filepath.js.map +1 -0
  429. package/lib/common/classes/command-with-redirect-from-filepath-and-returned-data.d.ts +15 -0
  430. package/lib/common/classes/command-with-redirect-from-filepath-and-returned-data.js +45 -0
  431. package/lib/common/classes/command-with-redirect-from-filepath-and-returned-data.js.map +1 -0
  432. package/lib/common/classes/command-with-redirect-from-filepath.d.ts +16 -0
  433. package/lib/common/classes/command-with-redirect-from-filepath.js +53 -0
  434. package/lib/common/classes/command-with-redirect-from-filepath.js.map +1 -0
  435. package/lib/common/classes/command-with-redirect-to-filepath.d.ts +16 -0
  436. package/lib/common/classes/command-with-redirect-to-filepath.js +53 -0
  437. package/lib/common/classes/command-with-redirect-to-filepath.js.map +1 -0
  438. package/lib/common/classes/command-with-returned-data.d.ts +15 -0
  439. package/lib/common/classes/command-with-returned-data.js +45 -0
  440. package/lib/common/classes/command-with-returned-data.js.map +1 -0
  441. package/lib/common/classes/command-with-stdin.d.ts +16 -0
  442. package/lib/common/classes/command-with-stdin.js +53 -0
  443. package/lib/common/classes/command-with-stdin.js.map +1 -0
  444. package/lib/common/classes/command.d.ts +26 -0
  445. package/lib/common/classes/command.js +144 -0
  446. package/lib/common/classes/command.js.map +1 -0
  447. package/lib/common/classes/monitor-command.d.ts +30 -0
  448. package/lib/common/classes/monitor-command.js +108 -0
  449. package/lib/common/classes/monitor-command.js.map +1 -0
  450. package/lib/common/constants/attribute-values.d.ts +33 -0
  451. package/lib/common/constants/attribute-values.js +41 -0
  452. package/lib/common/constants/attribute-values.js.map +1 -0
  453. package/lib/common/constants/regexes.d.ts +34 -0
  454. package/lib/common/constants/regexes.js +38 -0
  455. package/lib/common/constants/regexes.js.map +1 -0
  456. package/lib/common/constants/schemas.d.ts +52 -0
  457. package/lib/common/constants/schemas.js +296 -0
  458. package/lib/common/constants/schemas.js.map +1 -0
  459. package/lib/common/constants/tests.d.ts +4 -0
  460. package/lib/common/constants/tests.js +9 -0
  461. package/lib/common/constants/tests.js.map +1 -0
  462. package/lib/common/errors/command.d.ts +11 -0
  463. package/lib/common/errors/command.js +20 -0
  464. package/lib/common/errors/command.js.map +1 -0
  465. package/lib/common/errors/parameters.d.ts +16 -0
  466. package/lib/common/errors/parameters.js +21 -0
  467. package/lib/common/errors/parameters.js.map +1 -0
  468. package/lib/common/interfaces/common.d.ts +115 -0
  469. package/lib/common/interfaces/common.js +3 -0
  470. package/lib/common/interfaces/common.js.map +1 -0
  471. package/lib/common/interfaces/monitor.d.ts +17 -0
  472. package/lib/common/interfaces/monitor.js +3 -0
  473. package/lib/common/interfaces/monitor.js.map +1 -0
  474. package/lib/common/interfaces/tests.d.ts +33 -0
  475. package/lib/common/interfaces/tests.js +3 -0
  476. package/lib/common/interfaces/tests.js.map +1 -0
  477. package/lib/common/misc.d.ts +4 -0
  478. package/lib/common/misc.js +18 -0
  479. package/lib/common/misc.js.map +1 -0
  480. package/lib/common/parse-output.d.ts +14 -0
  481. package/lib/common/parse-output.js +51 -0
  482. package/lib/common/parse-output.js.map +1 -0
  483. package/lib/common/validator.d.ts +3 -0
  484. package/lib/common/validator.js +45 -0
  485. package/lib/common/validator.js.map +1 -0
  486. package/lib/index.d.ts +400 -0
  487. package/lib/index.js +189 -0
  488. package/lib/index.js.map +1 -0
  489. package/lib/utils/index.d.ts +33 -0
  490. package/lib/utils/index.js +40 -0
  491. package/lib/utils/index.js.map +1 -0
  492. package/lib/utils/ip-forwarding.constants.d.ts +21 -0
  493. package/lib/utils/ip-forwarding.constants.js +27 -0
  494. package/lib/utils/ip-forwarding.constants.js.map +1 -0
  495. package/lib/utils/ip-forwarding.d.ts +103 -0
  496. package/lib/utils/ip-forwarding.js +149 -0
  497. package/lib/utils/ip-forwarding.js.map +1 -0
  498. package/lib/utils/routing-tables.constants.d.ts +7 -0
  499. package/lib/utils/routing-tables.constants.js +11 -0
  500. package/lib/utils/routing-tables.constants.js.map +1 -0
  501. package/lib/utils/routing-tables.d.ts +134 -0
  502. package/lib/utils/routing-tables.interfaces.d.ts +16 -0
  503. package/lib/utils/routing-tables.interfaces.js +3 -0
  504. package/lib/utils/routing-tables.interfaces.js.map +1 -0
  505. package/lib/utils/routing-tables.js +243 -0
  506. package/lib/utils/routing-tables.js.map +1 -0
  507. package/lib/utils/routing-tables.schemas.d.ts +3 -0
  508. package/lib/utils/routing-tables.schemas.js +22 -0
  509. package/lib/utils/routing-tables.schemas.js.map +1 -0
  510. package/package.json +92 -0
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Add route seg6 encap arguments.
3
+ * @category Interfaces
4
+ */
5
+ export interface AddRouteSeg6EncapArgs {
6
+ mode: true;
7
+ /** Encapsulate packet in an outer IPv6 header with SR. */
8
+ encap?: true;
9
+ /** Directly insert Segment Routing Header after IPv6 header. */
10
+ inline?: true;
11
+ /** Encapsulate ingress L2 frame within an outer IPv6 header and SRH. */
12
+ l2encap?: true;
13
+ /** List of comma-separated IPv6 addresses. */
14
+ segs: string;
15
+ /**
16
+ * Numerical value in decimal representation.
17
+ * See ip-sr(8).
18
+ */
19
+ hmac?: number;
20
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=seg6.interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seg6.interfaces.js","sourceRoot":"","sources":["../../../../src/commands/route/encap-types/seg6.interfaces.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import { JSONSchemaType } from 'ajv';
2
+ import { AddRouteSeg6EncapArgs } from './seg6.interfaces';
3
+ export declare const RouteSeg6EncapArgsSchema: JSONSchemaType<AddRouteSeg6EncapArgs>;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RouteSeg6EncapArgsSchema = void 0;
4
+ exports.RouteSeg6EncapArgsSchema = {
5
+ type: 'object',
6
+ required: ['mode', 'segs'],
7
+ properties: {
8
+ mode: {
9
+ type: 'boolean',
10
+ enum: [true]
11
+ },
12
+ encap: {
13
+ type: 'boolean',
14
+ enum: [true],
15
+ nullable: true
16
+ },
17
+ inline: {
18
+ type: 'boolean',
19
+ enum: [true],
20
+ nullable: true
21
+ },
22
+ l2encap: {
23
+ type: 'boolean',
24
+ enum: [true],
25
+ nullable: true
26
+ },
27
+ segs: {
28
+ type: 'string',
29
+ format: 'comma-separated-ipv6-addresses'
30
+ },
31
+ hmac: {
32
+ type: 'integer',
33
+ minimum: 0,
34
+ nullable: true
35
+ }
36
+ }
37
+ };
38
+ //# sourceMappingURL=seg6.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seg6.schema.js","sourceRoot":"","sources":["../../../../src/commands/route/encap-types/seg6.schema.ts"],"names":[],"mappings":";;;AAIa,QAAA,wBAAwB,GAA0C;IAC7E,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,CAAE,MAAM,EAAE,MAAM,CAAE;IAC5B,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,CAAE,IAAI,CAAE;SACf;QACD,KAAK,EAAE;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,CAAE,IAAI,CAAE;YACd,QAAQ,EAAE,IAAI;SACf;QACD,MAAM,EAAE;YACN,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,CAAE,IAAI,CAAE;YACd,QAAQ,EAAE,IAAI;SACf;QACD,OAAO,EAAE;YACP,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,CAAE,IAAI,CAAE;YACd,QAAQ,EAAE,IAAI;SACf;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,gCAAgC;SACzC;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,IAAI;SACf;KACF;CACF,CAAC"}
@@ -0,0 +1,76 @@
1
+ import { EncapSeg6LocalActions } from '../../route.constants';
2
+ import { EncapSeg6LocalActionsMappings, NextHopArgs } from '../add.interfaces';
3
+ import { RouteRoutingTables } from '../show.constants';
4
+ /**
5
+ * Add route seg6local encap arguments.
6
+ * @category Interfaces
7
+ */
8
+ export interface AddRouteSeg6LocalEncapArgs {
9
+ /**
10
+ * Operation to perform on matching packets.
11
+ * @see {@link EncapSeg6LocalActions}
12
+ */
13
+ action: {
14
+ [key in EncapSeg6LocalActions]?: EncapSeg6LocalActionsMappings[key];
15
+ };
16
+ /**
17
+ * Used to collect statistics on the processing of actions.
18
+ * Three counters are implemented:
19
+ *
20
+ * 1) packets correctly processed;
21
+ * 2) bytes correctly processed;
22
+ * 3) packets that cause a processing error (i.e., missing SID List, wrong SID List, etc).
23
+ *
24
+ * To retrieve the counters related to an action use the `show` method.
25
+ */
26
+ count?: true;
27
+ }
28
+ /**
29
+ * EndXSeg6local encap arguments.
30
+ * @category Interfaces
31
+ */
32
+ export interface EndXSeg6LocalEncapArgs extends NextHopArgs {
33
+ nh6: true;
34
+ }
35
+ /**
36
+ * EndDt6Seg6local encap arguments.
37
+ * @category Interfaces
38
+ */
39
+ export interface EndDt6Seg6LocalEncapArgs extends NextHopArgs {
40
+ table?: number | RouteRoutingTables;
41
+ vrftable?: number | RouteRoutingTables;
42
+ }
43
+ /**
44
+ * EndB6Seg6local encap arguments.
45
+ * @category Interfaces
46
+ */
47
+ export interface EndB6Seg6LocalEncapArgs extends NextHopArgs {
48
+ srh: true;
49
+ /** List of comma separated IPv6 addresses. */
50
+ segs: string;
51
+ /**
52
+ * Numerical value in decimal representation.
53
+ * See ip-sr(8).
54
+ */
55
+ hmac?: number;
56
+ }
57
+ /**
58
+ * EndDx6Seg6local encap arguments.
59
+ * @category Interfaces
60
+ */
61
+ export type EndDx6Seg6LocalEncapArgs = EndXSeg6LocalEncapArgs;
62
+ /**
63
+ * EndDt4Seg6local encap arguments.
64
+ * @category Interfaces
65
+ */
66
+ export type EndDt4Seg6LocalEncapArgs = EndDt6Seg6LocalEncapArgs;
67
+ /**
68
+ * EndDt46Seg6local encap arguments.
69
+ * @category Interfaces
70
+ */
71
+ export type EndDt46Seg6LocalEncapArgs = EndDt6Seg6LocalEncapArgs;
72
+ /**
73
+ * EndB6Seg6local encap arguments.
74
+ * @category Interfaces
75
+ */
76
+ export type EndB6EncapsSeg6LocalEncapArgs = EndB6Seg6LocalEncapArgs;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=seg6local.interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seg6local.interfaces.js","sourceRoot":"","sources":["../../../../src/commands/route/encap-types/seg6local.interfaces.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import { JSONSchemaType } from 'ajv';
2
+ import { AddRouteSeg6LocalEncapArgs, EndB6Seg6LocalEncapArgs, EndDt6Seg6LocalEncapArgs, EndXSeg6LocalEncapArgs } from './seg6local.interfaces';
3
+ export declare const EndXSeg6LocalEncapArgsSchema: JSONSchemaType<EndXSeg6LocalEncapArgs>;
4
+ export declare const EndDt6Seg6LocalEncapArgsSchema: JSONSchemaType<EndDt6Seg6LocalEncapArgs>;
5
+ export declare const EndB6Seg6LocalEncapArgsSchema: JSONSchemaType<EndB6Seg6LocalEncapArgs>;
6
+ export declare const RouteSeg6LocalEncapArgsSchema: JSONSchemaType<AddRouteSeg6LocalEncapArgs>;
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RouteSeg6LocalEncapArgsSchema = exports.EndB6Seg6LocalEncapArgsSchema = exports.EndDt6Seg6LocalEncapArgsSchema = exports.EndXSeg6LocalEncapArgsSchema = void 0;
4
+ const address_constants_1 = require("../../address.constants");
5
+ const route_constants_1 = require("../../route.constants");
6
+ const show_constants_1 = require("../show.constants");
7
+ exports.EndXSeg6LocalEncapArgsSchema = {
8
+ type: 'object',
9
+ required: ['nh6'],
10
+ properties: {
11
+ nh6: {
12
+ type: 'boolean',
13
+ enum: [true]
14
+ },
15
+ via: {
16
+ type: 'object',
17
+ required: ['address'],
18
+ nullable: true,
19
+ properties: {
20
+ family: {
21
+ type: 'string',
22
+ enum: Object.values(address_constants_1.AddressFamilies),
23
+ nullable: true
24
+ },
25
+ address: {
26
+ type: 'string',
27
+ format: 'ip-with-optional-mask'
28
+ }
29
+ }
30
+ },
31
+ dev: {
32
+ type: 'string',
33
+ minLength: 1,
34
+ nullable: true
35
+ },
36
+ weight: {
37
+ type: 'integer',
38
+ minimum: 1,
39
+ nullable: true
40
+ }
41
+ }
42
+ };
43
+ exports.EndDt6Seg6LocalEncapArgsSchema = {
44
+ type: 'object',
45
+ required: [],
46
+ properties: {
47
+ table: {
48
+ type: ['string', 'integer'],
49
+ nullable: true,
50
+ oneOf: [
51
+ {
52
+ type: 'string',
53
+ enum: Object.values(show_constants_1.RouteRoutingTables),
54
+ nullable: true
55
+ },
56
+ {
57
+ type: 'integer',
58
+ minimum: 0,
59
+ nullable: true
60
+ }
61
+ ]
62
+ },
63
+ vrftable: {
64
+ type: ['string', 'integer'],
65
+ nullable: true,
66
+ oneOf: [
67
+ {
68
+ type: 'string',
69
+ enum: Object.values(show_constants_1.RouteRoutingTables),
70
+ nullable: true
71
+ },
72
+ {
73
+ type: 'integer',
74
+ minimum: 0,
75
+ nullable: true
76
+ }
77
+ ]
78
+ },
79
+ via: {
80
+ type: 'object',
81
+ required: ['address'],
82
+ nullable: true,
83
+ properties: {
84
+ family: {
85
+ type: 'string',
86
+ enum: Object.values(address_constants_1.AddressFamilies),
87
+ nullable: true
88
+ },
89
+ address: {
90
+ type: 'string',
91
+ format: 'ip-with-optional-mask'
92
+ }
93
+ }
94
+ },
95
+ dev: {
96
+ type: 'string',
97
+ minLength: 1,
98
+ nullable: true
99
+ },
100
+ weight: {
101
+ type: 'integer',
102
+ minimum: 1,
103
+ nullable: true
104
+ }
105
+ }
106
+ };
107
+ exports.EndB6Seg6LocalEncapArgsSchema = {
108
+ type: 'object',
109
+ required: ['srh', 'segs'],
110
+ properties: {
111
+ srh: {
112
+ type: 'boolean',
113
+ enum: [true]
114
+ },
115
+ segs: {
116
+ type: 'string',
117
+ format: 'comma-separated-ipv6-addresses'
118
+ },
119
+ hmac: {
120
+ type: 'integer',
121
+ minimum: 0,
122
+ nullable: true
123
+ },
124
+ via: {
125
+ type: 'object',
126
+ required: ['address'],
127
+ nullable: true,
128
+ properties: {
129
+ family: {
130
+ type: 'string',
131
+ enum: Object.values(address_constants_1.AddressFamilies),
132
+ nullable: true
133
+ },
134
+ address: {
135
+ type: 'string',
136
+ format: 'ip-with-optional-mask'
137
+ }
138
+ }
139
+ },
140
+ dev: {
141
+ type: 'string',
142
+ minLength: 1,
143
+ nullable: true
144
+ },
145
+ weight: {
146
+ type: 'integer',
147
+ minimum: 1,
148
+ nullable: true
149
+ }
150
+ }
151
+ };
152
+ exports.RouteSeg6LocalEncapArgsSchema = {
153
+ type: 'object',
154
+ nullable: true,
155
+ required: ['action'],
156
+ properties: {
157
+ action: {
158
+ type: 'object',
159
+ properties: {
160
+ [route_constants_1.EncapSeg6LocalActions.End]: {
161
+ type: 'boolean',
162
+ enum: [true],
163
+ nullable: true
164
+ },
165
+ [route_constants_1.EncapSeg6LocalActions.EndX]: exports.EndXSeg6LocalEncapArgsSchema,
166
+ [route_constants_1.EncapSeg6LocalActions.EndDX6]: exports.EndXSeg6LocalEncapArgsSchema,
167
+ [route_constants_1.EncapSeg6LocalActions.EndDT6]: exports.EndDt6Seg6LocalEncapArgsSchema,
168
+ [route_constants_1.EncapSeg6LocalActions.EndDT4]: exports.EndDt6Seg6LocalEncapArgsSchema,
169
+ [route_constants_1.EncapSeg6LocalActions.EndDT46]: exports.EndDt6Seg6LocalEncapArgsSchema,
170
+ [route_constants_1.EncapSeg6LocalActions.EndB6]: exports.EndB6Seg6LocalEncapArgsSchema,
171
+ [route_constants_1.EncapSeg6LocalActions.EndB6Encaps]: exports.EndB6Seg6LocalEncapArgsSchema
172
+ }
173
+ },
174
+ count: {
175
+ type: 'boolean',
176
+ enum: [true],
177
+ nullable: true
178
+ }
179
+ }
180
+ };
181
+ //# sourceMappingURL=seg6local.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seg6local.schema.js","sourceRoot":"","sources":["../../../../src/commands/route/encap-types/seg6local.schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Route get options.
3
+ * @category Interfaces
4
+ */
5
+ export interface RouteGetOptions {
6
+ /**
7
+ * Return full `fib` lookup matched route.
8
+ * Default is to return the resolved `dst` entry.
9
+ */
10
+ fibmatch?: true;
11
+ /** The destination address. */
12
+ to?: string;
13
+ /** The source address. */
14
+ from?: string;
15
+ /** The device from which this packet is expected to arrive. */
16
+ iif?: string;
17
+ /** Force the output device on which this packet will be routed. */
18
+ oif?: string;
19
+ /** The firewall mark (fwmark). */
20
+ mark?: string;
21
+ /** Only select routes with the given TOS. */
22
+ tos?: number;
23
+ /** Force the `vrf` device on which this packet will be routed. */
24
+ vrf?: string;
25
+ /** IP protocol as seen by the route lookup. */
26
+ ipproto?: string | number;
27
+ /** Source port as seen by the route lookup. */
28
+ sport?: number;
29
+ /** Destination port as seen by the route lookup. */
30
+ dport?: number;
31
+ /**
32
+ * If no source address (option from) was given, relookup the route with the source set to the
33
+ * preferred address received from the first lookup.
34
+ * If policy routing is used, it may be a different route.
35
+ */
36
+ connected?: true;
37
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=get.interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get.interfaces.js","sourceRoot":"","sources":["../../../src/commands/route/get.interfaces.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import { JSONSchemaType } from 'ajv';
2
+ import { RouteGetOptions } from './get.interfaces';
3
+ export declare const RouteGetSchema: JSONSchemaType<RouteGetOptions>;
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RouteGetSchema = void 0;
4
+ const schemas_1 = require("../../common/constants/schemas");
5
+ exports.RouteGetSchema = {
6
+ $id: schemas_1.SchemaIds.RouteGet,
7
+ type: 'object',
8
+ required: [],
9
+ properties: {
10
+ fibmatch: {
11
+ type: 'boolean',
12
+ enum: [true],
13
+ nullable: true
14
+ },
15
+ to: {
16
+ type: 'string',
17
+ format: 'ip-with-optional-mask-and-all-and-default-values',
18
+ nullable: true
19
+ },
20
+ from: {
21
+ type: 'string',
22
+ format: 'ip-with-required-mask-and-all-and-default-values',
23
+ nullable: true
24
+ },
25
+ iif: {
26
+ type: 'string',
27
+ minLength: 1,
28
+ maxLength: 15,
29
+ nullable: true
30
+ },
31
+ oif: {
32
+ type: 'string',
33
+ minLength: 1,
34
+ maxLength: 15,
35
+ nullable: true
36
+ },
37
+ mark: {
38
+ type: 'string',
39
+ nullable: true,
40
+ pattern: '^(0x[0-9a-fA-F]+|[0-9]+)(/(0x[0-9a-fA-F]+|[0-9]+))?$'
41
+ },
42
+ tos: {
43
+ type: 'integer',
44
+ nullable: true,
45
+ minimum: 0,
46
+ maximum: 255
47
+ },
48
+ vrf: {
49
+ type: 'string',
50
+ minLength: 1,
51
+ nullable: true
52
+ },
53
+ ipproto: {
54
+ type: ['string', 'integer'],
55
+ nullable: true,
56
+ oneOf: [
57
+ {
58
+ type: 'string',
59
+ minLength: 1,
60
+ nullable: true
61
+ },
62
+ {
63
+ type: 'integer',
64
+ minimum: 0,
65
+ nullable: true
66
+ }
67
+ ]
68
+ },
69
+ sport: {
70
+ type: 'integer',
71
+ minimum: 0,
72
+ nullable: true
73
+ },
74
+ dport: {
75
+ type: 'integer',
76
+ minimum: 0,
77
+ nullable: true
78
+ },
79
+ connected: {
80
+ type: 'boolean',
81
+ enum: [true],
82
+ nullable: true
83
+ }
84
+ }
85
+ };
86
+ //# sourceMappingURL=get.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get.schema.js","sourceRoot":"","sources":["../../../src/commands/route/get.schema.ts"],"names":[],"mappings":";;;AAEA,4DAAiE;AAGpD,QAAA,cAAc,GAAoC;IAC7D,GAAG,EAAS,mBAAS,CAAC,QAAQ;IAC9B,IAAI,EAAQ,QAAQ;IACpB,QAAQ,EAAI,EAAE;IACd,UAAU,EAAE;QACV,QAAQ,EAAG;YACT,IAAI,EAAM,SAAS;YACnB,IAAI,EAAM,CAAC,IAAI,CAAC;YAChB,QAAQ,EAAE,IAAI;SACf;QACD,EAAE,EAAS;YACT,IAAI,EAAM,QAAQ;YAClB,MAAM,EAAI,kDAAkD;YAC5D,QAAQ,EAAE,IAAI;SACf;QACD,IAAI,EAAO;YACT,IAAI,EAAM,QAAQ;YAClB,MAAM,EAAI,kDAAkD;YAC5D,QAAQ,EAAE,IAAI;SACf;QACD,GAAG,EAAQ;YACT,IAAI,EAAO,QAAQ;YACnB,SAAS,EAAE,CAAC;YACZ,SAAS,EAAE,EAAE;YACb,QAAQ,EAAG,IAAI;SAChB;QACD,GAAG,EAAQ;YACT,IAAI,EAAO,QAAQ;YACnB,SAAS,EAAE,CAAC;YACZ,SAAS,EAAE,EAAE;YACb,QAAQ,EAAG,IAAI;SAChB;QACD,IAAI,EAAO;YACT,IAAI,EAAM,QAAQ;YAClB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAG,sDAAsD;SACjE;QACD,GAAG,EAAQ;YACT,IAAI,EAAM,SAAS;YACnB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAG,CAAC;YACX,OAAO,EAAG,GAAG;SACd;QACD,GAAG,EAAQ;YACT,IAAI,EAAO,QAAQ;YACnB,SAAS,EAAE,CAAC;YACZ,QAAQ,EAAG,IAAI;SAChB;QACD,OAAO,EAAI;YACT,IAAI,EAAM,CAAC,QAAQ,EAAE,SAAS,CAAC;YAC/B,QAAQ,EAAE,IAAI;YACd,KAAK,EAAK;gBACR;oBACE,IAAI,EAAO,QAAQ;oBACnB,SAAS,EAAE,CAAC;oBACZ,QAAQ,EAAG,IAAI;iBAChB;gBACD;oBACE,IAAI,EAAM,SAAS;oBACnB,OAAO,EAAG,CAAC;oBACX,QAAQ,EAAE,IAAI;iBACf;aACF;SACF;QACD,KAAK,EAAM;YACT,IAAI,EAAM,SAAS;YACnB,OAAO,EAAG,CAAC;YACX,QAAQ,EAAE,IAAI;SACf;QACD,KAAK,EAAM;YACT,IAAI,EAAM,SAAS;YACnB,OAAO,EAAG,CAAC;YACX,QAAQ,EAAE,IAAI;SACf;QACD,SAAS,EAAE;YACT,IAAI,EAAM,SAAS;YACnB,IAAI,EAAM,CAAC,IAAI,CAAC;YAChB,QAAQ,EAAE,IAAI;SACf;KACF;CACF,CAAC"}
@@ -0,0 +1,105 @@
1
+ /**
2
+ * Route routing tables.
3
+ * @category Constants
4
+ */
5
+ export declare enum RouteRoutingTables {
6
+ /**
7
+ * The `local` table is a special routing table containing high priority control routes for local
8
+ * and broadcast addresses.
9
+ */
10
+ Local = "local",
11
+ /** The `main` table is the normal routing table containing all non-policy routes. */
12
+ Main = "main",
13
+ /**
14
+ * The `default` table is empty.
15
+ * It is reserved for some post-processing if no previous default rules selected the packet.
16
+ */
17
+ Default = "default",
18
+ All = "all",
19
+ Cache = "cache"
20
+ }
21
+ /**
22
+ * Routing table protocols.
23
+ * @category Constants
24
+ */
25
+ export declare enum RoutingTableProtocols {
26
+ /** The route was installed by the kernel during autoconfiguration. */
27
+ Kernel = "kernel",
28
+ /**
29
+ * The route was installed during the bootup sequence.
30
+ * If a routing daemon starts, it will purge all of them.
31
+ */
32
+ Boot = "boot",
33
+ /**
34
+ * The route was installed by the administrator to override dynamic routing.
35
+ * Routing daemon will respect them and, probably, even advertise them to its peers.
36
+ */
37
+ Static = "static",
38
+ /** The route was installed due to an ICMP redirect. */
39
+ Redirect = "redirect",
40
+ /** The route was installed by Router Discovery protocol. */
41
+ Ra = "ra"
42
+ }
43
+ /**
44
+ * Route types.
45
+ * @category Constants
46
+ */
47
+ export declare enum RouteTypes {
48
+ /** The route entry describes real paths to the destinations covered by the route prefix. */
49
+ Unicast = "unicast",
50
+ /**
51
+ * Not implemented the destinations are anycast addresses assigned to this host.
52
+ * They are mainly equivalent to local with one difference: such addresses are invalid
53
+ * when used as the source address of any packet.
54
+ */
55
+ Anycast = "anycast",
56
+ /**
57
+ * The destinations are assigned to this host.
58
+ * The packets are looped back and delivered locally.
59
+ */
60
+ Local = "local",
61
+ /**
62
+ * The destinations are broadcast addresses.
63
+ * The packets are sent as link broadcasts.
64
+ */
65
+ Broadcast = "broadcast",
66
+ /**
67
+ * A special type used for multicast routing.
68
+ * It is not present in normal routing tables.
69
+ */
70
+ Multicast = "multicast",
71
+ /**
72
+ * A special control route used together with policy rules.
73
+ * If such a route is selected, lookup in this table is terminated pretending that no route was found.
74
+ * Without policy routing it is equivalent to the absence of the route in the routing table.
75
+ * The packets are dropped and the ICMP message net unreachable is generated.
76
+ * The local senders get an ENETUNREACH error.
77
+ */
78
+ Throw = "throw",
79
+ /**
80
+ * These destinations are unreachable.
81
+ * Packets are discarded and the ICMP message host unreachable is generated.
82
+ * The local senders get an EHOSTUNREACH error.
83
+ */
84
+ Unreachable = "unreachable",
85
+ /**
86
+ * These destinations are unreachable.
87
+ * Packets are discarded and the ICMP message communication administratively prohibited is generated.
88
+ * The local senders get an EACCES error.
89
+ */
90
+ Prohibit = "prohibit",
91
+ /**
92
+ * These destinations are unreachable.
93
+ * Packets are discarded silently.
94
+ * The local senders get an EINVAL error.
95
+ */
96
+ Blackhole = "blackhole",
97
+ /**
98
+ * A special NAT route.
99
+ * Destinations covered by the prefix are considered to be dummy (or external) addresses which require translation
100
+ * to real (or internal) ones before forwarding.
101
+ * The addresses to translate to are selected with the attribute via.
102
+ * Warning: Route NAT is no longer supported in Linux 2.6.
103
+ */
104
+ Nat = "nat"
105
+ }