On Wed 21 Aug 2013 01:03:37 AM CEST, Alexandr wrote: > > good day. i trying to make callback function for > VIR_DOMAIN_EVENT_ID_LIFECYCLE, i have successfully registering callback, > but it never called, i need to know when domain started, stopped or > crashed, i have write following code > > static int domain_event_handler(virConnectPtr conn, virDomainPtr dom, > int event, int detail, void * opaque) > { > switch(event) > { > } > return 0; > } > > ..... > int callback = > virConnectDomainEventRegisterAny(libvirt_connection, NULL, > VIR_DOMAIN_EVENT_ID_LIFECYCLE, > VIR_DOMAIN_EVENT_CALLBACK(domain_event_handler), NULL, NULL); > if(callback == -1) > { > std::cout<<"Error: failed to register domain event handle > callback\n"; > return -1; > } > ..... > > > but "domain_event_handler" is never called, what is wrong here ? Are you running an event loop? You can have a look at our examples [1] and see what's being done there. Especially note the virEventRunDefaultImpl() [2] there. Martin [1] http://libvirt.org/git/?p=libvirt.git;a=blob;f=examples/domain-events/events-c/event-test.c;h=52aa3d08d7326e422c12a8521717c3d55b2d8afd;hb=HEAD [2] http://libvirt.org/git/?p=libvirt.git;a=blob;f=examples/domain-events/events-c/event-test.c;h=52aa3d08d7326e422c12a8521717c3d55b2d8afd;hb=HEAD#l611 _______________________________________________ libvirt-users mailing list libvirt-users@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvirt-users