<?xml version="1.0"?>
<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
<!--
    $Id: esoobserver-tcp.xml 315 2005-02-11 09:11:57Z martin $

    Service manifest for the esoobserver service.

-->

<service_bundle type='manifest' name='easysoft:esoobserver'>

<service
	name='network/esoobserver/tcp'
	type='service'
	version='1'>

	<restarter>
		<service_fmri value='svc:/network/inetd:default' />
	</restarter>

	<!--
	    Set a timeout of -1 to signify to inetd that we don't want to
	    timeout this service, since the forked process is the one that
	    does the service's work. This is the case for most/all legacy
	    inetd services; for services written to take advantage of SMF
	    capabilities, the start method should fork off a process to
	    handle the request and return a success code.
	-->
	<exec_method
		type='method'
		name='inetd_start'
		exec='/bin/sh /usr/local/easysoft/oob/server/server'
		timeout_seconds='-1'>
		<method_context>
			<method_credential user='root' group='root' />
		</method_context>
		<propval name='arg0' type='astring'
		    value='/bin/sh' />
	</exec_method>

	<!--
	    Use inetd's built-in kill support to disable services.
	-->
	<exec_method
		type='method'
		name='inetd_disable'
		exec=':kill'
		timeout_seconds='-1'>
	</exec_method>

	<property_group name='inetd' type='framework'>
		<propval name='name' type='astring' value='esoobserver' />
		<propval name='endpoint_type' type='astring' value='stream' />
		<propval name='wait' type='boolean' value='false' />
		<propval name='isrpc' type='boolean' value='false' />
	</property_group>

	<instance name='default' enabled='true'>
		<dependency
		    name='network'
		    grouping='require_any'
		    restart_on='error'
		    type='service'>
		    <service_fmri
			value='svc:/network/loopback:default' />
		    <service_fmri
			value='svc:/network/physical:default' />
		</dependency>
		<property_group name='inetd' type='framework'>
			<propval name='proto' type='astring'
			    value='tcp' />
		</property_group>
	</instance>

	<stability value='External' />

	<template>
		<common_name>
			<loctext xml:lang='C'>
esoobserver is the Easysoft OOB Server process providing remote access
to ODBC drivers.
			</loctext>
		</common_name>
	</template>
</service>

</service_bundle>
