static void
virStorageBackendFileSystemMountNFSArgs(virCommandPtr cmd,
const char *src,
- virStoragePoolDefPtr def)
+ virStoragePoolDefPtr def,
+ const char *nfsVers)
{
virCommandAddArgList(cmd, src, def->target.path, NULL);
- virStorageBackendFileSystemMountAddOptions(cmd, NULL);
+ virStorageBackendFileSystemMountAddOptions(cmd, nfsVers);
}
static void
virStorageBackendFileSystemMountDefaultArgs(virCommandPtr cmd,
const char *src,
- virStoragePoolDefPtr def)
+ virStoragePoolDefPtr def,
+ const char *nfsVers)
{
const char *fmt;
else
fmt = virStoragePoolFormatFileSystemNetTypeToString(def->source.format);
virCommandAddArgList(cmd, "-t", fmt, src, def->target.path, NULL);
- virStorageBackendFileSystemMountAddOptions(cmd, NULL);
+ virStorageBackendFileSystemMountAddOptions(cmd, nfsVers);
}
bool cifsfs = (def->type == VIR_STORAGE_POOL_NETFS &&
def->source.format == VIR_STORAGE_POOL_NETFS_CIFS);
virCommandPtr cmd = NULL;
+ VIR_AUTOFREE(char *) nfsVers = NULL;
+
+ if (def->type == VIR_STORAGE_POOL_NETFS && def->source.protocolVer > 0 &&
+ virAsprintf(&nfsVers, "nfsvers=%u", def->source.protocolVer) < 0)
+ return NULL;
cmd = virCommandNew(cmdstr);
if (netauto)
- virStorageBackendFileSystemMountNFSArgs(cmd, src, def);
+ virStorageBackendFileSystemMountNFSArgs(cmd, src, def, nfsVers);
else if (glusterfs)
virStorageBackendFileSystemMountGlusterArgs(cmd, src, def);
else if (cifsfs)
virStorageBackendFileSystemMountCIFSArgs(cmd, src, def);
else
- virStorageBackendFileSystemMountDefaultArgs(cmd, src, def);
+ virStorageBackendFileSystemMountDefaultArgs(cmd, src, def, nfsVers);
return cmd;
}
DO_TEST_LINUX("pool-fs");
DO_TEST_LINUX("pool-netfs");
DO_TEST_LINUX("pool-netfs-auto");
+ DO_TEST_LINUX("pool-netfs-protocol-ver");
DO_TEST_LINUX("pool-netfs-gluster");
DO_TEST_LINUX("pool-netfs-cifs");
#elif defined(__FreeBSD__)
DO_TEST_FREEBSD("pool-fs");
DO_TEST_FREEBSD("pool-netfs");
DO_TEST_FREEBSD("pool-netfs-auto");
+ DO_TEST_FREEBSD("pool-netfs-protocol-ver");
DO_TEST_FREEBSD("pool-netfs-gluster");
DO_TEST_FREEBSD("pool-netfs-cifs");
#else
DO_TEST("pool-fs");
DO_TEST("pool-netfs");
DO_TEST("pool-netfs-auto");
+ DO_TEST("pool-netfs-protocol-ver");
DO_TEST("pool-netfs-gluster");
DO_TEST("pool-netfs-cifs");
#endif