I'm submitting this as a Closed-Approved-Automatic case on behalf of 
Antonello Cruz.  It has been reviewed by the SMF community and I believe 
constitutes an obvious extension to an existing piece of architecture.  As 
always, please let me know if you disagree and wish for me to promote to a 
fasttrack.

It requests patch binding, though there are no plans to backport the work.

liane

---
1. Introduction
     1.1. Project/Component Working Name:
          Allow Property Modification in SMF profiles
     1.2. Name of Document Author/Supplier:
          Author: Antonello Cruz
     1.3  Date of This Document:
          26 June, 2009

3. Interfaces

     New svccfg apply option:

     -n          Committed


4. Technical Description

Summary
=======


      The Service Management Facility (SMF) [1] doesn't provide
      administrators with a way to apply customization to existing
      services during deployment.  /var/svc/profile/site.xml is available
      to site administrators today to customize only the enabled
      property.  We intend to extend the profile syntax to allow
      customization of arbitrary  properties.

      An example on how this project can facilitate site customization
      deployment is the Secure By Default project [2].  In the SBD
      project, some services should be enabled in the both of the modes
      represented by generic_open.xml and generic_limited_net.xml
      profiles, but with different service-specific behavior.  Although
      the behaviors can be controlled by SCF properties, modifying them
      had to be hard-coded into the netservices(1M) command.  Specifying
      values for these properties in the generic_*.xml profiles would
      simplify the netservices command.

      Properties specified for services or instances which are not
      available at profile application time will continue to be ignored.
      Services and instances modified by the profile will be refreshed.

      Profiles behavior during upgrade will not change.

      This project extends the svccfg apply command to permit profile
      files to specify values for arbitrary properties on services and
      instances. This project requests a patch release binding, but we
      have no current plan to backport it.


References
==========

   [1] PSARC 2002/547 Greenline

   [2] PSARC 2004/368 Secure By Default, Phase 1
       http://arc.opensolaris.org/caselog/PSARC/2004/368/

Manpages diffs
==============

     smf(5)

--- smf.man5.original   Tue Jun 16 11:24:51 2009
+++ smf.man5    Fri Jun 19 16:32:22 2009
@@ -309,7 +309,10 @@
       profiles   Files that contain a set of  service  instances
                  and  values  for  the  enabled  property  (type
                  boolean in the general property group) on  each
-                 instance.
+                  instance.  It can also contain configuration
+                  values for properties in services and
+                  instances.  Template elements cannot be defined
+                  in a profile.

       Service bundles can be imported or       exported from  a  reposi-
       tory using       the svccfg(1M) command. See service_bundle(4) for


     svccfg(1M)

--- svccfg.man1m.original       Tue Jun 16 10:47:31 2009
+++ svccfg.man1m        Thu Jun 25 10:33:32 2009
@@ -101,16 +101,25 @@
             Turns off verbose mode.

    Service Profile Subcommands
-     apply file
+     apply [-n] file

-        If file is a service  profile,  then  service  instances
-        specified  within  the  file  are  enabled  or  disabled
-        according to it. See smf(5) for a description of service
-        profiles. This command requires privileges to modify the
-        "general/enabled" property of the service instances. See
-        smf_security(5)  for  the  privileges required to modify
-        properties. If file is not a service profile,  the  sub-
-        command fails.
+         If a file is a service profile, properties, including
+         general/enabled, which are specified in the file are
+         modified in the SMF repository.  Non-existing properties
+         and property groups will be created.  The type of
+         pre-existing property groups will not be changed by the
+         profile.  Existing properties can have their type
+         changed by the profile.  Non-existing services and
+         instances are ignored.  Services and instances modified
+         by the profile will be refreshed.  If -n is used, the
+         profile is processed and no changes are applied to the
+         SMF repository.  Any syntax error found will be reported
+         on stderr and an exit code of 1 will be returned.  See
+         smf(5) for a description of service profiles. This
+         command requires privileges to modify properties in the
+         service and instance.  See smf_security(5) for  the
+         privileges required to modify properties. If file is not
+         a service profile, the subcommand fails.

       extract [>       file]


Reply via email to