void register_rpc();
BlueSkyFS *fs;
+BlueSkyStore *store;
int main(int argc, char *argv[])
{
- g_thread_init(NULL);
+ int i;
+ bluesky_init();
register_rpc();
+ store = bluesky_store_new("file");
+ fs = bluesky_init_fs("export", store);
+
BlueSkyInode *root;
- root = bluesky_new_inode(BLUESKY_ROOT_INUM, BLUESKY_DIRECTORY);
- root->nlink = 1;
- root->mode = 0755;
- bluesky_insert_inode(fs, root);
-
- svc_run ();
- fprintf (stderr, "%s", "svc_run returned");
- exit (1);
- /* NOTREACHED */
+ root = bluesky_get_inode(fs, BLUESKY_ROOT_INUM);
+ if (root == NULL) {
+ printf("Initializing fresh root inode...\n");
+ root = bluesky_new_inode(BLUESKY_ROOT_INUM, fs, BLUESKY_DIRECTORY);
+ root->nlink = 1;
+ root->mode = 0755;
+ bluesky_insert_inode(fs, root);
+ }
+
+ svc_run();
+ fprintf(stderr, "%s", "svc_run returned");
+ exit(1);
}