]> xenbits.xensource.com Git - libvirt.git/commitdiff
Move virSecret related APIs out of libvirt.h.in
authorDaniel P. Berrange <berrange@redhat.com>
Thu, 23 Oct 2014 10:28:16 +0000 (11:28 +0100)
committerDaniel P. Berrange <berrange@redhat.com>
Fri, 24 Oct 2014 16:22:20 +0000 (17:22 +0100)
Create a new libvirt-secret.h file to hold the public
API definitions for the virSecret type. This header
file is not self-contained, so applications will not directly
include it. They will continue to #include <libvirt/libvirt.h>

docs/apibuild.py
include/libvirt/Makefile.am
include/libvirt/libvirt-secret.h [new file with mode: 0644]
include/libvirt/libvirt.h.in
libvirt.spec.in
mingw-libvirt.spec.in

index 32ac773e9c1457ddff652f0188205841d15b528e..b8fd191c4bedccd38a9dbb7c0976a24b57260688 100755 (executable)
@@ -27,6 +27,7 @@ included_files = {
   "libvirt-network.h": "header with general libvirt API definitions",
   "libvirt-nodedev.h": "header with general libvirt API definitions",
   "libvirt-nwfilter.h": "header with general libvirt API definitions",
+  "libvirt-secret.h": "header with general libvirt API definitions",
   "virterror.h": "header with error specific API definitions",
   "libvirt.c": "Main interfaces for the libvirt library",
   "libvirt-domain.c": "Domain interfaces for the libvirt library",
index 75142d81e4359dd0aab187110879e75800f9ca5b..62332e1cba37cda1ff45a5badb94e29281277ecd 100644 (file)
@@ -24,6 +24,7 @@ virinc_HEADERS = libvirt.h            \
                 libvirt-network.h \
                 libvirt-nodedev.h \
                 libvirt-nwfilter.h \
+                libvirt-secret.h \
                 libvirt-lxc.h          \
                 libvirt-qemu.h         \
                 virterror.h
diff --git a/include/libvirt/libvirt-secret.h b/include/libvirt/libvirt-secret.h
new file mode 100644 (file)
index 0000000..3e5cdf6
--- /dev/null
@@ -0,0 +1,113 @@
+/*
+ * libvirt-secret.h
+ * Summary: APIs for management of secrets
+ * Description: Provides APIs for the management of secrets
+ * Author: Daniel Veillard <veillard@redhat.com>
+ *
+ * Copyright (C) 2006-2014 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library.  If not, see
+ * <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef __VIR_LIBVIRT_SECRET_H__
+# define __VIR_LIBVIRT_SECRET_H__
+
+# ifndef __VIR_LIBVIRT_H_INCLUDES__
+#  error "Don't include this file directly, only use libvirt/libvirt.h"
+# endif
+
+
+/**
+ * virSecret:
+ *
+ * A virSecret stores a secret value (e.g. a passphrase or encryption key)
+ * and associated metadata.
+ */
+typedef struct _virSecret virSecret;
+typedef virSecret *virSecretPtr;
+
+typedef enum {
+    VIR_SECRET_USAGE_TYPE_NONE = 0,
+    VIR_SECRET_USAGE_TYPE_VOLUME = 1,
+    VIR_SECRET_USAGE_TYPE_CEPH = 2,
+    VIR_SECRET_USAGE_TYPE_ISCSI = 3,
+
+# ifdef VIR_ENUM_SENTINELS
+    VIR_SECRET_USAGE_TYPE_LAST
+    /*
+     * NB: this enum value will increase over time as new events are
+     * added to the libvirt API. It reflects the last secret owner ID
+     * supported by this version of the libvirt API.
+     */
+# endif
+} virSecretUsageType;
+
+virConnectPtr           virSecretGetConnect     (virSecretPtr secret);
+int                     virConnectNumOfSecrets  (virConnectPtr conn);
+int                     virConnectListSecrets   (virConnectPtr conn,
+                                                 char **uuids,
+                                                 int maxuuids);
+
+/*
+ * virConnectListAllSecrets:
+ *
+ * Flags used to filter the returned secrets. Flags in each group
+ * are exclusive attributes of a secret.
+ */
+typedef enum {
+    VIR_CONNECT_LIST_SECRETS_EPHEMERAL    = 1 << 0, /* kept in memory, never
+                                                       stored persistently */
+    VIR_CONNECT_LIST_SECRETS_NO_EPHEMERAL = 1 << 1,
+
+    VIR_CONNECT_LIST_SECRETS_PRIVATE      = 1 << 2, /* not revealed to any caller
+                                                       of libvirt, nor to any other
+                                                       node */
+    VIR_CONNECT_LIST_SECRETS_NO_PRIVATE   = 1 << 3,
+} virConnectListAllSecretsFlags;
+
+int                     virConnectListAllSecrets(virConnectPtr conn,
+                                                 virSecretPtr **secrets,
+                                                 unsigned int flags);
+virSecretPtr            virSecretLookupByUUID(virConnectPtr conn,
+                                              const unsigned char *uuid);
+virSecretPtr            virSecretLookupByUUIDString(virConnectPtr conn,
+                                                    const char *uuid);
+virSecretPtr            virSecretLookupByUsage(virConnectPtr conn,
+                                               int usageType,
+                                               const char *usageID);
+virSecretPtr            virSecretDefineXML      (virConnectPtr conn,
+                                                 const char *xml,
+                                                 unsigned int flags);
+int                     virSecretGetUUID        (virSecretPtr secret,
+                                                 unsigned char *buf);
+int                     virSecretGetUUIDString  (virSecretPtr secret,
+                                                 char *buf);
+int                     virSecretGetUsageType   (virSecretPtr secret);
+const char *            virSecretGetUsageID     (virSecretPtr secret);
+char *                  virSecretGetXMLDesc     (virSecretPtr secret,
+                                                 unsigned int flags);
+int                     virSecretSetValue       (virSecretPtr secret,
+                                                 const unsigned char *value,
+                                                 size_t value_size,
+                                                 unsigned int flags);
+unsigned char *         virSecretGetValue       (virSecretPtr secret,
+                                                 size_t *value_size,
+                                                 unsigned int flags);
+int                     virSecretUndefine       (virSecretPtr secret);
+int                     virSecretRef            (virSecretPtr secret);
+int                     virSecretFree           (virSecretPtr secret);
+
+
+#endif /* __VIR_LIBVIRT_SECRET_H__ */
index 14cd205f488e4a946f2ec4744106d5abe1bcdb23..39824ab53da09ba559bb1057ac9faf8260076f55 100644 (file)
@@ -3673,90 +3673,6 @@ int virEventAddTimeout(int frequency,
 void virEventUpdateTimeout(int timer, int frequency);
 int virEventRemoveTimeout(int timer);
 
-/*
- * Secret manipulation API
- */
-
-/**
- * virSecret:
- *
- * A virSecret stores a secret value (e.g. a passphrase or encryption key)
- * and associated metadata.
- */
-typedef struct _virSecret virSecret;
-typedef virSecret *virSecretPtr;
-
-typedef enum {
-    VIR_SECRET_USAGE_TYPE_NONE = 0,
-    VIR_SECRET_USAGE_TYPE_VOLUME = 1,
-    VIR_SECRET_USAGE_TYPE_CEPH = 2,
-    VIR_SECRET_USAGE_TYPE_ISCSI = 3,
-
-#ifdef VIR_ENUM_SENTINELS
-    VIR_SECRET_USAGE_TYPE_LAST
-    /*
-     * NB: this enum value will increase over time as new events are
-     * added to the libvirt API. It reflects the last secret owner ID
-     * supported by this version of the libvirt API.
-     */
-#endif
-} virSecretUsageType;
-
-virConnectPtr           virSecretGetConnect     (virSecretPtr secret);
-int                     virConnectNumOfSecrets  (virConnectPtr conn);
-int                     virConnectListSecrets   (virConnectPtr conn,
-                                                 char **uuids,
-                                                 int maxuuids);
-
-/*
- * virConnectListAllSecrets:
- *
- * Flags used to filter the returned secrets. Flags in each group
- * are exclusive attributes of a secret.
- */
-typedef enum {
-    VIR_CONNECT_LIST_SECRETS_EPHEMERAL    = 1 << 0, /* kept in memory, never
-                                                       stored persistently */
-    VIR_CONNECT_LIST_SECRETS_NO_EPHEMERAL = 1 << 1,
-
-    VIR_CONNECT_LIST_SECRETS_PRIVATE      = 1 << 2, /* not revealed to any caller
-                                                       of libvirt, nor to any other
-                                                       node */
-    VIR_CONNECT_LIST_SECRETS_NO_PRIVATE   = 1 << 3,
-} virConnectListAllSecretsFlags;
-
-int                     virConnectListAllSecrets(virConnectPtr conn,
-                                                 virSecretPtr **secrets,
-                                                 unsigned int flags);
-virSecretPtr            virSecretLookupByUUID(virConnectPtr conn,
-                                              const unsigned char *uuid);
-virSecretPtr            virSecretLookupByUUIDString(virConnectPtr conn,
-                                                    const char *uuid);
-virSecretPtr            virSecretLookupByUsage(virConnectPtr conn,
-                                               int usageType,
-                                               const char *usageID);
-virSecretPtr            virSecretDefineXML      (virConnectPtr conn,
-                                                 const char *xml,
-                                                 unsigned int flags);
-int                     virSecretGetUUID        (virSecretPtr secret,
-                                                 unsigned char *buf);
-int                     virSecretGetUUIDString  (virSecretPtr secret,
-                                                 char *buf);
-int                     virSecretGetUsageType   (virSecretPtr secret);
-const char *            virSecretGetUsageID     (virSecretPtr secret);
-char *                  virSecretGetXMLDesc     (virSecretPtr secret,
-                                                 unsigned int flags);
-int                     virSecretSetValue       (virSecretPtr secret,
-                                                 const unsigned char *value,
-                                                 size_t value_size,
-                                                 unsigned int flags);
-unsigned char *         virSecretGetValue       (virSecretPtr secret,
-                                                 size_t *value_size,
-                                                 unsigned int flags);
-int                     virSecretUndefine       (virSecretPtr secret);
-int                     virSecretRef            (virSecretPtr secret);
-int                     virSecretFree           (virSecretPtr secret);
-
 typedef enum {
     VIR_STREAM_NONBLOCK = (1 << 0),
 } virStreamFlags;
@@ -5109,6 +5025,7 @@ typedef virMemoryParameter *virMemoryParameterPtr;
 #include <libvirt/libvirt-network.h>
 #include <libvirt/libvirt-nodedev.h>
 #include <libvirt/libvirt-nwfilter.h>
+#include <libvirt/libvirt-secret.h>
 #undef __VIR_LIBVIRT_H_INCLUDES__
 
 #ifdef __cplusplus
index 15d267a087c7444006657f90effc213b2b5e33fd..745e182ac313934b4ac7b3593189d20198a852a8 100644 (file)
@@ -2256,6 +2256,7 @@ exit 0
 %{_includedir}/libvirt/libvirt-network.h
 %{_includedir}/libvirt/libvirt-nodedev.h
 %{_includedir}/libvirt/libvirt-nwfilter.h
+%{_includedir}/libvirt/libvirt-secret.h
 %{_includedir}/libvirt/libvirt-qemu.h
 %{_includedir}/libvirt/libvirt-lxc.h
 %{_libdir}/pkgconfig/libvirt.pc
index 828238b6010c1db9bbeb62f51a1859f7472dc986..69bd62a6c3f0821abfc59a0a8709386ff3dbd00d 100644 (file)
@@ -234,6 +234,7 @@ rm -rf $RPM_BUILD_ROOT%{mingw64_libexecdir}/libvirt-guests.sh
 %{mingw32_includedir}/libvirt/libvirt-network.h
 %{mingw32_includedir}/libvirt/libvirt-nodedev.h
 %{mingw32_includedir}/libvirt/libvirt-nwfilter.h
+%{mingw32_includedir}/libvirt/libvirt-secret.h
 %{mingw32_includedir}/libvirt/virterror.h
 %{mingw32_includedir}/libvirt/libvirt-lxc.h
 %{mingw32_includedir}/libvirt/libvirt-qemu.h
@@ -302,6 +303,7 @@ rm -rf $RPM_BUILD_ROOT%{mingw64_libexecdir}/libvirt-guests.sh
 %{mingw64_includedir}/libvirt/libvirt-network.h
 %{mingw64_includedir}/libvirt/libvirt-nodedev.h
 %{mingw64_includedir}/libvirt/libvirt-nwfilter.h
+%{mingw64_includedir}/libvirt/libvirt-secret.h
 %{mingw64_includedir}/libvirt/virterror.h
 %{mingw64_includedir}/libvirt/libvirt-lxc.h
 %{mingw64_includedir}/libvirt/libvirt-qemu.h