]> xenbits.xensource.com Git - libvirt.git/commitdiff
Promote virEvent*Handle/Timeout to public API
authorCole Robinson <crobinso@redhat.com>
Wed, 15 Jun 2011 21:54:30 +0000 (17:54 -0400)
committerCole Robinson <crobinso@redhat.com>
Tue, 21 Jun 2011 14:08:47 +0000 (10:08 -0400)
Since we virEventRegisterDefaultImpl is now a public API, callers need
a way to invoke the default registered Handle and Timeout functions. We
already have general functions for these internally, so promote
them to the public API.

v2:
    Actually add APIs to libvirt.h

28 files changed:
daemon/libvirtd.c
daemon/mdns.c
include/libvirt/libvirt.h.in
python/generator.py
src/conf/domain_event.c
src/conf/domain_event.h
src/fdstream.c
src/libvirt_private.syms
src/libvirt_public.syms
src/libxl/libxl_driver.c
src/lxc/lxc_driver.c
src/network/bridge_driver.c
src/node_device/node_device_hal.c
src/node_device/node_device_udev.c
src/openvz/openvz_driver.c
src/qemu/qemu_domain.c
src/qemu/qemu_driver.c
src/qemu/qemu_monitor.c
src/remote/remote_driver.c
src/test/test_driver.c
src/uml/uml_driver.c
src/util/event.c
src/util/event.h
src/util/util.c
src/vbox/vbox_tmpl.c
src/xen/xen_inotify.c
src/xen/xs_internal.c
tools/console.c

index bcaa37b444c590f9b070ee5b599405da8e4d3092..5f291ec6f8218536b4776665eb7d7d873add20dc 100644 (file)
@@ -62,7 +62,6 @@
 #include "uuid.h"
 #include "remote_driver.h"
 #include "conf.h"
-#include "event.h"
 #include "event_poll.h"
 #include "memory.h"
 #include "stream.h"
index 03695fddb86d2d7eb2f079fbcf87c455e4a7ffa8..ca4a433ac2ddc2ae688d6c032d12dae85a88d2eb 100644 (file)
@@ -39,7 +39,6 @@
 
 #include "libvirtd.h"
 #include "mdns.h"
-#include "event.h"
 #include "event_poll.h"
 #include "memory.h"
 
