/* Internal driver state */
-typedef struct _virSecretEntry virSecretEntry;
-typedef virSecretEntry *virSecretEntryPtr;
-struct _virSecretEntry {
- virSecretEntryPtr next;
+typedef struct _virSecretObj virSecretObj;
+typedef virSecretObj *virSecretObjPtr;
+struct _virSecretObj {
+ virSecretObjPtr next;
virSecretDefPtr def;
unsigned char *value; /* May be NULL */
size_t value_size;
typedef virSecretDriverState *virSecretDriverStatePtr;
struct _virSecretDriverState {
virMutex lock;
- virSecretEntry *secrets;
+ virSecretObj *secrets;
char *directory;
};
virMutexUnlock(&driver->lock);
}
-static virSecretEntryPtr
-listUnlink(virSecretEntryPtr *pptr)
+static virSecretObjPtr
+listUnlink(virSecretObjPtr *pptr)
{
- virSecretEntryPtr secret;
+ virSecretObjPtr secret;
secret = *pptr;
*pptr = secret->next;
}
static void
-listInsert(virSecretEntryPtr *pptr,
- virSecretEntryPtr secret)
+listInsert(virSecretObjPtr *pptr,
+ virSecretObjPtr secret)
{
secret->next = *pptr;
*pptr = secret;
}
static void
-secretFree(virSecretEntryPtr secret)
+secretFree(virSecretObjPtr secret)
{
if (secret == NULL)
return;
VIR_FREE(secret);
}
-static virSecretEntryPtr
+static virSecretObjPtr
secretFindByUUID(const unsigned char *uuid)
{
- virSecretEntryPtr *pptr, s;
+ virSecretObjPtr *pptr, s;
for (pptr = &driver->secrets; *pptr != NULL; pptr = &s->next) {
s = *pptr;
return NULL;
}
-static virSecretEntryPtr
+static virSecretObjPtr
secretFindByUsage(int usageType,
const char *usageID)
{
- virSecretEntryPtr *pptr, s;
+ virSecretObjPtr *pptr, s;
for (pptr = &driver->secrets; *pptr != NULL; pptr = &s->next) {
s = *pptr;
}
static char *
-secretComputePath(const virSecretEntry *secret,
+secretComputePath(const virSecretObj *secret,
const char *suffix)
{
char *ret;
}
static char *
-secretXMLPath(const virSecretEntry *secret)
+secretXMLPath(const virSecretObj *secret)
{
return secretComputePath(secret, ".xml");
}
static char *
-secretBase64Path(const virSecretEntry *secret)
+secretBase64Path(const virSecretObj *secret)
{
return secretComputePath(secret, ".base64");
}
}
static int
-secretSaveDef(const virSecretEntry *secret)
+secretSaveDef(const virSecretObj *secret)
{
char *filename = NULL, *xml = NULL;
int ret = -1;
}
static int
-secretSaveValue(const virSecretEntry *secret)
+secretSaveValue(const virSecretObj *secret)
{
char *filename = NULL, *base64 = NULL;
int ret = -1;
}
static int
-secretDeleteSaved(const virSecretEntry *secret)
+secretDeleteSaved(const virSecretObj *secret)
{
char *xml_filename = NULL, *value_filename = NULL;
int ret = -1;
}
static int
-secretLoadValue(virSecretEntryPtr secret)
+secretLoadValue(virSecretObjPtr secret)
{
int ret = -1, fd = -1;
struct stat st;
return ret;
}
-static virSecretEntryPtr
+static virSecretObjPtr
secretLoad(const char *xml_basename)
{
virSecretDefPtr def = NULL;
- virSecretEntryPtr secret = NULL, ret = NULL;
+ virSecretObjPtr secret = NULL, ret = NULL;
char *xml_filename;
if (virAsprintf(&xml_filename, "%s/%s", driver->directory,
}
static int
-loadSecrets(virSecretEntryPtr *dest)
+loadSecrets(virSecretObjPtr *dest)
{
DIR *dir = NULL;
struct dirent *de;
- virSecretEntryPtr list = NULL;
+ virSecretObjPtr list = NULL;
if (!(dir = opendir(driver->directory))) {
if (errno == ENOENT)
}
while (virDirRead(dir, &de, NULL) > 0) {
- virSecretEntryPtr secret;
+ virSecretObjPtr secret;
if (STREQ(de->d_name, ".") || STREQ(de->d_name, ".."))
continue;
secrets we managed to find. */
while (list != NULL) {
- virSecretEntryPtr s;
+ virSecretObjPtr s;
s = listUnlink(&list);
listInsert(dest, s);
secretConnectNumOfSecrets(virConnectPtr conn)
{
size_t i;
- virSecretEntryPtr secret;
+ virSecretObjPtr secret;
if (virConnectNumOfSecretsEnsureACL(conn) < 0)
return -1;
int maxuuids)
{
size_t i;
- virSecretEntryPtr secret;
+ virSecretObjPtr secret;
memset(uuids, 0, maxuuids * sizeof(*uuids));
int nsecrets = 0;
int ret_nsecrets = 0;
virSecretPtr secret = NULL;
- virSecretEntryPtr entry = NULL;
+ virSecretObjPtr entry = NULL;
size_t i = 0;
int ret = -1;
const unsigned char *uuid)
{
virSecretPtr ret = NULL;
- virSecretEntryPtr secret;
+ virSecretObjPtr secret;
secretDriverLock();
const char *usageID)
{
virSecretPtr ret = NULL;
- virSecretEntryPtr secret;
+ virSecretObjPtr secret;
secretDriverLock();
unsigned int flags)
{
virSecretPtr ret = NULL;
- virSecretEntryPtr secret;
+ virSecretObjPtr secret;
virSecretDefPtr backup = NULL;
virSecretDefPtr new_attrs;
unsigned int flags)
{
char *ret = NULL;
- virSecretEntryPtr secret;
+ virSecretObjPtr secret;
virCheckFlags(0, NULL);
int ret = -1;
unsigned char *old_value, *new_value;
size_t old_value_size;
- virSecretEntryPtr secret;
+ virSecretObjPtr secret;
virCheckFlags(0, -1);
unsigned int internalFlags)
{
unsigned char *ret = NULL;
- virSecretEntryPtr secret;
+ virSecretObjPtr secret;
virCheckFlags(0, NULL);
secretUndefine(virSecretPtr obj)
{
int ret = -1;
- virSecretEntryPtr secret;
+ virSecretObjPtr secret;
secretDriverLock();
if (driver->secrets == secret) {
driver->secrets = secret->next;
} else {
- virSecretEntryPtr tmp = driver->secrets;
+ virSecretObjPtr tmp = driver->secrets;
while (tmp && tmp->next != secret)
tmp = tmp->next;
if (tmp)
secretDriverLock();
while (driver->secrets != NULL) {
- virSecretEntryPtr s;
+ virSecretObjPtr s;
s = listUnlink(&driver->secrets);
secretFree(s);
static int
secretStateReload(void)
{
- virSecretEntryPtr new_secrets = NULL;
+ virSecretObjPtr new_secrets = NULL;
if (!driver)
return -1;
* Discard non-ephemeral secrets that were removed
* by the secrets directory. */
while (driver->secrets != NULL) {
- virSecretEntryPtr s;
+ virSecretObjPtr s;
s = listUnlink(&driver->secrets);
if (s->def->ephemeral)