]>
Commit | Line | Data |
---|---|---|
1 | <?xml version="1.0"?> | |
2 | <!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1"> | |
3 | <!-- | |
4 | This file is part of FRRouting (FRR) | |
5 | ||
6 | FRRouting is free software; you can redistribute it and/or | |
7 | modify it under the terms of the GNU General Public License as | |
8 | published by the Free Software Foundation; either version 2, or | |
9 | (at your option) anylater version. | |
10 | ||
11 | FRRouting is distributed in the hope that it will be useful, | |
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
14 | General Public License for more details. | |
15 | ||
16 | You should have received a copy of the GNU General Public License | |
17 | along with FRRouting; see the file COPYING. If not, write to | |
18 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
19 | Boston, MA 02111-1307, USA. | |
20 | ||
21 | Copyright 2007 Sun Microsystems, Inc. All rights reserved. | |
22 | Use is subject to license terms. | |
23 | ||
24 | Copyright 2015 Joyent, Inc. | |
25 | ||
26 | ident "@(#)frr.xml 1.0 19/01/17 SMI" | |
27 | --> | |
28 | ||
29 | <service_bundle type='manifest' name='SUNWfrr-daemons:frr'> | |
30 | ||
31 | <service | |
32 | name='network/routing/zebra' | |
33 | type='service' | |
34 | version='1'> | |
35 | ||
36 | <single_instance /> | |
37 | <instance name='frr' enabled='false'> | |
38 | ||
39 | <dependency name='fs' | |
40 | grouping='require_all' | |
41 | restart_on='none' | |
42 | type='service'> | |
43 | <service_fmri | |
44 | value='svc:/system/filesystem/usr:default' /> | |
45 | </dependency> | |
46 | ||
47 | <dependency name='net' | |
48 | grouping='require_all' | |
49 | restart_on='none' | |
50 | type='service'> | |
51 | <service_fmri value='svc:/network/initial' /> | |
52 | </dependency> | |
53 | ||
54 | <!-- do not not run unless routing-setup has run --> | |
55 | <dependency | |
56 | name='network_routing_setup' | |
57 | grouping='require_all' | |
58 | restart_on='refresh' | |
59 | type='service'> | |
60 | <service_fmri value='svc:/network/routing-setup' /> | |
61 | </dependency> | |
62 | ||
63 | <exec_method | |
64 | type='method' | |
65 | name='start' | |
66 | exec='/lib/svc/method/frr zebra' | |
67 | timeout_seconds='60'> | |
68 | <method_context> | |
69 | <method_credential | |
70 | user='root' group='root'/> | |
71 | </method_context> | |
72 | </exec_method> | |
73 | ||
74 | <exec_method | |
75 | type='method' | |
76 | name='stop' | |
77 | exec=':kill' | |
78 | timeout_seconds='60'> | |
79 | </exec_method> | |
80 | ||
81 | <!-- if we define these properties at the service level, each | |
82 | instance inherits them, and it can override with | |
83 | desired values. | |
84 | --> | |
85 | <property_group name='startd' | |
86 | type='framework'> | |
87 | <!-- sub-process core dumps shouldn't restart session --> | |
88 | <propval name='ignore_error' | |
89 | type='astring' value='core,signal' /> | |
90 | </property_group> | |
91 | ||
92 | <!-- Properties in this group are used by routeadm (1M) --> | |
93 | <property_group name='routeadm' type='application'> | |
94 | <stability value='Unstable' /> | |
95 | <!-- Identifies service as a routing service --> | |
96 | <propval name='daemon' type='astring' | |
97 | value='@sbindir@/zebra' /> | |
98 | <propval name='value_authorization' type='astring' | |
99 | value='solaris.smf.value.routing' /> | |
100 | <!-- zebra should not contribute to ipv4/ipv6 routing state --> | |
101 | <propval name='protocol' type='astring' value='zebra' /> | |
102 | </property_group> | |
103 | ||
104 | <!-- Properties in this group are modifiable via routeadm (1M) --> | |
105 | <property_group name='routing' type='application'> | |
106 | <stability value='Evolving' /> | |
107 | <propval name='value_authorization' type='astring' | |
108 | value='solaris.smf.value.routing' /> | |
109 | ||
110 | <!-- Options common to FRRouting daemons | |
111 | Property names are equivalent to the long | |
112 | option name, consult FRRouting documentation --> | |
113 | <!-- The config file to use, if not the default --> | |
114 | <propval name='config_file' type='astring' value=''/> | |
115 | <!-- The vty_port to listen on if not the default. | |
116 | 0 to disable --> | |
117 | <propval name='vty_port' type='integer' value='0' /> | |
118 | <!-- The address to bind the VTY interface to, if not any. --> | |
119 | <propval name='vty_address' type='astring' value='' /> | |
120 | <!-- The user to switch to after startup, if not the default --> | |
121 | <propval name='user' type='astring' value='' /> | |
122 | <!-- The group to switch to, if not the default. | |
123 | If user is specified, this defaults to a group with | |
124 | same name as user --> | |
125 | <propval name='group' type='astring' value='' /> | |
126 | <!-- The pidfile to use, if not the default of | |
127 | @frr_statedir@ --> | |
128 | <propval name='pid_file' type='astring' value='' /> | |
129 | ||
130 | <!-- Options specific to zebra --> | |
131 | <propval name='batch' type='boolean' value='false' /> | |
132 | </property_group> | |
133 | ||
134 | <property_group name='general' type='framework'> | |
135 | <!-- to start stop routing services --> | |
136 | <propval name='action_authorization' type='astring' | |
137 | value='solaris.smf.manage.routing' /> | |
138 | <propval name='value_authorization' type='astring' | |
139 | value='solaris.smf.manage.routing' /> | |
140 | </property_group> | |
141 | ||
142 | <template> | |
143 | <common_name> | |
144 | <loctext xml:lang='C'> | |
145 | FRRouting: zebra, RIB, kernel intermediary and misc daemon | |
146 | </loctext> | |
147 | </common_name> | |
148 | <documentation> | |
149 | <manpage title='zebra' section='1M' | |
150 | manpath='@mandir@' /> | |
151 | <doc_link name='frrouting.org' | |
152 | uri='http://www.frrouting.org/' /> | |
153 | </documentation> | |
154 | </template> | |
155 | </instance> | |
156 | <stability value='Unstable' /> | |
157 | </service> | |
158 | ||
159 | <service | |
160 | name='network/routing/rip' | |
161 | type='service' | |
162 | version='1'> | |
163 | ||
164 | <instance name='frr' enabled='false'> | |
165 | ||
166 | <dependency name='fs' | |
167 | grouping='require_all' | |
168 | restart_on='none' | |
169 | type='service'> | |
170 | <service_fmri | |
171 | value='svc:/system/filesystem/usr:default' /> | |
172 | </dependency> | |
173 | ||
174 | <dependency | |
175 | name='ipv4-forwarding' | |
176 | grouping='optional_all' | |
177 | restart_on='refresh' | |
178 | type='service'> | |
179 | <service_fmri value='svc:/network/ipv4-forwarding' /> | |
180 | </dependency> | |
181 | ||
182 | <!-- do not not run unless routing-setup has run --> | |
183 | <dependency | |
184 | name='network_routing_setup' | |
185 | grouping='require_all' | |
186 | restart_on='refresh' | |
187 | type='service'> | |
188 | <service_fmri value='svc:/network/routing-setup' /> | |
189 | </dependency> | |
190 | ||
191 | <!-- ensure that restart of zebra is propogated to daemon --> | |
192 | <dependency | |
193 | name='zebra' | |
194 | grouping='require_all' | |
195 | restart_on='restart' | |
196 | type='service'> | |
197 | <service_fmri value='svc:/network/routing/zebra:frr' /> | |
198 | </dependency> | |
199 | ||
200 | <exec_method | |
201 | type='method' | |
202 | name='start' | |
203 | exec='/lib/svc/method/frr ripd' | |
204 | timeout_seconds='60'> | |
205 | <method_context> | |
206 | <method_credential | |
207 | user='root' group='root'/> | |
208 | </method_context> | |
209 | </exec_method> | |
210 | ||
211 | <exec_method | |
212 | type='method' | |
213 | name='stop' | |
214 | exec=':kill' | |
215 | timeout_seconds='60'> | |
216 | </exec_method> | |
217 | ||
218 | <property_group name='startd' | |
219 | type='framework'> | |
220 | <!-- sub-process core dumps shouldn't restart session --> | |
221 | <propval name='ignore_error' | |
222 | type='astring' value='core,signal' /> | |
223 | </property_group> | |
224 | ||
225 | <!-- Properties in this group are used by routeadm (1M) --> | |
226 | <property_group name='routeadm' type='application'> | |
227 | <stability value='Unstable' /> | |
228 | <!-- Identifies service as a routing service --> | |
229 | <propval name='daemon' type='astring' | |
230 | value='@sbindir@/ripd' /> | |
231 | <propval name='legacy-daemon' type='astring' | |
232 | value='/usr/sfw/sbin/ripdstart' /> | |
233 | <propval name='value_authorization' type='astring' | |
234 | value='solaris.smf.value.routing' /> | |
235 | <propval name='protocol' type='astring' value='ipv4' /> | |
236 | </property_group> | |
237 | ||
238 | <!-- Properties in this group are modifiable via routeadm (1M) --> | |
239 | <property_group name='routing' type='application'> | |
240 | <propval name='value_authorization' type='astring' | |
241 | value='solaris.smf.value.routing' /> | |
242 | ||
243 | <!-- Options common to FRRouting daemons --> | |
244 | <!-- The config file to use, if not the default --> | |
245 | <propval name='config_file' type='astring' value=''/> | |
246 | <!-- The vty_port to listen on if not the default. | |
247 | 0 to disable --> | |
248 | <propval name='vty_port' type='integer' value='0' /> | |
249 | <!-- The address to bind the VTY interface to, if not any. --> | |
250 | <propval name='vty_address' type='astring' value='' /> | |
251 | <!-- The user to switch to after startup, if not the default --> | |
252 | <propval name='user' type='astring' value='' /> | |
253 | <!-- The group to switch to, if not the default. | |
254 | If user is specified, this defaults to a group with | |
255 | same name as user --> | |
256 | <propval name='group' type='astring' value='' /> | |
257 | <!-- The pidfile to use, if not the default of | |
258 | @frr_statedir@ --> | |
259 | <propval name='pid_file' type='astring' value='' /> | |
260 | ||
261 | <!-- Options specific to ripd --> | |
262 | <propval name='retain' type='boolean' value='false' /> | |
263 | </property_group> | |
264 | ||
265 | <property_group name='general' type='framework'> | |
266 | <!-- to start stop routing services --> | |
267 | <propval name='action_authorization' type='astring' | |
268 | value='solaris.smf.manage.routing' /> | |
269 | <propval name='value_authorization' type='astring' | |
270 | value='solaris.smf.manage.routing' /> | |
271 | </property_group> | |
272 | ||
273 | <template> | |
274 | <common_name> | |
275 | <loctext xml:lang='C'> | |
276 | FRRouting: ripd, RIPv1/2 IPv4 routing protocol daemon. | |
277 | </loctext> | |
278 | </common_name> | |
279 | <documentation> | |
280 | <manpage title='ripd' section='1M' | |
281 | manpath='@mandir@' /> | |
282 | <doc_link name='frrouting.org' | |
283 | uri='http://www.frrouting.org/' /> | |
284 | </documentation> | |
285 | </template> | |
286 | </instance> | |
287 | <stability value='Unstable' /> | |
288 | </service> | |
289 | ||
290 | <service | |
291 | name='network/routing/ripng' | |
292 | type='service' | |
293 | version='1'> | |
294 | ||
295 | <instance name='frr' enabled='false'> | |
296 | ||
297 | <dependency name='fs' | |
298 | grouping='require_all' | |
299 | restart_on='none' | |
300 | type='service'> | |
301 | <service_fmri | |
302 | value='svc:/system/filesystem/usr:default' /> | |
303 | </dependency> | |
304 | ||
305 | <dependency | |
306 | name='ipv6-forwarding' | |
307 | grouping='optional_all' | |
308 | restart_on='refresh' | |
309 | type='service'> | |
310 | <service_fmri value='svc:/network/ipv6-forwarding' /> | |
311 | </dependency> | |
312 | ||
313 | <!-- do not not run unless routing-setup has run --> | |
314 | <dependency | |
315 | name='network_routing_setup' | |
316 | grouping='require_all' | |
317 | restart_on='refresh' | |
318 | type='service'> | |
319 | <service_fmri value='svc:/network/routing-setup' /> | |
320 | </dependency> | |
321 | ||
322 | <!-- ensure that restart of zebra is propogated to daemon --> | |
323 | <dependency | |
324 | name='zebra' | |
325 | grouping='require_all' | |
326 | restart_on='restart' | |
327 | type='service'> | |
328 | <service_fmri value='svc:/network/routing/zebra:frr' /> | |
329 | </dependency> | |
330 | ||
331 | <exec_method | |
332 | type='method' | |
333 | name='start' | |
334 | exec='/lib/svc/method/frr ripngd' | |
335 | timeout_seconds='60'> | |
336 | <method_context> | |
337 | <method_credential | |
338 | user='root' group='root'/> | |
339 | </method_context> | |
340 | </exec_method> | |
341 | ||
342 | <exec_method | |
343 | type='method' | |
344 | name='stop' | |
345 | exec=':kill' | |
346 | timeout_seconds='60' > | |
347 | </exec_method> | |
348 | ||
349 | <property_group name='startd' | |
350 | type='framework'> | |
351 | <!-- sub-process core dumps shouldn't restart session --> | |
352 | <propval name='ignore_error' | |
353 | type='astring' value='core,signal' /> | |
354 | </property_group> | |
355 | ||
356 | <!-- Properties in this group are used by routeadm (1M) --> | |
357 | <property_group name='routeadm' type='application'> | |
358 | <stability value='Unstable' /> | |
359 | <!-- Identifies service as a routing service --> | |
360 | <propval name='daemon' type='astring' | |
361 | value='@sbindir@/ripngd' /> | |
362 | <propval name='value_authorization' type='astring' | |
363 | value='solaris.smf.value.routing' /> | |
364 | <propval name='protocol' type='astring' value='ipv6'/> | |
365 | </property_group> | |
366 | ||
367 | <!-- Properties in this group are modifiable via routeadm (1M) --> | |
368 | <property_group name='routing' type='application'> | |
369 | <propval name='value_authorization' type='astring' | |
370 | value='solaris.smf.value.routing' /> | |
371 | ||
372 | <!-- Options common to frr daemons --> | |
373 | <!-- The config file to use, if not the default --> | |
374 | <propval name='config_file' type='astring' value=''/> | |
375 | <!-- The vty_port to listen on if not the default. | |
376 | 0 to disable --> | |
377 | <propval name='vty_port' type='integer' value='0' /> | |
378 | <!-- The address to bind the VTY interface to, if not any. --> | |
379 | <propval name='vty_address' type='astring' value='' /> | |
380 | <!-- The user to switch to after startup, if not the default --> | |
381 | <propval name='user' type='astring' value='' /> | |
382 | <!-- The group to switch to, if not the default. | |
383 | If user is specified, this defaults to a group with | |
384 | same name as user --> | |
385 | <propval name='group' type='astring' value='' /> | |
386 | <!-- The pidfile to use, if not the default of | |
387 | @frr_statedir@ --> | |
388 | <propval name='pid_file' type='astring' value='' /> | |
389 | ||
390 | <!-- Options specific to ripngd --> | |
391 | <propval name='retain' type='boolean' value='false' /> | |
392 | </property_group> | |
393 | ||
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 | <propval name='value_authorization' type='astring' | |
399 | value='solaris.smf.manage.routing' /> | |
400 | </property_group> | |
401 | ||
402 | <template> | |
403 | <common_name> | |
404 | <loctext xml:lang='C'> | |
405 | frr: ripngd, RIPng IPv6 routing protocol daemon. | |
406 | </loctext> | |
407 | </common_name> | |
408 | <documentation> | |
409 | <manpage title='ripngd' section='1M' | |
410 | manpath='@mandir@' /> | |
411 | <doc_link name='frrouting.org' | |
412 | uri='http://www.frrouting.org/' /> | |
413 | </documentation> | |
414 | </template> | |
415 | </instance> | |
416 | <stability value='Unstable' /> | |
417 | </service> | |
418 | ||
419 | <service | |
420 | name='network/routing/ospf' | |
421 | type='service' | |
422 | version='1'> | |
423 | ||
424 | <instance name='frr' enabled='false'> | |
425 | ||
426 | <dependency name='fs' | |
427 | grouping='require_all' | |
428 | restart_on='none' | |
429 | type='service'> | |
430 | <service_fmri | |
431 | value='svc:/system/filesystem/usr:default' /> | |
432 | </dependency> | |
433 | ||
434 | <dependency | |
435 | name='ipv4-forwarding' | |
436 | grouping='optional_all' | |
437 | restart_on='refresh' | |
438 | type='service'> | |
439 | <service_fmri value='svc:/network/ipv4-forwarding' /> | |
440 | </dependency> | |
441 | ||
442 | <!-- do not not run unless routing-setup has run --> | |
443 | <dependency | |
444 | name='network_routing_setup' | |
445 | grouping='require_all' | |
446 | restart_on='refresh' | |
447 | type='service'> | |
448 | <service_fmri value='svc:/network/routing-setup' /> | |
449 | </dependency> | |
450 | ||
451 | <!-- ensure that restart of zebra is propogated to daemon --> | |
452 | <dependency | |
453 | name='zebra' | |
454 | grouping='require_all' | |
455 | restart_on='restart' | |
456 | type='service'> | |
457 | <service_fmri value='svc:/network/routing/zebra:frr' /> | |
458 | </dependency> | |
459 | ||
460 | <exec_method | |
461 | type='method' | |
462 | name='start' | |
463 | exec='/lib/svc/method/frr ospfd' | |
464 | timeout_seconds='60'> | |
465 | <method_context> | |
466 | <method_credential | |
467 | user='root' group='root'/> | |
468 | </method_context> | |
469 | </exec_method> | |
470 | ||
471 | <!-- ospfd can take a long time to shutdown, due to graceful | |
472 | shutdown | |
473 | --> | |
474 | <exec_method | |
475 | type='method' | |
476 | name='stop' | |
477 | exec=':kill' | |
478 | timeout_seconds='600'> | |
479 | </exec_method> | |
480 | ||
481 | <property_group name='startd' | |
482 | type='framework'> | |
483 | <!-- sub-process core dumps shouldn't restart session --> | |
484 | <propval name='ignore_error' | |
485 | type='astring' value='core,signal' /> | |
486 | </property_group> | |
487 | ||
488 | <!-- Properties in this group are used by routeadm (1M) --> | |
489 | <property_group name='routeadm' type='application'> | |
490 | <stability value='Unstable' /> | |
491 | <!-- Identifies service as a routing service --> | |
492 | <propval name='daemon' type='astring' | |
493 | value='@sbindir@/ospfd' /> | |
494 | <propval name='legacy-daemon' type='astring' | |
495 | value='/usr/sfw/sbin/ospfdstart' /> | |
496 | <propval name='value_authorization' type='astring' | |
497 | value='solaris.smf.value.routing' /> | |
498 | <propval name='protocol' type='astring' value='ipv4'/> | |
499 | </property_group> | |
500 | ||
501 | <!-- Properties in this group are modifiable via routeadm (1M) --> | |
502 | <property_group name='routing' type='application'> | |
503 | <propval name='value_authorization' type='astring' | |
504 | value='solaris.smf.value.routing' /> | |
505 | ||
506 | <!-- Options common to frr daemons --> | |
507 | <!-- The config file to use, if not the default --> | |
508 | <propval name='config_file' type='astring' value=''/> | |
509 | <!-- The vty_port to listen on if not the default. | |
510 | 0 to disable --> | |
511 | <propval name='vty_port' type='integer' value='0' /> | |
512 | <!-- The address to bind the VTY interface to, if not any. --> | |
513 | <propval name='vty_address' type='astring' value='' /> | |
514 | <!-- The user to switch to after startup, if not the default --> | |
515 | <propval name='user' type='astring' value='' /> | |
516 | <!-- The group to switch to, if not the default. | |
517 | If user is specified, this defaults to a group with | |
518 | same name as user --> | |
519 | <propval name='group' type='astring' value='' /> | |
520 | <!-- The pidfile to use, if not the default of | |
521 | @frr_statedir@ --> | |
522 | <propval name='pid_file' type='astring' value='' /> | |
523 | </property_group> | |
524 | ||
525 | <property_group name='general' type='framework'> | |
526 | <!-- to start stop routing services --> | |
527 | <propval name='action_authorization' type='astring' | |
528 | value='solaris.smf.manage.routing' /> | |
529 | <propval name='value_authorization' type='astring' | |
530 | value='solaris.smf.manage.routing' /> | |
531 | </property_group> | |
532 | ||
533 | <template> | |
534 | <common_name> | |
535 | <loctext xml:lang='C'> | |
536 | frr: ospfd, OSPFv2 IPv4 routing protocol daemon. | |
537 | </loctext> | |
538 | </common_name> | |
539 | <documentation> | |
540 | <manpage title='ospfd' section='1M' | |
541 | manpath='@mandir@' /> | |
542 | <doc_link name='frrouting.org' | |
543 | uri='http://www.frrouting.org/' /> | |
544 | </documentation> | |
545 | </template> | |
546 | </instance> | |
547 | <stability value='Unstable' /> | |
548 | </service> | |
549 | ||
550 | <service | |
551 | name='network/routing/ospf6' | |
552 | type='service' | |
553 | version='1'> | |
554 | ||
555 | <instance name='frr' enabled='false'> | |
556 | ||
557 | <dependency name='fs' | |
558 | grouping='require_all' | |
559 | restart_on='none' | |
560 | type='service'> | |
561 | <service_fmri | |
562 | value='svc:/system/filesystem/usr:default' /> | |
563 | </dependency> | |
564 | ||
565 | <dependency | |
566 | name='ipv6-forwarding' | |
567 | grouping='optional_all' | |
568 | restart_on='refresh' | |
569 | type='service'> | |
570 | <service_fmri value='svc:/network/ipv6-forwarding' /> | |
571 | </dependency> | |
572 | ||
573 | <!-- do not not run unless routing-setup has run --> | |
574 | <dependency | |
575 | name='network_routing_setup' | |
576 | grouping='require_all' | |
577 | restart_on='refresh' | |
578 | type='service'> | |
579 | <service_fmri value='svc:/network/routing-setup' /> | |
580 | </dependency> | |
581 | ||
582 | <!-- ensure that restart of zebra is propogated to daemon --> | |
583 | <dependency | |
584 | name='zebra' | |
585 | grouping='require_all' | |
586 | restart_on='restart' | |
587 | type='service'> | |
588 | <service_fmri value='svc:/network/routing/zebra:frr' /> | |
589 | </dependency> | |
590 | ||
591 | <exec_method | |
592 | type='method' | |
593 | name='start' | |
594 | exec='/lib/svc/method/frr ospf6d' | |
595 | timeout_seconds='60'> | |
596 | <method_context> | |
597 | <method_credential | |
598 | user='root' group='root'/> | |
599 | </method_context> | |
600 | </exec_method> | |
601 | ||
602 | <exec_method | |
603 | type='method' | |
604 | name='stop' | |
605 | exec=':kill' | |
606 | timeout_seconds='60'> | |
607 | </exec_method> | |
608 | ||
609 | <property_group name='startd' | |
610 | type='framework'> | |
611 | <!-- sub-process core dumps shouldn't restart session --> | |
612 | <propval name='ignore_error' | |
613 | type='astring' value='core,signal' /> | |
614 | </property_group> | |
615 | ||
616 | <!-- Properties in this group are used by routeadm (1M) --> | |
617 | <property_group name='routeadm' type='application'> | |
618 | <stability value='Unstable' /> | |
619 | <!-- Identifies service as a routing service --> | |
620 | <propval name='daemon' type='astring' | |
621 | value='@sbindir@/ospf6d' /> | |
622 | <propval name='value_authorization' type='astring' | |
623 | value='solaris.smf.value.routing' /> | |
624 | <propval name='protocol' type='astring' value='ipv6'/> | |
625 | </property_group> | |
626 | ||
627 | <!-- Properties in this group are modifiable via routeadm (1M) --> | |
628 | <property_group name='routing' type='application'> | |
629 | <propval name='value_authorization' type='astring' | |
630 | value='solaris.smf.value.routing' /> | |
631 | ||
632 | <!-- Options common to frr daemons --> | |
633 | <!-- The config file to use, if not the default --> | |
634 | <propval name='config_file' type='astring' value=''/> | |
635 | <!-- The vty_port to listen on if not the default. | |
636 | 0 to disable --> | |
637 | <propval name='vty_port' type='integer' value='0' /> | |
638 | <!-- The address to bind the VTY interface to, if not any. --> | |
639 | <propval name='vty_address' type='astring' value='' /> | |
640 | <!-- The user to switch to after startup, if not the default --> | |
641 | <propval name='user' type='astring' value='' /> | |
642 | <!-- The group to switch to, if not the default. | |
643 | If user is specified, this defaults to a group with | |
644 | same name as user --> | |
645 | <propval name='group' type='astring' value='' /> | |
646 | <!-- The pidfile to use, if not the default of | |
647 | @frr_statedir@ --> | |
648 | <propval name='pid_file' type='astring' value='' /> | |
649 | </property_group> | |
650 | ||
651 | <property_group name='general' type='framework'> | |
652 | <!-- to start stop routing services --> | |
653 | <propval name='action_authorization' type='astring' | |
654 | value='solaris.smf.manage.routing' /> | |
655 | <propval name='value_authorization' type='astring' | |
656 | value='solaris.smf.manage.routing' /> | |
657 | </property_group> | |
658 | ||
659 | <template> | |
660 | <common_name> | |
661 | <loctext xml:lang='C'> | |
662 | frr: ospf6d, OSPFv3 IPv6 routing protocol daemon. | |
663 | </loctext> | |
664 | </common_name> | |
665 | <documentation> | |
666 | <manpage title='ospf6d' section='1M' | |
667 | manpath='@mandir@' /> | |
668 | <doc_link name='frrouting.org' | |
669 | uri='http://www.frrouting.org/' /> | |
670 | </documentation> | |
671 | </template> | |
672 | </instance> | |
673 | <stability value='Unstable' /> | |
674 | </service> | |
675 | ||
676 | ||
677 | <service | |
678 | name='network/routing/bgp' | |
679 | type='service' | |
680 | version='1'> | |
681 | ||
682 | <instance name='frr' enabled='false'> | |
683 | ||
684 | <dependency name='fs' | |
685 | grouping='require_all' | |
686 | restart_on='none' | |
687 | type='service'> | |
688 | <service_fmri | |
689 | value='svc:/system/filesystem/usr:default' /> | |
690 | </dependency> | |
691 | ||
692 | <dependency | |
693 | name='ipv6-forwarding' | |
694 | grouping='optional_all' | |
695 | restart_on='refresh' | |
696 | type='service'> | |
697 | <service_fmri value='svc:/network/ipv6-forwarding' /> | |
698 | </dependency> | |
699 | ||
700 | <dependency | |
701 | name='ipv4-forwarding' | |
702 | grouping='optional_all' | |
703 | restart_on='refresh' | |
704 | type='service'> | |
705 | <service_fmri value='svc:/network/ipv4-forwarding' /> | |
706 | </dependency> | |
707 | ||
708 | <!-- do not not run unless routing-setup has run --> | |
709 | <dependency | |
710 | name='network_routing_setup' | |
711 | grouping='require_all' | |
712 | restart_on='refresh' | |
713 | type='service'> | |
714 | <service_fmri value='svc:/network/routing-setup' /> | |
715 | </dependency> | |
716 | ||
717 | <!-- ensure that restart of zebra is propogated to daemon --> | |
718 | <dependency | |
719 | name='zebra' | |
720 | grouping='require_all' | |
721 | restart_on='restart' | |
722 | type='service'> | |
723 | <service_fmri value='svc:/network/routing/zebra:frr' /> | |
724 | </dependency> | |
725 | ||
726 | <exec_method | |
727 | type='method' | |
728 | name='start' | |
729 | exec='/lib/svc/method/frr bgpd' | |
730 | timeout_seconds='60'> | |
731 | <method_context> | |
732 | <method_credential | |
733 | user='root' group='root'/> | |
734 | </method_context> | |
735 | </exec_method> | |
736 | ||
737 | <exec_method | |
738 | type='method' | |
739 | name='stop' | |
740 | exec=':kill' | |
741 | timeout_seconds='60' > | |
742 | </exec_method> | |
743 | ||
744 | <property_group name='startd' | |
745 | type='framework'> | |
746 | <!-- sub-process core dumps shouldn't restart session --> | |
747 | <propval name='ignore_error' | |
748 | type='astring' value='core,signal' /> | |
749 | </property_group> | |
750 | ||
751 | <!-- Properties in this group are used by routeadm (1M) --> | |
752 | <property_group name='routeadm' type='application'> | |
753 | <stability value='Unstable' /> | |
754 | <!-- Identifies service as a routing service --> | |
755 | <propval name='daemon' type='astring' | |
756 | value='@sbindir@/bgpd' /> | |
757 | <propval name='legacy-daemon' type='astring' | |
758 | value='/usr/sfw/sbin/bgpdstart' /> | |
759 | <propval name='value_authorization' type='astring' | |
760 | value='solaris.smf.value.routing' /> | |
761 | <property name='protocol' type='astring'> | |
762 | <astring_list> | |
763 | <value_node value='ipv4'/> | |
764 | <value_node value='ipv6'/> | |
765 | </astring_list> | |
766 | </property> | |
767 | </property_group> | |
768 | ||
769 | <!-- Properties in this group are modifiable via routeadm (1M) --> | |
770 | <property_group name='routing' type='application'> | |
771 | <propval name='value_authorization' type='astring' | |
772 | value='solaris.smf.value.routing' /> | |
773 | ||
774 | <!-- Options common to frr daemons. --> | |
775 | <!-- The config file to use, if not the default --> | |
776 | <propval name='config_file' type='astring' value=''/> | |
777 | <!-- The vty_port to listen on if not the default. | |
778 | 0 to disable --> | |
779 | <propval name='vty_port' type='integer' value='0' /> | |
780 | <!-- The address to bind the VTY interface to, if not any. --> | |
781 | <propval name='vty_address' type='astring' value='' /> | |
782 | <!-- The user to switch to after startup, if not the default --> | |
783 | <propval name='user' type='astring' value='' /> | |
784 | <!-- The group to switch to, if not the default. | |
785 | If user is specified, this defaults to a group with | |
786 | same name as user --> | |
787 | <propval name='group' type='astring' value='' /> | |
788 | <!-- The pidfile to use, if not the default of | |
789 | @frr_statedir@ --> | |
790 | <propval name='pid_file' type='astring' value='' /> | |
791 | ||
792 | <!-- Options specific to bgpd --> | |
793 | <propval name='retain' type='boolean' value='false' /> | |
794 | <propval name='no_kernel' type='boolean' value='false' /> | |
795 | <propval name='bgp_port' type='astring' value='' /> | |
796 | ||
797 | <!-- | |
798 | If enable_zebra is false, it will not be switched | |
799 | on by the start method. | |
800 | --> | |
801 | <propval name='enable_zebra' type='boolean' value='true' /> | |
802 | </property_group> | |
803 | ||
804 | <property_group name='general' type='framework'> | |
805 | <!-- to start stop routing services --> | |
806 | <propval name='action_authorization' type='astring' | |
807 | value='solaris.smf.manage.routing' /> | |
808 | <propval name='value_authorization' type='astring' | |
809 | value='solaris.smf.manage.routing' /> | |
810 | </property_group> | |
811 | ||
812 | <template> | |
813 | <common_name> | |
814 | <loctext xml:lang='C'> | |
815 | frr: bgpd, BGP routing protocol daemon. | |
816 | </loctext> | |
817 | </common_name> | |
818 | <documentation> | |
819 | <manpage title='bgpd' section='1M' | |
820 | manpath='@mandir@' /> | |
821 | <doc_link name='frrouting.org' | |
822 | uri='http://www.frrouting.org/' /> | |
823 | </documentation> | |
824 | </template> | |
825 | </instance> | |
826 | <stability value='Unstable' /> | |
827 | </service> | |
828 | </service_bundle> |