src/server/daemon/vfs.c

changeset 59
ab25c0a231d0
parent 58
66c22e54aa90
child 63
66442f81f823
--- a/src/server/daemon/vfs.c	Tue Mar 19 17:38:32 2013 +0100
+++ b/src/server/daemon/vfs.c	Mon May 06 13:44:27 2013 +0200
@@ -32,8 +32,11 @@
 #include <sys/types.h>
 
 #include "../util/pool.h"
+#include "../ucx/map.h"
 #include "vfs.h"
 
+static UcxMap *vfs_map;
+
 static VFS_IO sys_file_io = {
     sys_file_read,
     sys_file_write,
@@ -45,6 +48,21 @@
     sys_dir_close
 };
 
+int vfs_init() {
+    vfs_map = ucx_map_new(16);
+    if(!vfs_map) {
+        return -1;
+    }
+    return 0;
+}
+
+void vfs_add(char *name, VFS *vfs) {
+    if(!vfs_map) {
+        vfs_init();
+    }
+    ucx_map_cstr_put(vfs_map, name, vfs);
+}
+
 VFSContext* vfs_request_context(Session *sn, Request *rq) {
     VFSContext *ctx = pool_malloc(sn->pool, sizeof(VFSContext));
     ctx->sn = sn;

mercurial