#include <dce/dce.h>
#include <dce/dbif.h>
void dce_db_store_by_uuid(
dce_db_handle_t handle,
uuid_t *key,
void *data,
error_status_t *status);
The dce_db_store_by_uuid() routine stores the data structure pointed to by data into the backing store. The conversion function that was specified in the call to dce_db_open() serializes the structure so that it can be written to disk.
This routine is specialized for storage into backing stores that are indexed by UUID, as selected by the db_c_index_by_uuid bit in the flags parameter to dce_db_open() when the backing store was created.
If the key value is the same as a key already stored, the new data replaces the previously stored data associated with that key.
Because the dce_db_store_by_uuid() routine uses the encoding services, and they in turn use rpc_sm_allocate(), all programs that call dce_db_store_by_uuid() outside of a server operation (for instance, if a server does some backing store initialization, or in a standalone program) must call rpc_sm_enable_allocate() first. Indeed, every thread that calls dce_db_store_by_uuid() must do rpc_sm_enable_allocate(), but in the server side of an RPC, this is already done.
Functions: dce_db_open(3dce), dce_db_store(3dce), dce_db_store_by_name(3dce).