quagga.xml.in 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571
  1. <?xml version="1.0"?>
  2. <!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
  3. <!--
  4. Copyright 2005 Sun Microsystems, Inc. All rights reserved.
  5. Use is subject to license terms.
  6. ident "@(#)quagga.xml 1.0 05/03/15 SMI"
  7. -->
  8. <service_bundle type='manifest' name='QUAGGAdaemons:quagga'>
  9. <service
  10. name='network/routing/zebra'
  11. type='service'
  12. version='1'>
  13. <instance name='quagga' enabled='false'>
  14. <dependency name='fs'
  15. grouping='require_all'
  16. restart_on='none'
  17. type='service'>
  18. <service_fmri
  19. value='svc:/system/filesystem/usr:default' />
  20. </dependency>
  21. <dependency name='net'
  22. grouping='require_all'
  23. restart_on='none'
  24. type='service'>
  25. <service_fmri value='svc:/network/initial' />
  26. </dependency>
  27. <dependency name='config_data'
  28. grouping='require_all'
  29. restart_on='restart'
  30. type='path'>
  31. <service_fmri
  32. value='file://localhost/@sysconfdir@/zebra.conf' />
  33. </dependency>
  34. <exec_method
  35. type='method'
  36. name='start'
  37. exec='/lib/svc/method/quagga zebra %{routing/daemon-args}'
  38. timeout_seconds='60'>
  39. <method_context>
  40. <method_credential
  41. user='root' group='root'
  42. privileges='basic,net_icmpaccess,net_rawaccess,sys_admin,sys_net_config'/>
  43. </method_context>
  44. </exec_method>
  45. <exec_method
  46. type='method'
  47. name='stop'
  48. exec=':kill'
  49. timeout_seconds='60'>
  50. </exec_method>
  51. <!-- if we define these properties at the service level, each
  52. instance inherits them, and it can override with
  53. desired values.
  54. -->
  55. <property_group name='startd'
  56. type='framework'>
  57. <!-- sub-process core dumps shouldn't restart session -->
  58. <propval name='ignore_error'
  59. type='astring' value='core,signal' />
  60. </property_group>
  61. <property_group name='routing' type='application'>
  62. <propval name='value_authorization' type='astring'
  63. value='solaris.smf.modify.routing' />
  64. <propval name='daemon-args' type='astring' value='-P 0'/>
  65. </property_group>
  66. <property_group name='general' type='framework'>
  67. <!-- to start stop routing services -->
  68. <propval name='action_authorization' type='astring'
  69. value='solaris.smf.manage.routing' />
  70. </property_group>
  71. <template>
  72. <common_name>
  73. <loctext xml:lang='C'>
  74. Quagga: zebra, RIB, kernel intermediary and misc daemon
  75. </loctext>
  76. </common_name>
  77. <documentation>
  78. <manpage title='zebra' section='1M'
  79. manpath='@mandir@' />
  80. <doc_link name='quagga.net'
  81. uri='http://www.quagga.net/' />
  82. </documentation>
  83. </template>
  84. </instance>
  85. <stability value='Evolving' />
  86. </service>
  87. <service
  88. name='network/routing/rip'
  89. type='service'
  90. version='1'>
  91. <instance name='quagga' enabled='false'>
  92. <dependency name='fs'
  93. grouping='require_all'
  94. restart_on='none'
  95. type='service'>
  96. <service_fmri
  97. value='svc:/system/filesystem/usr:default' />
  98. </dependency>
  99. <!-- Depends on Work-In-Progress, not yet in SNV
  100. <dependency name='net'
  101. grouping='require_all'
  102. restart_on='none'
  103. type='service'>
  104. <service_fmri value='svc:/network/routing/ipv4-routing' />
  105. </dependency>
  106. -->
  107. <dependency name='zebra'
  108. grouping='require_all'
  109. restart_on='restart'
  110. type='service'>
  111. <service_fmri value='svc:/network/routing/zebra:quagga' />
  112. </dependency>
  113. <dependency name='config_data'
  114. grouping='require_all'
  115. restart_on='restart'
  116. type='path'>
  117. <service_fmri
  118. value='file://localhost/@sysconfdir@/ripd.conf' />
  119. </dependency>
  120. <exec_method
  121. type='method'
  122. name='start'
  123. exec='/lib/svc/method/quagga ripd %{routing/daemon-args}'
  124. timeout_seconds='60'>
  125. <method_context>
  126. <method_credential
  127. user='root' group='root'
  128. privileges='basic,net_icmpaccess,net_privaddr,net_rawaccess'/>
  129. </method_context>
  130. </exec_method>
  131. <exec_method
  132. type='method'
  133. name='stop'
  134. exec=':kill'
  135. timeout_seconds='60'>
  136. </exec_method>
  137. <property_group name='startd'
  138. type='framework'>
  139. <!-- sub-process core dumps shouldn't restart session -->
  140. <propval name='ignore_error'
  141. type='astring' value='core,signal' />
  142. </property_group>
  143. <property_group name='routing' type='application'>
  144. <propval name='value_authorization' type='astring'
  145. value='solaris.smf.modify.routing' />
  146. <propval name='daemon-args' type='astring' value='-P 0'/>
  147. </property_group>
  148. <property_group name='general' type='framework'>
  149. <!-- to start stop routing services -->
  150. <propval name='action_authorization' type='astring'
  151. value='solaris.smf.manage.routing' />
  152. </property_group>
  153. <template>
  154. <common_name>
  155. <loctext xml:lang='C'>
  156. Quagga: ripd, RIPv1/2 IPv4 routing protocol daemon.
  157. </loctext>
  158. </common_name>
  159. <documentation>
  160. <manpage title='ripd' section='1M'
  161. manpath='@mandir@' />
  162. <doc_link name='quagga.net'
  163. uri='http://www.quagga.net/' />
  164. </documentation>
  165. </template>
  166. </instance>
  167. <stability value='Evolving' />
  168. </service>
  169. <service
  170. name='network/routing/ripng'
  171. type='service'
  172. version='1'>
  173. <instance name='quagga' enabled='false'>
  174. <dependency name='fs'
  175. grouping='require_all'
  176. restart_on='none'
  177. type='service'>
  178. <service_fmri
  179. value='svc:/system/filesystem/usr:default' />
  180. </dependency>
  181. <!-- Depends on WIP, not yet in SNV
  182. <dependency name='net'
  183. grouping='require_all'
  184. restart_on='none'
  185. type='service'>
  186. <service_fmri value='svc:/network/routing/ipv6-routing' />
  187. </dependency>
  188. -->
  189. <dependency name='zebra'
  190. grouping='require_all'
  191. restart_on='restart'
  192. type='service'>
  193. <service_fmri value='svc:/network/routing/zebra:quagga' />
  194. </dependency>
  195. <dependency name='config_data'
  196. grouping='require_all'
  197. restart_on='restart'
  198. type='path'>
  199. <service_fmri
  200. value='file://localhost/@sysconfdir@/ripngd.conf' />
  201. </dependency>
  202. <exec_method
  203. type='method'
  204. name='start'
  205. exec='/lib/svc/method/quagga ripngd %{routing/daemon-args}'
  206. timeout_seconds='60'>
  207. <method_context>
  208. <method_credential
  209. user='root' group='root'
  210. privileges='basic,net_icmpaccess,net_privaddr,net_rawaccess'/>
  211. </method_context>
  212. </exec_method>
  213. <exec_method
  214. type='method'
  215. name='stop'
  216. exec=':kill'
  217. timeout_seconds='60' >
  218. </exec_method>
  219. <property_group name='startd'
  220. type='framework'>
  221. <!-- sub-process core dumps shouldn't restart session -->
  222. <propval name='ignore_error'
  223. type='astring' value='core,signal' />
  224. </property_group>
  225. <property_group name='routing' type='application'>
  226. <propval name='value_authorization' type='astring'
  227. value='solaris.smf.modify.routing' />
  228. <propval name='daemon-args' type='astring' value='-P 0'/>
  229. </property_group>
  230. <property_group name='general' type='framework'>
  231. <!-- to start stop routing services -->
  232. <propval name='action_authorization' type='astring'
  233. value='solaris.smf.manage.routing' />
  234. </property_group>
  235. <template>
  236. <common_name>
  237. <loctext xml:lang='C'>
  238. Quagga: ripngd, RIPng IPv6 routing protocol daemon.
  239. </loctext>
  240. </common_name>
  241. <documentation>
  242. <manpage title='ripngd' section='1M'
  243. manpath='@mandir@' />
  244. <doc_link name='quagga.net'
  245. uri='http://www.quagga.net/' />
  246. </documentation>
  247. </template>
  248. </instance>
  249. <stability value='Evolving' />
  250. </service>
  251. <service
  252. name='network/routing/ospf'
  253. type='service'
  254. version='1'>
  255. <instance name='quagga' enabled='false'>
  256. <dependency name='fs'
  257. grouping='require_all'
  258. restart_on='none'
  259. type='service'>
  260. <service_fmri
  261. value='svc:/system/filesystem/usr:default' />
  262. </dependency>
  263. <!-- Depends on WIP, not yet in SNV
  264. <dependency name='net'
  265. grouping='require_all'
  266. restart_on='none'
  267. type='service'>
  268. <service_fmri value='svc:/network/routing/ipv4-routing' />
  269. </dependency>
  270. -->
  271. <dependency name='zebra'
  272. grouping='require_all'
  273. restart_on='restart'
  274. type='service'>
  275. <service_fmri value='svc:/network/routing/zebra:quagga' />
  276. </dependency>
  277. <dependency name='config_data'
  278. grouping='require_all'
  279. restart_on='restart'
  280. type='path'>
  281. <service_fmri
  282. value='file://localhost/@sysconfdir@/ospfd.conf' />
  283. </dependency>
  284. <exec_method
  285. type='method'
  286. name='start'
  287. exec='/lib/svc/method/quagga ospfd %{routing/daemon-args}'
  288. timeout_seconds='60'>
  289. <method_context>
  290. <method_credential
  291. user='root' group='root'
  292. privileges='basic,net_icmpaccess,net_privaddr,net_rawaccess,sys_net_config'/>
  293. </method_context>
  294. </exec_method>
  295. <exec_method
  296. type='method'
  297. name='stop'
  298. exec=':kill'
  299. timeout_seconds='60'>
  300. </exec_method>
  301. <property_group name='startd'
  302. type='framework'>
  303. <!-- sub-process core dumps shouldn't restart session -->
  304. <propval name='ignore_error'
  305. type='astring' value='core,signal' />
  306. </property_group>
  307. <property_group name='routing' type='application'>
  308. <propval name='value_authorization' type='astring'
  309. value='solaris.smf.modify.routing' />
  310. <propval name='daemon-args' type='astring' value='-P 0'/>
  311. </property_group>
  312. <property_group name='general' type='framework'>
  313. <!-- to start stop routing services -->
  314. <propval name='action_authorization' type='astring'
  315. value='solaris.smf.manage.routing' />
  316. </property_group>
  317. <template>
  318. <common_name>
  319. <loctext xml:lang='C'>
  320. Quagga: ospfd, OSPFv2 IPv4 routing protocol daemon.
  321. </loctext>
  322. </common_name>
  323. <documentation>
  324. <manpage title='ospfd' section='1M'
  325. manpath='@mandir@' />
  326. <doc_link name='quagga.net'
  327. uri='http://www.quagga.net/' />
  328. </documentation>
  329. </template>
  330. </instance>
  331. <stability value='Evolving' />
  332. </service>
  333. <service
  334. name='network/routing/ospf6'
  335. type='service'
  336. version='1'>
  337. <instance name='quagga' enabled='false'>
  338. <dependency name='fs'
  339. grouping='require_all'
  340. restart_on='none'
  341. type='service'>
  342. <service_fmri
  343. value='svc:/system/filesystem/usr:default' />
  344. </dependency>
  345. <!-- Depends on WIP, not yet in SNV
  346. <dependency name='net'
  347. grouping='require_all'
  348. restart_on='none'
  349. type='service'>
  350. <service_fmri value='svc:/network/routing/ipv6-routing' />
  351. </dependency>
  352. -->
  353. <dependency name='zebra'
  354. grouping='require_all'
  355. restart_on='restart'
  356. type='service'>
  357. <service_fmri value='svc:/network/routing/zebra:quagga' />
  358. </dependency>
  359. <dependency name='config_data'
  360. grouping='require_all'
  361. restart_on='restart'
  362. type='path'>
  363. <service_fmri
  364. value='file://localhost/@sysconfdir@/ospf6d.conf' />
  365. </dependency>
  366. <exec_method
  367. type='method'
  368. name='start'
  369. exec='/lib/svc/method/quagga ospf6d %{routing/daemon-args}'
  370. timeout_seconds='60'>
  371. <method_context>
  372. <method_credential
  373. user='root' group='root'
  374. privileges='basic,net_icmpaccess,net_privaddr,net_rawaccess'/>
  375. </method_context>
  376. </exec_method>
  377. <exec_method
  378. type='method'
  379. name='stop'
  380. exec=':kill'
  381. timeout_seconds='60'>
  382. </exec_method>
  383. <property_group name='startd'
  384. type='framework'>
  385. <!-- sub-process core dumps shouldn't restart session -->
  386. <propval name='ignore_error'
  387. type='astring' value='core,signal' />
  388. </property_group>
  389. <property_group name='routing' type='application'>
  390. <propval name='value_authorization' type='astring'
  391. value='solaris.smf.modify.routing' />
  392. <propval name='daemon-args' type='astring' value='-P 0'/>
  393. </property_group>
  394. <property_group name='general' type='framework'>
  395. <!-- to start stop routing services -->
  396. <propval name='action_authorization' type='astring'
  397. value='solaris.smf.manage.routing' />
  398. </property_group>
  399. <template>
  400. <common_name>
  401. <loctext xml:lang='C'>
  402. Quagga: ospf6d, OSPFv3 IPv6 routing protocol daemon.
  403. </loctext>
  404. </common_name>
  405. <documentation>
  406. <manpage title='ospf6d' section='1M'
  407. manpath='@mandir@' />
  408. <doc_link name='quagga.net'
  409. uri='http://www.quagga.net/' />
  410. </documentation>
  411. </template>
  412. </instance>
  413. <stability value='Evolving' />
  414. </service>
  415. <service
  416. name='network/routing/bgp'
  417. type='service'
  418. version='1'>
  419. <instance name='quagga' enabled='false'>
  420. <dependency name='fs'
  421. grouping='require_all'
  422. restart_on='none'
  423. type='service'>
  424. <service_fmri
  425. value='svc:/system/filesystem/usr:default' />
  426. </dependency>
  427. <!-- Depends on WIP, not yet in SNV
  428. <dependency name='net'
  429. grouping='require_any'
  430. restart_on='none'
  431. type='service'>
  432. <service_fmri value='svc:/network/routing/ipv6-routing' />
  433. <service_fmri value='svc:/network/routing/ipv4-routing' />
  434. </dependency>
  435. -->
  436. <dependency name='zebra'
  437. grouping='optional_all'
  438. restart_on='restart'
  439. type='service'>
  440. <service_fmri value='svc:/network/routing/zebra:quagga' />
  441. </dependency>
  442. <dependency name='config_data'
  443. grouping='require_all'
  444. restart_on='restart'
  445. type='path'>
  446. <service_fmri
  447. value='file://localhost/@sysconfdir@/bgpd.conf' />
  448. </dependency>
  449. <exec_method
  450. type='method'
  451. name='start'
  452. exec='/lib/svc/method/quagga bgpd %{routing/daemon-args}'
  453. timeout_seconds='60'>
  454. <method_context>
  455. <method_credential
  456. user='root' group='root'
  457. privileges='basic,net_icmpaccess,net_privaddr,net_rawaccess'/>
  458. </method_context>
  459. </exec_method>
  460. <exec_method
  461. type='method'
  462. name='stop'
  463. exec=':kill'
  464. timeout_seconds='60' >
  465. </exec_method>
  466. <property_group name='startd'
  467. type='framework'>
  468. <!-- sub-process core dumps shouldn't restart session -->
  469. <propval name='ignore_error'
  470. type='astring' value='core,signal' />
  471. </property_group>
  472. <property_group name='routing' type='application'>
  473. <propval name='value_authorization' type='astring'
  474. value='solaris.smf.modify.routing' />
  475. <propval name='daemon-args' type='astring' value='-P 0'/>
  476. </property_group>
  477. <property_group name='general' type='framework'>
  478. <!-- to start stop routing services -->
  479. <propval name='action_authorization' type='astring'
  480. value='solaris.smf.manage.routing' />
  481. </property_group>
  482. <template>
  483. <common_name>
  484. <loctext xml:lang='C'>
  485. Quagga: bgpd, BGP routing protocol daemon.
  486. </loctext>
  487. </common_name>
  488. <documentation>
  489. <manpage title='bgpd' section='1M'
  490. manpath='@mandir@' />
  491. <doc_link name='quagga.net'
  492. uri='http://www.quagga.net/' />
  493. </documentation>
  494. </template>
  495. </instance>
  496. <stability value='Evolving' />
  497. </service>
  498. </service_bundle>