mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 11:22:23 +00:00
util: add API for copying identity objects
Reviewed-by: Michal Privoznik <mprivozn@redhat.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
parent
b3fe905f53
commit
695d713df2
@ -2411,6 +2411,7 @@ virIdentityGetUNIXUserID;
|
||||
virIdentityGetUserName;
|
||||
virIdentityGetX509DName;
|
||||
virIdentityNew;
|
||||
virIdentityNewCopy;
|
||||
virIdentitySetCurrent;
|
||||
virIdentitySetGroupName;
|
||||
virIdentitySetParameters;
|
||||
|
@ -333,6 +333,27 @@ virIdentity *virIdentityNew(void)
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* virIdentityNewCopy:
|
||||
*
|
||||
* Creates a new identity object that is a deep copy of an
|
||||
* existing identity.
|
||||
*
|
||||
* Returns: a copy of the source identity
|
||||
*/
|
||||
virIdentity *virIdentityNewCopy(virIdentity *src)
|
||||
{
|
||||
g_autoptr(virIdentity) ident = virIdentityNew();
|
||||
|
||||
if (virTypedParamsCopy(&ident->params, src->params, src->nparams) < 0)
|
||||
return NULL;
|
||||
ident->nparams = src->nparams;
|
||||
ident->maxparams = src->nparams;
|
||||
|
||||
return g_steal_pointer(&ident);
|
||||
}
|
||||
|
||||
|
||||
static void virIdentityFinalize(GObject *object)
|
||||
{
|
||||
virIdentity *ident = VIR_IDENTITY(object);
|
||||
|
@ -33,6 +33,7 @@ int virIdentitySetCurrent(virIdentity *ident);
|
||||
virIdentity *virIdentityGetSystem(void);
|
||||
|
||||
virIdentity *virIdentityNew(void);
|
||||
virIdentity *virIdentityNewCopy(virIdentity *src);
|
||||
|
||||
int virIdentityGetUserName(virIdentity *ident,
|
||||
const char **username);
|
||||
|
Loading…
x
Reference in New Issue
Block a user