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,43 @@
1
+ import Command from '../common/classes/command';
2
+ import { GlobalOptions } from '../common/interfaces/common';
3
+ import { NtableInfo, NtableShowOptions } from './ntable/show.interfaces';
4
+ import { NtableChangeOptions } from './ntable/change.interfaces';
5
+ /**
6
+ * Modify table parameter.
7
+ * Allows modifying table parameters such as timers and queue lengths.
8
+ *
9
+ * @param options - Parameters options to be passed down to `ip`.
10
+ * @param globalOptions - Global parameters options that affects the command execution.
11
+ *
12
+ * @throws {@link ParametersError} - Throws when passed parameters are invalid.
13
+ * @throws {@link CommandError} - Throws when the executed command fails.
14
+ */
15
+ export declare function change(options: NtableChangeOptions, globalOptions?: GlobalOptions): Promise<Command<NtableChangeOptions>>;
16
+ /**
17
+ * List the ip neighbour tables.
18
+ * This commands displays neighbour table parameters and statistics.
19
+ *
20
+ * @param options - Parameters options to be passed down to `ip`.
21
+ * @param globalOptions - Global parameters options that affects the command execution.
22
+ *
23
+ * @throws {@link ParametersError} - Throws when passed parameters are invalid.
24
+ * @throws {@link CommandError} - Throws when the executed command fails.
25
+ *
26
+ * @example
27
+ *
28
+ * Import module
29
+ * ```
30
+ * import { ntable } from 'iproutejs';
31
+ * ```
32
+ *
33
+ * Show all neighbour tables
34
+ * ```
35
+ * const entries = await ntable.show({});
36
+ * ```
37
+ */
38
+ export declare function show(options?: NtableShowOptions, globalOptions?: GlobalOptions): Promise<Command<NtableShowOptions> | NtableInfo[]>;
39
+ declare const _default: {
40
+ change: typeof change;
41
+ show: typeof show;
42
+ };
43
+ export default _default;
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.show = exports.change = void 0;
16
+ const command_with_returned_data_1 = __importDefault(require("../common/classes/command-with-returned-data"));
17
+ const command_1 = __importDefault(require("../common/classes/command"));
18
+ const schemas_1 = require("../common/constants/schemas");
19
+ const show_schema_1 = require("./ntable/show.schema");
20
+ const change_schema_1 = require("./ntable/change.schema");
21
+ /**
22
+ * Modify table parameter.
23
+ * Allows modifying table parameters such as timers and queue lengths.
24
+ *
25
+ * @param options - Parameters options to be passed down to `ip`.
26
+ * @param globalOptions - Global parameters options that affects the command execution.
27
+ *
28
+ * @throws {@link ParametersError} - Throws when passed parameters are invalid.
29
+ * @throws {@link CommandError} - Throws when the executed command fails.
30
+ */
31
+ function change(options, globalOptions = {}) {
32
+ return __awaiter(this, void 0, void 0, function* () {
33
+ const cmd = ['ip', 'ntable', 'change'];
34
+ const ipCmd = new command_1.default(schemas_1.SchemaIds.NtableChange, change_schema_1.NtableChangeSchema, options, globalOptions, cmd);
35
+ return yield ipCmd.exec();
36
+ });
37
+ }
38
+ exports.change = change;
39
+ /**
40
+ * List the ip neighbour tables.
41
+ * This commands displays neighbour table parameters and statistics.
42
+ *
43
+ * @param options - Parameters options to be passed down to `ip`.
44
+ * @param globalOptions - Global parameters options that affects the command execution.
45
+ *
46
+ * @throws {@link ParametersError} - Throws when passed parameters are invalid.
47
+ * @throws {@link CommandError} - Throws when the executed command fails.
48
+ *
49
+ * @example
50
+ *
51
+ * Import module
52
+ * ```
53
+ * import { ntable } from 'iproutejs';
54
+ * ```
55
+ *
56
+ * Show all neighbour tables
57
+ * ```
58
+ * const entries = await ntable.show({});
59
+ * ```
60
+ */
61
+ function show(options = {}, globalOptions = {}) {
62
+ return __awaiter(this, void 0, void 0, function* () {
63
+ const cmd = ['ip', 'ntable', 'show'];
64
+ const ipCmd = new command_with_returned_data_1.default(schemas_1.SchemaIds.NtableShow, show_schema_1.NtableShowSchema, options, Object.assign(Object.assign({}, globalOptions), {
65
+ // Overrides for a better show.
66
+ '-details': true, '-statistics': true, '-json': true }), cmd);
67
+ return yield ipCmd.exec();
68
+ });
69
+ }
70
+ exports.show = show;
71
+ exports.default = {
72
+ change,
73
+ show
74
+ };
75
+ //# sourceMappingURL=ntable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ntable.js","sourceRoot":"","sources":["../../src/commands/ntable.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,8GAAmF;AACnF,wEAAgD;AAChD,yDAAwD;AAExD,sDAAwD;AAExD,0DAA4D;AAG5D;;;;;;;;;GASG;AACH,SAAsB,MAAM,CAAC,OAA4B,EAC5B,gBAA+B,EAAE;;QAE5D,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEvC,MAAM,KAAK,GAAG,IAAI,iBAAO,CACvB,mBAAS,CAAC,YAAY,EACtB,kCAAkB,EAClB,OAAO,EACP,aAAa,EACb,GAAG,CAAC,CAAC;QAEP,OAAO,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;IAC5B,CAAC;CAAA;AAbD,wBAaC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAsB,IAAI,CAAC,UAA+B,EAAE,EACjC,gBAA+B,EAAE;;QAE1D,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAErC,MAAM,KAAK,GAAG,IAAI,oCAAuB,CACvC,mBAAS,CAAC,UAAU,EACpB,8BAAgB,EAChB,OAAO,kCAEF,aAAa;YAChB,+BAA+B;YAC/B,UAAU,EAAK,IAAI,EACnB,aAAa,EAAE,IAAI,EACnB,OAAO,EAAQ,IAAI,KAErB,GAAG,CAAC,CAAC;QAEP,OAAO,MAAM,KAAK,CAAC,IAAI,EAAgB,CAAC;IAC1C,CAAC;CAAA;AAnBD,oBAmBC;AAED,kBAAe;IACb,MAAM;IACN,IAAI;CACL,CAAC"}
@@ -0,0 +1,261 @@
1
+ import { EnableDisableAsStringToggle } from '../../common/constants/attribute-values';
2
+ import { AddressFamilies, AddressScopes } from '../address.constants';
3
+ import { EncapSeg6LocalActions, EncapTypes, RoutePreferences } from '../route.constants';
4
+ import { RouteRoutingTables, RoutingTableProtocols, RouteTypes } from './show.constants';
5
+ import { AddRouteMplsEncapArgs } from './encap-types/mpls.interfaces';
6
+ import { AddRouteIpEncapArgs } from './encap-types/ip.interfaces';
7
+ import { AddRouteBpfEncapArgs } from './encap-types/bpf.interfaces';
8
+ import { AddRouteSeg6EncapArgs } from './encap-types/seg6.interfaces';
9
+ import { AddRouteSeg6LocalEncapArgs, EndB6EncapsSeg6LocalEncapArgs, EndB6Seg6LocalEncapArgs, EndDt46Seg6LocalEncapArgs, EndDt4Seg6LocalEncapArgs, EndDt6Seg6LocalEncapArgs, EndDx6Seg6LocalEncapArgs, EndXSeg6LocalEncapArgs } from './encap-types/seg6local.interfaces';
10
+ import { AddRouteIoam6EncapArgs } from './encap-types/ioam6.interfaces';
11
+ /**
12
+ * Route add options.
13
+ * @category Interfaces
14
+ */
15
+ export interface RouteAddOptions {
16
+ /**
17
+ * The destination prefix of the route.
18
+ * If TYPE is omitted, `ip` assumes type {@link RouteTypes.Unicast}.
19
+ * PREFIX is an IP or IPv6 address optionally followed by a slash and the prefix length.
20
+ * If the length of the prefix is missing, `ip` assumes a full-length host route.
21
+ *
22
+ * There is also a special PREFIX `default` - which is equivalent to IP `0/0` or to IPv6 `::/0`.
23
+ */
24
+ type?: RouteTypes;
25
+ /** The destination address. */
26
+ to: string;
27
+ /**
28
+ * The Type Of Service (TOS) key. This key has no associated mask and the longest match is
29
+ * understood as: First, compare the TOS of the route and of the packet.
30
+ *
31
+ * If they are not equal, then the packet may still match a route with a zero TOS.
32
+ *
33
+ * TOS is either an 8 bit hexadecimal number or an identifier from `/etc/iproute2/rt_dsfield`.
34
+ */
35
+ tos?: number;
36
+ dsfield?: number;
37
+ /**
38
+ * The table to add this route to.
39
+ *
40
+ * TABLEID may be a number or a string from the file /etc/iproute2/rt_tables.
41
+ * If this parameter is omitted, ip assumes the main table, with the exception of local, broadcast
42
+ * and nat routes, which are put into the local table by default.
43
+ */
44
+ table?: number | RouteRoutingTables;
45
+ /**
46
+ * The routing protocol identifier of this route.
47
+ * RTPROTO may be a number or a string from the file `/etc/iproute2/rt_protos`.
48
+ *
49
+ * If the routing protocol ID is not given, ip assumes protocol boot (i.e. it assumes the route was added by someone
50
+ * who doesn't understand what they are doing).
51
+ *
52
+ * Several protocol values have a fixed interpretation.
53
+ */
54
+ proto?: RoutingTableProtocols | number;
55
+ protocol?: RoutingTableProtocols | number;
56
+ /**
57
+ * The scope of the destinations covered by the route prefix.
58
+ * SCOPE_VAL may be a number or a string from the file `/etc/iproute2/rt_scopes`.
59
+ * If this parameter is omitted, ip assumes scope `global` for all gatewayed unicast routes, scope `link` for
60
+ * direct unicast and broadcast routes and scope `host` for local routes.
61
+ */
62
+ scope?: AddressScopes | number;
63
+ /**
64
+ * The preference value of the route.
65
+ * NUMBER is an arbitrary 32bit number, where routes with lower values are preferred.
66
+ */
67
+ metric?: number;
68
+ preference?: number;
69
+ /**
70
+ * Control whether TTL should be propagated from any encap into the un-encapsulated packet, overriding
71
+ * any global configuration.
72
+ *
73
+ * Only supported for MPLS at present.
74
+ */
75
+ 'ttl-propagate'?: EnableDisableAsStringToggle;
76
+ /**
77
+ * Attach tunnel encapsulation attributes to this route.
78
+ * @see {@link EncapTypes}
79
+ */
80
+ encap?: {
81
+ [key in EncapTypes]?: EncapTypesMappings[key];
82
+ };
83
+ /**
84
+ * The address of the nexthop router, in the address family FAMILY.
85
+ * Actually, the sense of this field depends on the route type. For normal unicast routes it is either
86
+ * the true next hop router or, if it is a direct route installed in BSD compatibility mode, it
87
+ * can be a local address of the interface. For NAT routes it is the first address of the block of
88
+ * translated IP destinations.
89
+ *
90
+ * The internal buffer used in iproute2 limits the maximum number of nexthops that may be specified in one go.
91
+ * If only ADDRESS is given, the current buffer size allows for 144 IPv6 nexthops and 253 IPv4 ones.
92
+ * For IPv4, this effectively limits the number of nexthops possible per route.
93
+ *
94
+ * With IPv6, further nexthops may be appended to the same route via ip route append command.
95
+ */
96
+ via?: {
97
+ family?: AddressFamilies;
98
+ address: string;
99
+ };
100
+ /** The output device name. */
101
+ dev?: string;
102
+ /** Is a weight for this element of a multipath route reflecting its relative bandwidth or quality. */
103
+ weight?: number;
104
+ /** Pretend that the nexthop is directly attached to this link, even if it does not match any interface prefix. */
105
+ onlink?: true;
106
+ /** XXX */
107
+ pervasive?: true;
108
+ /** Use nexthop object with given id as nexthop specification. */
109
+ nhid?: number;
110
+ /** The MTU along the path to the destination. */
111
+ mtu?: number;
112
+ /**
113
+ * The MSS ('Maximal Segment Size') to advertise to these destinations when establishing TCP connections.
114
+ *
115
+ * If it is not given, Linux uses a default value calculated from the first hop device MTU.
116
+ *
117
+ * (If the path to these destination is asymmetric, this guess may be wrong.)
118
+ */
119
+ advmss?: number;
120
+ /** XXX */
121
+ as?: {
122
+ to?: true;
123
+ address: string;
124
+ };
125
+ /**
126
+ * The initial RTT ('Round Trip Time') estimate.
127
+ *
128
+ * If no suffix is specified the units are raw values passed directly to the routing code to maintain
129
+ * compatibility with previous releases.
130
+ *
131
+ * Otherwise if a suffix of `s`, `sec` or `secs` is used to specify seconds and `m`s, `msec` or `msecs` to specify
132
+ * milliseconds.
133
+ X */
134
+ rtt?: number | string;
135
+ /**
136
+ * The initial RTT variance estimate. Values are specified as with rtt above.
137
+ *
138
+ * @see {@link rtt}
139
+ */
140
+ rttvar?: number | string;
141
+ /**
142
+ * Maximal reordering on the path to this destination.
143
+ *
144
+ * If it is not given, Linux uses the value selected with sysctl variable `net/ipv4/tcp_reordering`.
145
+ */
146
+ reordering?: number;
147
+ /** XXX */
148
+ window?: number;
149
+ /** The clamp for congestion window. */
150
+ cwnd?: number;
151
+ /** An estimate for the initial slow start threshold. */
152
+ ssthresh?: number;
153
+ /** XXX */
154
+ realms?: string;
155
+ /**
156
+ * The minimum TCP Retransmission TimeOut to use when communicating with this destination.
157
+ * Values are specified as with rtt above.
158
+ *
159
+ * @see {@link rtt}
160
+ */
161
+ rto_min?: number | string;
162
+ /**
163
+ * The initial congestion window size for connections to this destination.
164
+ * Actual window size is this value multiplied by the MSS (``Maximal Segment Size'') for same connection.
165
+ * The default is zero, meaning to use the values specified in RFC2414.
166
+ */
167
+ initcwnd?: number;
168
+ /**
169
+ * The initial receive window size for connections to this destination.
170
+ * Actual window size is this value multiplied by the MSS of the connection.
171
+ * The default value is zero, meaning to use Slow Start value.
172
+ */
173
+ initrwnd?: number;
174
+ /**
175
+ * Enable or disable per-route features.
176
+ *
177
+ * Only available feature at this time is ecn to enable explicit congestion notification when initiating
178
+ * connections to the given destination network.
179
+ *
180
+ * When responding to a connection request from the given network, `ecn` will also be used even if
181
+ * the `net.ipv4.tcp_ecn` sysctl is set to `0`.
182
+ */
183
+ features?: {
184
+ /** @see {@link features} */
185
+ ecn: true;
186
+ };
187
+ /** Enable or disable quick ack for connections to this destination. */
188
+ quickack?: boolean;
189
+ /**
190
+ * Sets a specific TCP congestion control algorithm only for a given destination.
191
+ *
192
+ * If not specified, Linux keeps the current global default TCP congestion control algorithm, or the one
193
+ * set from the application.
194
+ *
195
+ * If the modifier lock is not used, an application may nevertheless overwrite the suggested congestion control
196
+ * algorithm for that destination. If the modifier lock is used, then an application is not allowed to overwrite
197
+ * the specified congestion control algorithm for that destination, thus it will be enforced/guaranteed to use
198
+ * the proposed algorithm.
199
+ */
200
+ congctl?: string;
201
+ /**
202
+ * The IPv6 route preference.
203
+ * PREF is a string specifying the route preference as defined in RFC4191 for Router Discovery messages.
204
+ */
205
+ pref?: RoutePreferences;
206
+ /**
207
+ * The route will be deleted after the expires time.
208
+ * Only support IPv6 at present.
209
+ */
210
+ expires?: number;
211
+ /** Enable TCP Fastopen without a cookie for connections to this destination. */
212
+ fastopen_no_cookie?: boolean;
213
+ /**
214
+ * The nexthop of a multipath route.
215
+ *
216
+ * NEXTHOP is a complex value with its own syntax similar to the top level argument lists.
217
+ */
218
+ nexthops?: Array<{
219
+ nexthop: true;
220
+ } & NextHopArgs>;
221
+ }
222
+ /**
223
+ * NH arguments.
224
+ * @category Interfaces
225
+ */
226
+ export interface NextHopArgs {
227
+ via?: {
228
+ family?: AddressFamilies;
229
+ address: string;
230
+ };
231
+ /** The output device name. */
232
+ dev?: string;
233
+ /** Is a weight for this element of a multipath route reflecting its relative bandwidth or quality. */
234
+ weight?: number;
235
+ }
236
+ /**
237
+ * Tunnel encapsulation mapping.
238
+ * @category Constants
239
+ */
240
+ export interface EncapTypesMappings {
241
+ [EncapTypes.Mpls]: AddRouteMplsEncapArgs;
242
+ [EncapTypes.Ip]: AddRouteIpEncapArgs;
243
+ [EncapTypes.Bpf]: AddRouteBpfEncapArgs;
244
+ [EncapTypes.Seg6]: AddRouteSeg6EncapArgs;
245
+ [EncapTypes.Seg6local]: AddRouteSeg6LocalEncapArgs;
246
+ [EncapTypes.Ioam6]: AddRouteIoam6EncapArgs;
247
+ }
248
+ /**
249
+ * Seg6local encapsulation action mappings.
250
+ * @category Interfaces
251
+ */
252
+ export interface EncapSeg6LocalActionsMappings {
253
+ [EncapSeg6LocalActions.End]: true;
254
+ [EncapSeg6LocalActions.EndX]: EndXSeg6LocalEncapArgs;
255
+ [EncapSeg6LocalActions.EndDX6]: EndDx6Seg6LocalEncapArgs;
256
+ [EncapSeg6LocalActions.EndDT6]: EndDt6Seg6LocalEncapArgs;
257
+ [EncapSeg6LocalActions.EndDT4]: EndDt4Seg6LocalEncapArgs;
258
+ [EncapSeg6LocalActions.EndDT46]: EndDt46Seg6LocalEncapArgs;
259
+ [EncapSeg6LocalActions.EndB6]: EndB6Seg6LocalEncapArgs;
260
+ [EncapSeg6LocalActions.EndB6Encaps]: EndB6EncapsSeg6LocalEncapArgs;
261
+ }
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const route_constants_1 = require("../route.constants");
4
+ //# sourceMappingURL=add.interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add.interfaces.js","sourceRoot":"","sources":["../../../src/commands/route/add.interfaces.ts"],"names":[],"mappings":";;AAEA,wDAAyF"}
@@ -0,0 +1,3 @@
1
+ import { JSONSchemaType } from 'ajv';
2
+ import { RouteAddOptions } from './add.interfaces';
3
+ export declare const RouteAddSchema: JSONSchemaType<RouteAddOptions>;