diff --git a/src/core/store.c b/src/core/store.c
index 92f3e510b9bccd6c57076bfbbf920c09c9754fbf..a5f712ef72729636b1a4f9a3606bfc9b44b0a15a 100644 (file)
--- a/src/core/store.c
+++ b/src/core/store.c
*/
int
-sdb_store_host(const sdb_host_t *host)
+sdb_store_host(const char *name, sdb_time_t last_update)
{
- char *cname;
-
- sdb_time_t last_update;
sdb_host_t *old;
+ char *cname;
int status = 0;
- if ((! host) || (! SDB_CONST_OBJ(host)->name))
+ if (! name)
return -1;
- cname = sdb_plugin_cname(strdup(SDB_CONST_OBJ(host)->name));
+ cname = sdb_plugin_cname(strdup(name));
if (! cname) {
sdb_log(SDB_LOG_ERR, "store: strdup failed");
return -1;
}
- last_update = host->_last_update;
+ last_update = last_update;
if (last_update <= 0)
last_update = sdb_gettime();
}
}
else {
- sdb_host_t *new = SDB_HOST(sdb_object_clone(SDB_CONST_OBJ(host)));
+ sdb_host_t *new = SDB_HOST(sdb_object_create(name, sdb_host_type));
if (! new) {
char errbuf[1024];
sdb_log(SDB_LOG_ERR, "store: Failed to clone host object: %s",