static void manual_node(const char *name, const char *child)
{
struct node *node;
- struct xs_permissions perms = { .id = 0, .perms = XS_PERM_NONE };
+ struct xs_permissions perms = { .id = dom0_domid,
+ .perms = XS_PERM_NONE };
node = talloc_zero(NULL, struct node);
if (!node)
}
}
-static void setup_structure(void)
+void setup_structure(void)
{
char *tdbname;
tdbname = talloc_strdup(talloc_autofree_context(), xs_daemon_tdb());
manual_node("/", "tool");
manual_node("/tool", "xenstored");
manual_node("/tool/xenstored", NULL);
+ domain_entry_fix(dom0_domid, 3, true);
check_store();
}
init_pipe(reopen_log_pipe);
- /* Setup the database */
- setup_structure();
-
/* Listen to hypervisor. */
if (!no_domain_init)
domain_init();
struct node *read_node(struct connection *conn, const void *ctx,
const char *name);
+void setup_structure(void);
struct connection *new_connection(connwritefn_t *write, connreadfn_t *read);
void check_store(void);
void corrupt(struct connection *conn, const char *fmt, ...);