index cb9e8ca397c021b7c178120ca8b93932696b315d..3f634e683fbd023ccb5414da432aec62b4035231 100644 (file)
@@ -2166,6 +2166,20 @@ void virEventRegisterImpl(virEventAddHandleFunc addHandle,
 int virEventRegisterDefaultImpl(void);
 int virEventRunDefaultImpl(void);
 
+int virEventAddHandle(int fd, int events,
+                      virEventHandleCallback cb,
+                      void *opaque,
+                      virFreeCallback ff);
+void virEventUpdateHandle(int watch, int events);
+int virEventRemoveHandle(int watch);
+
+int virEventAddTimeout(int frequency,
+                       virEventTimeoutCallback cb,
+                       void *opaque,
+                       virFreeCallback ff);
+void virEventUpdateTimeout(int timer, int frequency);
+int virEventRemoveTimeout(int timer);
+
 /*
  * Secret manipulation API
  */
index 7c843d719c7aafa7cc78ec498a206d9247062252..6fdc6f886dc8dabc7d380a4a8ea8018a047178a7 100755 (executable)
@@ -398,6 +398,14 @@ skip_function = (
     'virStreamRecv', # overridden in libvirt-override-virStream.py
     'virStreamSend', # overridden in libvirt-override-virStream.py
 
+    # XXX: Skip for now, some work needed to handle Timeout/Handle callbacks
+    'virEventAddHandle',
+    'virEventRemoveHandle',
+    'virEventUpdateHandle',
+    'virEventAddTimeout',
+    'virEventRemoveTimeout',
+    'virEventUpdateTimeout',
+
     # 'Ref' functions have no use for bindings users.
     "virConnectRef",
     "virDomainRef",
index a1f1b0f0add244fce0d8bb499c8b74961abc11b3..785e9e4c862fa5d31f625e1b5927d0139f9a5a1f 100644 (file)
@@ -24,7 +24,6 @@
 #include <config.h>
 
 #include "domain_event.h"
-#include "event.h"
 #include "logging.h"
 #include "datatypes.h"
 #include "memory.h"
index a80868b7245988845fe7a8d9633992f680f13799..ea481b3a0d6ad4a31f7ede05c2ca93bd46226724 100644 (file)
@@ -25,7 +25,6 @@
 #ifndef __DOMAIN_EVENT_H__
 # define __DOMAIN_EVENT_H__
 
-# include "event.h"
 # include "domain_conf.h"
 
 typedef struct _virDomainEventCallback virDomainEventCallback;
index e19694f24907178dfa94e525929d760148a0cdf1..c1ad787efbde857c9ee5c98ca756a5a40634fb4d 100644 (file)
@@ -38,7 +38,6 @@
 #include "datatypes.h"
 #include "logging.h"
 #include "memory.h"
-#include "event.h"
 #include "util.h"
 #include "files.h"
 #include "configmake.h"
index 03d2ddb6d290d7717b8c1cff4c944ee43cfdf5ce..8e844e9df479a63914e3a482cb02114d6c2f5499 100644 (file)
@@ -455,15 +455,6 @@ ebtablesContextNew;
 ebtablesRemoveForwardAllowIn;
 
 
-# event.h
-virEventAddHandle;
-virEventAddTimeout;
-virEventRemoveHandle;
-virEventRemoveTimeout;
-virEventUpdateHandle;
-virEventUpdateTimeout;
-
-
 # event_poll.h
 virEventPollToNativeEvents;
 virEventPollFromNativeEvents;
index b2915f6ef9f372e8de5df541ac475d3b2837ae12..39d4cae4adee08c99b5f6ce4d194afe76e9f785b 100644 (file)
@@ -459,6 +459,12 @@ LIBVIRT_0.9.3 {
         virDomainGetControlInfo;
         virDomainPinVcpuFlags;
         virDomainSendKey;
+        virEventAddHandle;
+        virEventAddTimeout;
+        virEventRemoveHandle;
+        virEventRemoveTimeout;
+        virEventUpdateHandle;
+        virEventUpdateTimeout;
         virNodeGetCPUStats;
         virNodeGetMemoryStats;
 } LIBVIRT_0.9.2;
index 86ed8505b463b8655f469837c95ccff7ae7909ef..5a5951fa7fa609bcf904caf30be5d32e5b18acb4 100644 (file)
@@ -38,7 +38,6 @@
 #include "datatypes.h"
 #include "files.h"
 #include "memory.h"
-#include "event.h"
 #include "uuid.h"
 #include "command.h"
 #include "libxl_driver.h"
index 3b0d2a6d8d64d8b711896ae2dc155eec9d90370a..d0f715860d58a6f7c82c9bc6a36d7d13c895f007 100644 (file)
@@ -45,7 +45,6 @@
 #include "util.h"
 #include "bridge.h"
 #include "veth.h"
-#include "event.h"
 #include "nodeinfo.h"
 #include "uuid.h"
 #include "stats_linux.h"
index 5e4b4d9a15be93feec8f36a4849629d5ba4c3645..4b94959333b4b548e51a45dabfbeeb6f21e999e2 100644 (file)
@@ -48,7 +48,6 @@
 #include "bridge_driver.h"
 #include "network_conf.h"
 #include "driver.h"
-#include "event.h"
 #include "buf.h"
 #include "util.h"
 #include "command.h"
index a90e777d6bad1244d0c3a56cfaffaddb5e8a37f6..27fedc93b01f3fcb345a58df21e31a9ede07e6e7 100644 (file)
@@ -32,7 +32,6 @@
 #include "virterror_internal.h"
 #include "driver.h"
 #include "datatypes.h"
-#include "event.h"
 #include "memory.h"
 #include "uuid.h"
 #include "logging.h"
index 8b9694e523ecf28435eef70c01d98b389d712be9..2d4e0783fe6769eb74fb3ee4540d3ae0e8a524f4 100644 (file)
@@ -37,7 +37,6 @@
 #include "uuid.h"
 #include "util.h"
 #include "buf.h"
-#include "event.h"
 
 #define VIR_FROM_THIS VIR_FROM_NODEDEV
 
index 645e42653ffca7eb1f0e7568b9d6ea626569b348..c13f346c0887ac57834af4f581ae59e9b5d8ceeb 100644 (file)
@@ -49,7 +49,6 @@
 #include "virterror_internal.h"
 #include "datatypes.h"
 #include "openvz_driver.h"
-#include "event.h"
 #include "buf.h"
 #include "util.h"
 #include "openvz_conf.h"
index 06d2a5e28e3918c0feb43b641c725889e33624b8..5fe66ac67242f18cd07586d31d652e7f8d9950f2 100644 (file)
@@ -30,7 +30,6 @@
 #include "logging.h"
 #include "virterror_internal.h"
 #include "c-ctype.h"
-#include "event.h"
 #include "cpu/cpu.h"
 #include "ignore-value.h"
 #include "uuid.h"
index 19f22e5a5145b8e88dbf6dc1c668bfa2942010f7..01587e898659d751d4826f50ad655ae732bcd800 100644 (file)
@@ -62,7 +62,6 @@
 #include "virterror_internal.h"
 #include "logging.h"
 #include "datatypes.h"
-#include "event.h"
 #include "buf.h"
 #include "util.h"
 #include "nodeinfo.h"
index 14289212ebd19161b9a0cbc85dd3639cf7ae2df5..89a3f642a269df42fbb7503e15b547302bc2c3fd 100644 (file)
@@ -32,7 +32,6 @@
 #include "qemu_monitor_text.h"
 #include "qemu_monitor_json.h"
 #include "qemu_conf.h"
-#include "event.h"
 #include "virterror_internal.h"
 #include "memory.h"
 #include "logging.h"
index 13f8820c1d1defbc1b3ff6a57dd7dc397cedd1a0..d7ce76e31be5a7917fa841c960c3d6e6cb333718 100644 (file)
@@ -80,7 +80,6 @@
 #include "qemu_protocol.h"
 #include "memory.h"
 #include "util.h"
-#include "event.h"
 #include "ignore-value.h"
 #include "files.h"
 #include "command.h"
index f5221437a518656387ef9adf6ac713c28352b652..6c8b9cf80195622bd3c8bc3dcbe58cb48a4797ac 100644 (file)
@@ -44,7 +44,6 @@
 #include "interface_conf.h"
 #include "domain_conf.h"
 #include "domain_event.h"
-#include "event.h"
 #include "storage_conf.h"
 #include "node_device_conf.h"
 #include "xml.h"
index 1d26422a14d32016966a734c4962c47cedc011ff..e557fe89c211f188a6108ebc58301de67e6828d8 100644 (file)
@@ -47,7 +47,6 @@
 
 #include "uml_driver.h"
 #include "uml_conf.h"
-#include "event.h"
 #include "buf.h"
 #include "util.h"
 #include "nodeinfo.h"
index 11f025b4469475c0bf81971ef16fd50c93027925..41082217cf473f28a1e362a9f61f6aeb81b2806f 100644 (file)
@@ -37,6 +37,16 @@ static virEventAddTimeoutFunc addTimeoutImpl = NULL;
 static virEventUpdateTimeoutFunc updateTimeoutImpl = NULL;
 static virEventRemoveTimeoutFunc removeTimeoutImpl = NULL;
 
+/**
+ * virEventAddHandle: register a callback for monitoring file handle events
+ *
+ * @fd: file handle to monitor for events
+ * @events: bitset of events to watch from virEventHandleType constants
+ * @cb: callback to invoke when an event occurs
+ * @opaque: user data to pass to callback
+ *
+ * returns -1 if the file handle cannot be registered, 0 upon success
+ */
 int virEventAddHandle(int fd,
                       int events,
                       virEventHandleCallback cb,
@@ -48,10 +58,25 @@ int virEventAddHandle(int fd,
     return addHandleImpl(fd, events, cb, opaque, ff);
 }
 
+/**
+ * virEventUpdateHandle: change event set for a monitored file handle
+ *
+ * @watch: watch whose file handle to update
+ * @events: bitset of events to watch from virEventHandleType constants
+ *
+ * Will not fail if fd exists
+ */
 void virEventUpdateHandle(int watch, int events) {
     updateHandleImpl(watch, events);
 }
 
+/**
+ * virEventRemoveHandle: unregister a callback from a file handle
+ *
+ * @watch: watch whose file handle to remove
+ *
+ * returns -1 if the file handle was not registered, 0 upon success
+ */
 int virEventRemoveHandle(int watch) {
     if (!removeHandleImpl)
         return -1;
@@ -59,6 +84,19 @@ int virEventRemoveHandle(int watch) {
     return removeHandleImpl(watch);
 }
 
+/**
+ * virEventAddTimeout: register a callback for a timer event
+ *
+ * @frequency: time between events in milliseconds
+ * @cb: callback to invoke when an event occurs
+ * @opaque: user data to pass to callback
+ *
+ * Setting frequency to -1 will disable the timer. Setting the frequency
+ * to zero will cause it to fire on every event loop iteration.
+ *
+ * returns -1 if the timer cannot be registered, a positive
+ * integer timer id upon success
+ */
 int virEventAddTimeout(int timeout,
                        virEventTimeoutCallback cb,
                        void *opaque,
@@ -69,10 +107,28 @@ int virEventAddTimeout(int timeout,
     return addTimeoutImpl(timeout, cb, opaque, ff);
 }
 
+/**
+ * virEventUpdateTimeoutImpl: change frequency for a timer
+ *
+ * @timer: timer id to change
+ * @frequency: time between events in milliseconds
+ *
+ * Setting frequency to -1 will disable the timer. Setting the frequency
+ * to zero will cause it to fire on every event loop iteration.
+ *
+ * Will not fail if timer exists
+ */
 void virEventUpdateTimeout(int timer, int timeout) {
     updateTimeoutImpl(timer, timeout);
 }
 
+/**
+ * virEventRemoveTimeout: unregister a callback for a timer
+ *
+ * @timer: the timer id to remove
+ *
+ * returns -1 if the timer was not registered, 0 upon success
+ */
 int virEventRemoveTimeout(int timer) {
     if (!removeTimeoutImpl)
         return -1;
index 68b06c6affd3e738ef481e0fdeea74c28bcc5f0c..2fef3149c41dfe75cc2869cb0c83627573e6ffb1 100644 (file)
 #ifndef __VIR_EVENT_H__
 # define __VIR_EVENT_H__
 # include "internal.h"
-/**
- * virEventAddHandle: register a callback for monitoring file handle events
- *
- * @fd: file handle to monitor for events
- * @events: bitset of events to watch from virEventHandleType constants
- * @cb: callback to invoke when an event occurs
- * @opaque: user data to pass to callback
- *
- * returns -1 if the file handle cannot be registered, 0 upon success
- */
-int virEventAddHandle(int fd, int events,
-                      virEventHandleCallback cb,
-                      void *opaque,
-                      virFreeCallback ff);
-
-/**
- * virEventUpdateHandle: change event set for a monitored file handle
- *
- * @watch: watch whose file handle to update
- * @events: bitset of events to watch from virEventHandleType constants
- *
- * Will not fail if fd exists
- */
-void virEventUpdateHandle(int watch, int events);
-
-/**
- * virEventRemoveHandle: unregister a callback from a file handle
- *
- * @watch: watch whose file handle to remove
- *
- * returns -1 if the file handle was not registered, 0 upon success
- */
-int virEventRemoveHandle(int watch);
-
-/**
- * virEventAddTimeout: register a callback for a timer event
- *
- * @frequency: time between events in milliseconds
- * @cb: callback to invoke when an event occurs
- * @opaque: user data to pass to callback
- *
- * Setting frequency to -1 will disable the timer. Setting the frequency
- * to zero will cause it to fire on every event loop iteration.
- *
- * returns -1 if the timer cannot be registered, a positive
- * integer timer id upon success
- */
-int virEventAddTimeout(int frequency,
-                       virEventTimeoutCallback cb,
-                       void *opaque,
-                       virFreeCallback ff);
-
-/**
- * virEventUpdateTimeoutImpl: change frequency for a timer
- *
- * @timer: timer id to change
- * @frequency: time between events in milliseconds
- *
- * Setting frequency to -1 will disable the timer. Setting the frequency
- * to zero will cause it to fire on every event loop iteration.
- *
- * Will not fail if timer exists
- */
-void virEventUpdateTimeout(int timer, int frequency);
-
-/**
- * virEventRemoveTimeout: unregister a callback for a timer
- *
- * @timer: the timer id to remove
- *
- * returns -1 if the timer was not registered, 0 upon success
- */
-int virEventRemoveTimeout(int timer);
 
 #endif /* __VIR_EVENT_H__ */
index 8f6d8872293419eda223a74ede9e2fece0f94340..463d2b8eaa1a489327ef3e691344434b8af4589c 100644 (file)
@@ -68,7 +68,6 @@
 #include "dirname.h"
 #include "virterror_internal.h"
 #include "logging.h"
-#include "event.h"
 #include "buf.h"
 #include "util.h"
 #include "memory.h"
index f2233a54b0efd773ae187f518f388bf66e0f0ab6..7fd120078c1c81c3f60aec5b9b63496fb1f57fef 100644 (file)
@@ -49,7 +49,6 @@
 #include "storage_conf.h"
 #include "storage_file.h"
 #include "uuid.h"
-#include "event.h"
 #include "memory.h"
 #include "nodeinfo.h"
 #include "logging.h"
index 71bb6bee28cd124b71d66de17f577babb5efcbfd..24b437638d0a2dae0254dcf116d6ff47b7b9a8ad 100644 (file)
@@ -31,7 +31,6 @@
 #include "datatypes.h"
 #include "driver.h"
 #include "memory.h"
-#include "event.h"
 #include "xen_driver.h"
 #include "conf.h"
 #include "domain_conf.h"
index b684d3d25f7c9ea623296ac479892b9755e3aea8..04bf93a548e79054abd7aa044b18fecb379e36ec 100644 (file)
@@ -29,7 +29,6 @@
 #include "datatypes.h"
 #include "driver.h"
 #include "memory.h"
-#include "event.h"
 #include "logging.h"
 #include "uuid.h"
 #include "xen_driver.h"
index 0428239ab3ab93dc7338b000345f430f3978713d..7ca95a3e1da44f8cd2a1e59130fefd04c6654a40 100644 (file)
@@ -43,7 +43,6 @@
 # include "memory.h"
 # include "virterror_internal.h"
 
-# include "event.h"
 
 /* ie  Ctrl-]  as per telnet */
 # define CTRL_CLOSE_BRACKET '\35'