scf_service_create man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

scf_service_creServiceFConfiguration Facility Library scf_service_create(3SCF)

NAME
       scf_service_create,  scf_service_handle,	 scf_service_destroy, scf_ser‐
       vice_get_parent,	     scf_service_get_name,	scf_scope_get_service,
       scf_scope_add_service,  scf_service_delete - create and manipulate ser‐
       vice handles and services in the Service Configuration Facility

SYNOPSIS
       cc [ flag... ] file... -lscf [ library... ]
       #include <libscf.h>

       scf_service_t *scf_service_create(scf_handle_t *handle);

       scf_handle_t *scf_service_handle(scf_service_t *svc);

       void scf_service_destroy(scf_service_t *svc);

       int scf_service_get_parent(scf_service_t *svc, scf_scope_t *sc);

       ssize_t	scf_service_get_name(const  scf_service_t  *svc,  char	 *buf,
       size_t size);

       int  scf_scope_get_service(const	 scf_scope_t  *sc,  const  char *name,
       scf_service_t *svc);

       int scf_scope_add_service(const	scf_scope_t  *sc,  const  char	*name,
       scf_service_t *svc);

       int scf_service_delete(scf_service_t *svc);

DESCRIPTION
       Services	 form  the  middle layer of the Service Configuration Facility
       repository tree. Services are children of a scope  (see	scf_scope_cre‐
       ate(3SCF)) and have three sets of children:

       Property groups	       These  hold configuration information shared by
			       all  of	the  instances	of  the	 service.  See
			       scf_pg_create(3SCF),		 scf_iter_ser‐
			       vice_pgs(3SCF),	      and	 scf_iter_ser‐
			       vice_pgs_typed(3SCF).

       Instances	       A  particular instantiation of the service. See
			       scf_instance_create(3SCF).

       A service groups one or more related instances and  provides  a	shared
       configuration for them.

       An  scf_service_t  is an opaque handle that can be set to a single ser‐
       vice at any given time. The scf_service_create() function allocates and
       initializes   a	 new  scf_service_t  bound  to	handle.	 The  scf_ser‐
       vice_destroy() function destroys and frees svc.

       The scf_service_handle() function retrieves the handle to which svc  is
       bound.

       The  scf_service_get_parent() function sets sc to the scope that is the
       parent of svc.

       The scf_service_get_name() function retrieves the name of  the  service
       to which svc is set.

       The  scf_scope_get_service() function sets svc to the service specified
       by name in the scope specified by sc.

       The scf_scope_add_service() function sets svc to a new  service	speci‐
       fied by name in the scope specified by sc.

       The  scf_service_delete()  function deletes the service to which svc is
       set, as well as all of its children.

RETURN VALUES
       Upon successful completion, scf_service_create() returns a new scf_ser‐
       vice_t. Otherwise, it returns NULL.

       Upon  successful completion, scf_service_handle() returns the handle to
       which svc is bound. Otherwise, it returns NULL.

       Upon successful completion, scf_service_get_name() returns  the	length
       of  the string written, not including the terminating null byte. Other‐
       wise, it returns -1.

       Upon	  successful	   completion,	     scf_service_get_parent(),
       scf_scope_get_service(),	   scf_scope_add_service(),    and    scf_ser‐
       vice_delete() return 0. Otherwise, it returns -1.

ERRORS
       The scf_service_create() function will fail if:

       SCF_ERROR_INVALID_ARGUMENT

	   The value of the handle argument is NULL.

       SCF_ERROR_NO_MEMORY

	   There is not enough memory to allocate an scf_service_t.

       SCF_ERROR_NO_RESOURCES

	   The server does not have adequate resources for a new scope handle.

       The scf_service_handle() function will fail if:

       SCF_ERROR_HANDLE_DESTROYED

	   The handle associated with svc has been destroyed.

       The  scf_service_get_name(),  scf_service_get_parent(),	and   scf_ser‐
       vice_delete() functions will fail if:

       SCF_ERROR_DELETED

	   The service has been deleted by someone else.

       SCF_ERROR_NOT_SET

	   The service is not set.

       SCF_ERROR_NOT_BOUND

	   The handle is not bound.

       SCF_ERROR_CONNECTION_BROKEN

	   The connection to the repository was lost.

       The scf_service_delete() function will fail if:

       SCF_ERROR_EXISTS

	   The service contains instances.

       The scf_scope_add_service() function will fail if:

       SCF_ERROR_EXISTS

	   A {service,instance,property group} named name already exists.

       SCF_ERROR_DELETED

	   The parent entity has been deleted.

       The  scf_scope_add_service() and scf_scope_get_service() functions will
       fail if:

       SCF_ERROR_NO_RESOURCES

	   The server does not have the resources to complete the request.

       SCF_ERROR_NOT_SET

	   The scope is not set.

       SCF_ERROR_NOT_FOUND

	   The service specified by name was not found.

       SCF_ERROR_INVALID_ARGUMENT

	   The value of the name argument is not a valid service name.

       SCF_ERROR_HANDLE_MISMATCH

	   The scope and service are not derived from the same handle.

       SCF_ERROR_NOT_BOUND

	   The handle is not bound.

       SCF_ERROR_CONNECTION_BROKEN

	   The connection to the repository was lost.

       The scf_scope_add_service()  and	 scf_service_delete()  functions  will
       fail if:

       SCF_ERROR_PERMISSION_DENIED

	   The	user does not have sufficient privileges to create or delete a
	   service.

       SCF_ERROR_BACKEND_READONLY

	   The repository backend is read-only.

       SCF_ERROR_BACKEND_ACCESS

	   The repository backend refused the modification.

       The scf_error(3SCF) function can be used to retrieve the error value.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Interface Stability	     │Evolving			   │
       ├─────────────────────────────┼─────────────────────────────┤
       │MT-Level		     │Safe			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       libscf(3LIB),	  scf_error(3SCF),	 scf_handle_decode_fmri(3SCF),
       scf_iter_service_pgs(3SCF),	     scf_iter_service_pgs_typed(3SCF),
       scf_instance_create(3SCF), scf_pg_create(3SCF), scf_scope_create(3SCF),
       scf_service_to_fmri(3SCF), attributes(5), smf(5)

SunOS 5.10			  21 Aug 2005	      scf_service_create(3SCF)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net