1 <?xml version="1.0"?>
   2 <!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
   3 <!--
   4  Copyright 2012 Joshua M. Clulow <josh@sysmgr.org>
   5 
   6  CDDL HEADER START
   7 
   8  The contents of this file are subject to the terms of the
   9  Common Development and Distribution License (the "License").
  10  You may not use this file except in compliance with the License.
  11 
  12  You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
  13  or http://www.opensolaris.org/os/licensing.
  14  See the License for the specific language governing permissions
  15  and limitations under the License.
  16 
  17  When distributing Covered Code, include this CDDL HEADER in each
  18  file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  19  If applicable, add the following below this CDDL HEADER, with the
  20  fields enclosed by brackets "[]" replaced with your own identifying
  21  information: Portions Copyright [yyyy] [name of copyright owner]
  22 
  23  CDDL HEADER END
  24 
  25         NOTE:  This service manifest is not editable; its contents will
  26         be overwritten by package or patch operations, including
  27         operating system upgrade.  Make customizations in a different
  28         file.
  29 -->
  30 
  31 <service_bundle type='manifest' name='crypto-ca-certificates:certsdir'>
  32 
  33 <service
  34         name='system/certsdir'
  35         type='service'
  36         version='1'>
  37 
  38         <create_default_instance enabled='true' />
  39 
  40         <single_instance />
  41 
  42         <dependency
  43                 name='filesystem-minimal'
  44                 type='service'
  45                 grouping='require_all'
  46                 restart_on='none'>
  47                 <service_fmri value='svc:/system/filesystem/minimal' />
  48         </dependency>
  49 
  50         <exec_method
  51                 type='method'
  52                 name='start'
  53                 exec='/usr/lib/certsdir'
  54                 timeout_seconds='60' />
  55 
  56         <exec_method
  57                 type='method'
  58                 name='stop'
  59                 exec=':true'
  60                 timeout_seconds='0' />
  61 
  62         <exec_method
  63                 type='method'
  64                 name='refresh'
  65                 exec='/usr/lib/certsdir'
  66                 timeout_seconds='60' />
  67 
  68         <property_group name='startd' type='framework'>
  69                 <propval name='duration' type='astring' value='transient' />
  70         </property_group>
  71 
  72         <property_group name='config' type='application'>
  73                 <propval name='verbose' type='boolean' value='false' />
  74                 <!-- remove symlinks from the link directory that
  75                      point to non-existent files: -->
  76                 <propval name='remove_dangling' type='boolean' value='true' />
  77                 <!-- remove symlinks from the link directory that
  78                      point to files from somewhere outside the CA file directory -->
  79                 <propval name='remove_unknown' type='boolean' value='false' />
  80                 <!-- create symlinks to files from the CA file directory that
  81                      are missing from the link directory -->
  82                 <propval name='create_missing' type='boolean' value='true' />
  83                 <!-- recreate symlinks for files from the CA file directory that
  84                      are linked with an incorrect hash in the link directory -->
  85                 <propval name='correct_wrong' type='boolean' value='true' />
  86                 <!-- the directory with CA certificate files -->
  87                 <propval name='certs_file_dir' type='astring' value='/etc/certs/CA' />
  88                 <!-- the directory with OpenSSL certificate hash symlinks -->
  89                 <propval name='certs_link_dir' type='astring' value='/etc/openssl/certs' />
  90                 <!-- the OpenSSL binary to use -->
  91                 <propval name='openssl' type='astring' value='/usr/bin/openssl' />
  92         </property_group>
  93 
  94         <stability value='Unstable' />
  95 
  96         <template>
  97                 <common_name>
  98                         <loctext xml:lang='C'>
  99 certsdir: OpenSSL certificates directory symlink populator
 100                         </loctext>
 101                 </common_name>
 102         </template>
 103 </service>
 104 
 105 </service_bundle>