1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2025-03-07 17:28:15 +00:00

daemon: Fix various error reporting issues

Many node device calls weren't properly relaying error messages, and
domain event registeration was not checking for error.
This commit is contained in:
Cole Robinson 2010-01-13 12:07:01 -05:00
parent a3dddc0020
commit 2d4d657695

View File

@ -231,7 +231,7 @@ remoteDispatchGetType (struct qemud_server *server ATTRIBUTE_UNUSED,
*/ */
ret->type = strdup (type); ret->type = strdup (type);
if (!ret->type) { if (!ret->type) {
remoteDispatchFormatError (rerr, "%s", _("out of memory in strdup")); remoteDispatchOOMError(rerr);
return -1; return -1;
} }
@ -4489,7 +4489,7 @@ remoteDispatchNodeDeviceDumpXml (struct qemud_server *server ATTRIBUTE_UNUSED,
dev = virNodeDeviceLookupByName(conn, args->name); dev = virNodeDeviceLookupByName(conn, args->name);
if (dev == NULL) { if (dev == NULL) {
remoteDispatchFormatError(rerr, "%s", _("node_device not found")); remoteDispatchConnError(rerr, conn);
return -1; return -1;
} }
@ -4520,7 +4520,7 @@ remoteDispatchNodeDeviceGetParent (struct qemud_server *server ATTRIBUTE_UNUSED,
dev = virNodeDeviceLookupByName(conn, args->name); dev = virNodeDeviceLookupByName(conn, args->name);
if (dev == NULL) { if (dev == NULL) {
remoteDispatchFormatError(rerr, "%s", _("node_device not found")); remoteDispatchConnError(rerr, conn);
return -1; return -1;
} }
@ -4562,7 +4562,7 @@ remoteDispatchNodeDeviceNumOfCaps (struct qemud_server *server ATTRIBUTE_UNUSED,
dev = virNodeDeviceLookupByName(conn, args->name); dev = virNodeDeviceLookupByName(conn, args->name);
if (dev == NULL) { if (dev == NULL) {
remoteDispatchFormatError(rerr, "%s", _("node_device not found")); remoteDispatchConnError(rerr, conn);
return -1; return -1;
} }
@ -4591,7 +4591,7 @@ remoteDispatchNodeDeviceListCaps (struct qemud_server *server ATTRIBUTE_UNUSED,
dev = virNodeDeviceLookupByName(conn, args->name); dev = virNodeDeviceLookupByName(conn, args->name);
if (dev == NULL) { if (dev == NULL) {
remoteDispatchFormatError(rerr, "%s", _("node_device not found")); remoteDispatchConnError(rerr, conn);
return -1; return -1;
} }
@ -4634,7 +4634,7 @@ remoteDispatchNodeDeviceDettach (struct qemud_server *server ATTRIBUTE_UNUSED,
dev = virNodeDeviceLookupByName(conn, args->name); dev = virNodeDeviceLookupByName(conn, args->name);
if (dev == NULL) { if (dev == NULL) {
remoteDispatchFormatError(rerr, "%s", _("node_device not found")); remoteDispatchConnError(rerr, conn);
return -1; return -1;
} }
@ -4661,7 +4661,7 @@ remoteDispatchNodeDeviceReAttach (struct qemud_server *server ATTRIBUTE_UNUSED,
dev = virNodeDeviceLookupByName(conn, args->name); dev = virNodeDeviceLookupByName(conn, args->name);
if (dev == NULL) { if (dev == NULL) {
remoteDispatchFormatError(rerr, "%s", _("node_device not found")); remoteDispatchConnError(rerr, conn);
return -1; return -1;
} }
@ -4688,7 +4688,7 @@ remoteDispatchNodeDeviceReset (struct qemud_server *server ATTRIBUTE_UNUSED,
dev = virNodeDeviceLookupByName(conn, args->name); dev = virNodeDeviceLookupByName(conn, args->name);
if (dev == NULL) { if (dev == NULL) {
remoteDispatchFormatError(rerr, "%s", _("node_device not found")); remoteDispatchConnError(rerr, conn);
return -1; return -1;
} }
@ -4738,7 +4738,7 @@ remoteDispatchNodeDeviceDestroy(struct qemud_server *server ATTRIBUTE_UNUSED,
dev = virNodeDeviceLookupByName(conn, args->name); dev = virNodeDeviceLookupByName(conn, args->name);
if (dev == NULL) { if (dev == NULL) {
remoteDispatchFormatError(rerr, "%s", _("node_device not found")); remoteDispatchConnError(rerr, conn);
return -1; return -1;
} }
@ -4766,11 +4766,14 @@ remoteDispatchDomainEventsRegister (struct qemud_server *server ATTRIBUTE_UNUSED
{ {
CHECK_CONN(client); CHECK_CONN(client);
/* Register event delivery callback */ if (virConnectDomainEventRegister(conn,
REMOTE_DEBUG("%s","Registering to relay remote events"); remoteRelayDomainEvent,
virConnectDomainEventRegister(conn, remoteRelayDomainEvent, client, NULL); client, NULL) < 0) {
remoteDispatchConnError(rerr, conn);
return -1;
}
if(ret) if (ret)
ret->cb_registered = 1; ret->cb_registered = 1;
return 0; return 0;
} }
@ -4786,11 +4789,12 @@ remoteDispatchDomainEventsDeregister (struct qemud_server *server ATTRIBUTE_UNUS
{ {
CHECK_CONN(client); CHECK_CONN(client);
/* Deregister event delivery callback */ if (virConnectDomainEventDeregister(conn, remoteRelayDomainEvent) < 0) {
REMOTE_DEBUG("%s","Deregistering to relay remote events"); remoteDispatchConnError(rerr, conn);
virConnectDomainEventDeregister(conn, remoteRelayDomainEvent); return -1;
}
if(ret) if (ret)
ret->cb_registered = 0; ret->cb_registered = 0;
return 0; return 0;
} }