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 Quagga.
5
6	Quagga is free software; you can redistribute it and/or modify it
7	under the terms of the GNU General Public License as published by the
8	Free Software Foundation; either version 2, or (at your option) any
9	later version.
10
11	Quagga is distributed in the hope that it will be useful, but 
12	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 Quagga; see the file COPYING.  If not, write to the Free
18	Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
19	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	"@(#)quagga.xml	1.0	05/03/15 SMI"
27-->
28
29<service_bundle type='manifest' name='SUNWquagga-daemons:quagga'>
30
31<service
32	name='network/routing/zebra'
33	type='service'
34	version='1'>
35	
36	<single_instance />
37	<instance name='quagga' 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/quagga 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 Quagga daemons
111		     Property names are equivalent to the long
112		     option name, consult Quagga 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		     @quagga_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			Quagga: 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='quagga.net' 
152				uri='http://www.quagga.net/' />
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='quagga' 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:quagga' />
198	</dependency>
199
200	<exec_method
201		type='method'
202		name='start'
203		exec='/lib/svc/method/quagga 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 Quagga 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		     @quagga_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			Quagga: 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='quagga.net' 
283				uri='http://www.quagga.net/' />
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='quagga' 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:quagga' />
329	</dependency>
330
331	<exec_method
332		type='method'
333		name='start'
334		exec='/lib/svc/method/quagga 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 Quagga 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		     @quagga_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			Quagga: 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='quagga.net' 
412				uri='http://www.quagga.net/' />
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='quagga' 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:quagga' />
458	</dependency>
459
460	<exec_method
461		type='method'
462		name='start'
463		exec='/lib/svc/method/quagga 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 Quagga 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		     @quagga_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			Quagga: 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='quagga.net' 
543				uri='http://www.quagga.net/' />
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='quagga' 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:quagga' />
589	</dependency>
590
591	<exec_method
592		type='method'
593		name='start'
594		exec='/lib/svc/method/quagga 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 Quagga 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		     @quagga_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 			Quagga: 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='quagga.net' 
669				uri='http://www.quagga.net/' />
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='quagga' 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:quagga' />
724	</dependency>
725
726	<exec_method
727		type='method'
728		name='start'
729		exec='/lib/svc/method/quagga 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 Quagga 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		     @quagga_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			Quagga: 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='quagga.net' 
822				uri='http://www.quagga.net/' />
823		</documentation>
824	</template>
825	</instance>
826	<stability value='Unstable' />
827</service>
828</service_bundle>
829