Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ dced_server_start(3dce) — DCE 3.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

dced_server_start(3dce)  —  Subroutines

Name

dced_server_start - Starts a DCE-configured server on a specified host

Synopsis

#include <dce/dced.h> void dced_server_start(
dced_binding_handle_t dced_bh,
uuid_t ∗conf_uuid,
dced_attr_list_t ∗attributes,
uuid_t ∗exec_uuid,
error_status_t ∗status);

Parameters

Input

dced_bhSpecifies the dced binding handle for the srvrconf service on a specific host. 

conf_uuidSpecifies the UUID that dced uses to identify the server to start.  If the value input is that of a server that is already running, dced starts a new instance. 

attributesSpecifies the configuration attributes to use to start the server.  If the value is NULL, the default configuration defined in dced is used. 

Input/Output

exec_uuidSpecifies a new UUID for dced to use to identify the running server.  If a nil UUID is input, a new UUID is created and returned.  If the value input is that of a server that is already running, dced starts a new instance and returns a new value. 

Output

statusReturns the status code from this routine.  This status code indicates whether the routine completed successfully or, if not, why not. 

Description

The dced_server_start() routine starts DCE-configured servers on a specific remote host (or the local host).  The configuration data is stored in an object in the srvrconf service of dced.  When the server starts, dced uses the server configuration object and creates a server execution object in the srvrexec service.  A server execution object consists of data that describes the executing server. 

Management applications create the configuration data by using the dced_server_create() and the dced_object_read() routine to read the configuration or execution data. 

Prior to calling dced_server_start(), the application must have established a valid dced binding handle to the srvrconf service by calling either dced_binding_create() or dced_binding_from_rpc_binding(). 

Examples

The following example starts a configured server using a nil UUID as input for the executing server. 

dced_binding_handle_t conf_bh;
dced_string_t         server_name;
uuid_t                srvrconf_id, srvrexec_id;
error_status_t        status;
 dced_binding_create("srvrconf@hosts/patrick",
                    dced_c_binding_syntax_default,
                    &conf_bh,
                    &status);
dced_inq_id(conf_bh, server_name, &srvrconf_id, &status);
uuid_create_nil(&srvrexec_id, &status);
dced_server_start(conf_bh, &srvrconf_id, NULL, &srvrexec_id, &status);
 .
 .
 .

Errors

The following describes a partial list of errors that might be returned.  Refer to the OSF DCE Problem Determination Guide for complete descriptions of all error messages. 

error_status_ok

db_s_bad_header_type

db_s_iter_not_allowed

db_s_key_not_found

db_s_readonly

db_s_store_failed

dced_s_bad_binding

dced_s_no_support

dced_s_not_found

dced_s_sc_cant_fork

dced_s_sc_invalid_attr_type

dced_s_sc_open_file_failed

sec_acl_invalid_permission

uuid_s_bad_version

Related Information

Commands: server(8dce). 

Functions: dced_binding_create(3dce), dced_binding_from_rpc_binding(3dce), dced_server_create(3dce), dced_server_stop(3dce). 

Books: OSF DCE Application Development Guide. 

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026