From: Ryan Gahagan Date: Wed, 6 Jan 2021 21:32:27 +0000 (-0600) Subject: util: Add fields for VIR_STORAGE_NET_PROTOCOL_NFS to virStorageSource X-Git-Tag: v7.0.0-rc1~18 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4b2f083c34ea41f9046d5771ca1786ebdc63a72b;p=thirdparty%2Flibvirt.git util: Add fields for VIR_STORAGE_NET_PROTOCOL_NFS to virStorageSource 'nfs_user'/'nfs_group' represents the XML configuration. 'nfs_uid'/'nfs_gid' is internal store when libvirt looks up the user's uid/gid in the system. Signed-off-by: Ryan Gahagan Reviewed-by: Peter Krempa --- diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c index 1176630282..3097e11984 100644 --- a/src/util/virstoragefile.c +++ b/src/util/virstoragefile.c @@ -2293,6 +2293,11 @@ virStorageSourceCopy(const virStorageSource *src, def->ssh_host_key_check_disabled = src->ssh_host_key_check_disabled; def->ssh_user = g_strdup(src->ssh_user); + def->nfs_user = g_strdup(src->nfs_user); + def->nfs_group = g_strdup(src->nfs_group); + def->nfs_uid = src->nfs_uid; + def->nfs_gid = src->nfs_gid; + return g_steal_pointer(&def); } @@ -2533,6 +2538,9 @@ virStorageSourceClear(virStorageSourcePtr def) VIR_FREE(def->ssh_user); + VIR_FREE(def->nfs_user); + VIR_FREE(def->nfs_group); + virStorageSourceInitiatorClear(&def->initiator); /* clear everything except the class header as the object APIs diff --git a/src/util/virstoragefile.h b/src/util/virstoragefile.h index e1fbbafe26..47d901a478 100644 --- a/src/util/virstoragefile.h +++ b/src/util/virstoragefile.h @@ -385,6 +385,14 @@ struct _virStorageSource { /* these must not be used apart from formatting the output JSON in the qemu driver */ char *ssh_user; bool ssh_host_key_check_disabled; + + /* nfs_user and nfs_group store the strings passed in by the user for NFS params. + * nfs_uid and nfs_gid represent the converted/looked up ID numbers which are used + * during run time, and are not based on the configuration */ + char *nfs_user; + char *nfs_group; + uid_t nfs_uid; + gid_t nfs_gid; }; G_DEFINE_AUTOPTR_CLEANUP_FUNC(virStorageSource, virObjectUnref);