1. 26 3月, 2010 2 次提交
    • D
      Refactor domain events to handle multiple event types · 747c5363
      Daniel P. Berrange 提交于
      The internal domain events APIs are designed to handle the lifecycle
      events. This needs to be refactored to allow arbitrary new event
      types to be handled.
      
       * The signature of virDomainEventDispatchFunc changes to use
         virConnectDomainEventGenericCallback instead of the lifecycle
         event specific virConnectDomainEventCallback
       * Every registered callback gains a unique ID to allow its
         removal based on ID, instead of function pointer
       * Every registered callback gains an 'eventID' to allow callbacks
         for different types of events to be distinguished
       * virDomainEventDispatch is adapted to filter out callbacks
         whose eventID does not match the eventID of the event being
         dispatched
       * virDomainEventDispatch is adapted to filter based on the
         domain name and uuid, if this filter is set for a callback.
       * virDomainEvent type/detail fields are moved into a union to
         allow different data fields for other types of events to be
         added later
      
      * src/conf/domain_event.h, src/conf/domain_event.c: Refactor
        to allow handling of different types of events
      * src/lxc/lxc_driver.c, src/qemu/qemu_driver.c,
        src/remote/remote_driver.c, src/test/test_driver.c,
        src/xen/xen_driver.c: Change dispatch function signature
        to use virConnectDomainEventGenericCallback
      747c5363
    • D
      Make internal domain events struct definitions private · ea7dc337
      Daniel P. Berrange 提交于
      The virtual box driver was directly accesing the domain events
      structs instead of using the APIs provided. To prevent this kind
      of abuse, make the struct definitions private, forcing use of the
      internal APIs. This requires adding one extra internal API.
      
      * src/conf/domain_event.h, src/conf/domain_event.c: Move
        virDomainEventCallback and virDomainEvent structs into
        the source file instead of header
      * src/vbox/vbox_tmpl.c: Use official APIs for dispatching domain
        events instead of accessing structs directly.
      ea7dc337
  2. 10 3月, 2010 1 次提交
  3. 10 2月, 2010 1 次提交
    • D
      Annotate some virConnectPtr as mandatory non-null · 38536d6f
      Daniel P. Berrange 提交于
      Use the ATTRIBUTE_NONNULL annotation to mark some virConnectPtr
      args as mandatory non-null so the compiler can warn of mistakes
      
      * src/conf/domain_event.h: All virConnectPtr args must be non-null
      * src/qemu/qemu_conf.h: qemudBuildCommandLine and
        qemudNetworkIfaceConnect() must be given non-null connection
      * tests/qemuxml2argvtest.c: Provide a non-null (dummy) connection to
        qemudBuildCommandLine()
      38536d6f
  4. 21 9月, 2009 1 次提交
    • D
      Move all XML configuration handling to src/conf/ · e0a48c99
      Daniel P. Berrange 提交于
      * src/capabilities.c, src/capabilities.h, src/domain_conf.c,
        src/domain_conf.h, src/domain_event.c, src/domain_event.h,
        src/interface_conf.c, src/interface_conf.h,
        src/network_conf.c, src/network_conf.h, src/node_device_conf.c,
        src/node_device_conf.h, src/secret_conf.c, src/secret_conf.h,
        src/storage_conf.c, src/storage_conf.h, src/storage_encryption_conf.c,
        src/storage_encryption_conf.h: Move to src/conf/
      * src/Makefile.am: Add -Isrc/conf to the individual build targets
        which need to use XML config APIs. Remove LIBXML_CFLAGS, LIBSSH2_CFLAGS
        and SELINUX_CFLAGS from global INCLUDES and only have them in build
        targets which actually need them.  Create a libvirt_conf.la
        convenience library for all config parsers
      * src/hostusb.h: Remove bogus include of domain_conf.h
      * tests/Makefile.am: Add -Isrc/conf. Remove bogus -I$builddir/src
        since it never has any generated header files
      * daemon/Makefile.am: Add -Isrc/conf
      * proxy/Makefile.am: Add -Isrc/conf and cope with renamed files
      * src/hash.c: Remove bogus include of libxml/threads.h
      e0a48c99
  5. 05 12月, 2008 1 次提交
  6. 21 11月, 2008 1 次提交
  7. 19 11月, 2008 1 次提交
  8. 18 11月, 2008 1 次提交
  9. 05 11月, 2008 1 次提交