[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH 1 of 2 V4] libxc, libxenstore: make the headers C++-friendlier



Made the xenctrl.h and xenstore.h easier to use with C++:
added 'extern "C"' statements, moved the definition of
enum xc_error_code above it's typedef.

Signed-off-by: Razvan Cojocaru <rzvncj@xxxxxxxxx>

diff -r 5af4f2ab06f3 -r 3a9979cf50f3 tools/libxc/xenctrl.h
--- a/tools/libxc/xenctrl.h     Tue Jan 22 09:33:10 2013 +0100
+++ b/tools/libxc/xenctrl.h     Wed Jan 23 17:27:20 2013 +0200
@@ -26,6 +26,10 @@
 #ifndef XENCTRL_H
 #define XENCTRL_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 /* Tell the Xen public headers we are a user-space tools build. */
 #ifndef __XEN_TOOLS__
 #define __XEN_TOOLS__ 1
@@ -114,6 +118,15 @@ typedef struct xc_interface_core xc_inte
 typedef struct xc_interface_core xc_evtchn;
 typedef struct xc_interface_core xc_gnttab;
 typedef struct xc_interface_core xc_gntshr;
+
+enum xc_error_code {
+  XC_ERROR_NONE = 0,
+  XC_INTERNAL_ERROR = 1,
+  XC_INVALID_KERNEL = 2,
+  XC_INVALID_PARAM = 3,
+  XC_OUT_OF_MEMORY = 4,
+  /* new codes need to be added to xc_error_level_to_desc too */
+};
 typedef enum xc_error_code xc_error_code;
 
 
@@ -1618,16 +1631,6 @@ int xc_hvm_inject_trap(
  *  LOGGING AND ERROR REPORTING
  */
 
-
-enum xc_error_code {
-  XC_ERROR_NONE = 0,
-  XC_INTERNAL_ERROR = 1,
-  XC_INVALID_KERNEL = 2,
-  XC_INVALID_PARAM = 3,
-  XC_OUT_OF_MEMORY = 4,
-  /* new codes need to be added to xc_error_level_to_desc too */
-};
-
 #define XC_MAX_ERROR_MSG_LEN 1024
 typedef struct xc_error {
   enum xc_error_code code;
@@ -2236,4 +2239,8 @@ int xc_compression_uncompress_page(xc_in
                                   unsigned long compbuf_size,
                                   unsigned long *compbuf_pos, char *dest);
 
+#ifdef __cplusplus
+}
+#endif 
+
 #endif /* XENCTRL_H */
diff -r 5af4f2ab06f3 -r 3a9979cf50f3 tools/xenstore/xenstore.h
--- a/tools/xenstore/xenstore.h Tue Jan 22 09:33:10 2013 +0100
+++ b/tools/xenstore/xenstore.h Wed Jan 23 17:27:20 2013 +0200
@@ -20,6 +20,10 @@
 #ifndef XENSTORE_H
 #define XENSTORE_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #include <xenstore_lib.h>
 
 #define XBT_NULL 0
@@ -244,6 +248,11 @@ char *xs_debug_command(struct xs_handle 
                       void *data, unsigned int len);
 
 int xs_suspend_evtchn_port(int domid);
+
+#ifdef __cplusplus
+}
+#endif
+
 #endif /* XENSTORE_H */
 
 /*

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.