| ## dced_server_create(3dce) Creates a DCE server's configuration data for the host's dced Synopsis #include <dce/dced.h> void dced_server_create( dced_binding_handle_t dced_bh, server_t *conf_data, error_status_t *status); Parameters Input dced_bh Specifies the dced binding handle for the srvrconf service on a specific host. Input/Output conf_data Specifies the configuration data for the server. The dced_intro(3dce) reference page describes the server_t structure. Output status Returns the status code from this routine. This status code indicates whether the routine completed successfully or, if not, why not. Description The dced_server_create( ) routine creates a server's configuration data. This routine is used by management installation applications to remotely (or locally) establish the data used to control how a DCE server starts. However, it does not create the program or start it. Since this activity is typically part of a server's installation, you can also use dcecp server create operation. Management applications use the dced_object_read( ) routine to read the configuration data. Prior to calling dced_server_create( ), 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 shows how to fill in some of the fields of a server_t structure and then create the configuration in dced. dced_binding_handle_t dced_bh; server_t conf; error_status_t status; dced_binding_create("srvrconf@hosts/katharine", dced_c_binding_syntax_default, &dced_bh, &status); /* setup a server_t structure */ uuid_create(&conf.id, &status); conf.name = (dced_string_t)"application"; conf.entryname = (dced_string_t)"/.:/development/new_app"; conf.services.count = 1; /* service_t structure(s) */ conf.services.list = malloc(conf.services.count * sizeof(service_t)); rpc_if_inq_id(application_v1_0_c_ifspec, &(conf.services.list[0].ifspec), &status); conf.services.list[0].ifname = (dced_string_t)"application"; conf.services.list[0].annotation = (dced_string_t)"A new application"; conf.services.list[0].flags = 0; /* server_fixedattr_t structure */ conf.fixed.startupflags = server_c_startup_explicit | server_c_startup_on_failure; conf.fixed.flags = 0; conf.fixed.program = (dced_string_t)"/usr/users/bin/new_app"; dced_server_create(dced_bh, &conf, &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_bad_index_type db_s_iter_not_allowed db_s_key_not_found db_s_readonly db_s_store_failed dced_s_already_exists dced_s_bad_binding dced_s_name_missing sec_acl_invalid_permission Related Information Routines: dced_object_read(3dce) dced_binding_create(3dce) dced_binding_from_rpc_binding(3dce) dcecp objects: server(8dce) Book: OSF DCE Application Development Guide - Core Components ##