File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / quagga / solaris / quagga.xml.in
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Wed Nov 2 10:09:12 2016 UTC (8 years ago) by misho
Branches: quagga, MAIN
CVS tags: v1_0_20160315, HEAD
quagga 1.0.20160315

    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>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>