vold2: Get mounting/unmounting/formatting/sharing working

Signed-off-by: San Mehat <san@google.com>
diff --git a/main.cpp b/main.cpp
index 1485a20..3f25ab8 100644
--- a/main.cpp
+++ b/main.cpp
@@ -42,7 +42,9 @@
     CommandListener *cl;
     NetlinkManager *nm;
 
-    LOGI("Vold 2.0 firing up");
+    LOGI("Vold 2.0 (the revenge) firing up");
+
+    mkdir("/dev/block/vold", 0755);
 
     /* Create our singleton managers */
     if (!(vm = VolumeManager::Instance())) {
@@ -55,6 +57,7 @@
         exit(1);
     };
 
+
     cl = new CommandListener();
     vm->setBroadcaster((SocketListener *) cl);
     nm->setBroadcaster((SocketListener *) cl);
@@ -183,7 +186,11 @@
                 goto out_syntax;
             }
 
-            dv = new DirectVolume(label, mount_point, atoi(part));
+            if (!strcmp(part, "auto")) {
+                dv = new DirectVolume(vm, label, mount_point, -1);
+            } else {
+                dv = new DirectVolume(vm, label, mount_point, atoi(part));
+            }
 
             while((sysfs_path = strsep(&next, " \t"))) {
                 if (dv->addPath(sysfs_path)) {