]> git.datanom.net - omvzfs.git/blobdiff - gui/rpc/zfs.inc
More problems with mountpoints.
[omvzfs.git] / gui / rpc / zfs.inc
index 3bc3ec117d4fca266e5b056add8f5eb38dfc8aff..beaefa49e3e6b21921ca3bbbdd7f9ddd4d581d33 100644 (file)
@@ -59,6 +59,10 @@ class OMVRpcServiceZFS extends OMVRpcServiceAbstract {
                if ($params['force']) {
                        $opts .= "-f ";
                }
+               if (strlen($params['mountpoint']) > 0) {
+                       $opts .= "-m " . $params['mountpoint'] . " ";
+               }
+
                $disks = preg_split("/[,;]/", $params['devices']);
                $vdev = new OMVModuleZFSVdev($params['name'], $pooltype, $disks);
                $pool = new OMVModuleZFSZpool($vdev, $opts);
@@ -255,15 +259,13 @@ class OMVRpcServiceZFS extends OMVRpcServiceAbstract {
                $this->validateMethodContext($context, array("role" => OMV_ROLE_ADMINISTRATOR));
 
                //Get the UUID of the Pool
-               $pooluuid = OMVModuleZFSUtil::getUUIDbyName($params['name']);
-               preg_match('/^([A-Za-z0-9]+)\/?.*$/', $params['name'], $result);
-               $poolname = $result[1];
-               unset($result);
+               $poolname = OMVModuleZFSUtil::getPoolname($params['name']);
+               $pooluuid = OMVModuleZFSUtil::getUUIDbyName($poolname);
 
                //Get the mntent object and fetch it's uuid.
                $xpath = "//system/fstab/mntent[fsname=" . $pooluuid . "]";
-               $object = $xmlConfig->get($xpath);
-               $mntentref = $object['uuid'];
+               $mountpoint = $xmlConfig->get($xpath);
+               $mntentref = $mountpoint['uuid'];
 
                // Prepare the configuration object. Use the name of the shared
                // folder as the relative directory name of the share.
This page took 0.029177 seconds and 5 git commands to generate.