--- src/phyp/phyp_driver.c | 71 +++++++++++++++++++----------------------------- 1 files changed, 28 insertions(+), 43 deletions(-) diff --git a/src/phyp/phyp_driver.c b/src/phyp/phyp_driver.c index 6263fd2..a92046a 100644 --- a/src/phyp/phyp_driver.c +++ b/src/phyp/phyp_driver.c @@ -61,6 +61,10 @@ #define VIR_FROM_THIS VIR_FROM_PHYP +#define PHYP_ERROR(conn, code, fmt...) \ + virReportErrorHelper(conn, VIR_FROM_PHYP, code, __FILE__, __FUNCTION__, \ + __LINE__, fmt) + /* * URI: phyp://user@[hmc|ivm]/managed_system * */ @@ -86,23 +90,14 @@ phypOpen(virConnectPtr conn, return VIR_DRV_OPEN_DECLINED; if (conn->uri->server == NULL) { - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, "%s", - _("Missing server name in phyp:// URI")); - return VIR_DRV_OPEN_ERROR; - } - - if (conn->uri->path == NULL) { - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, "%s", - _("Missing managed system name in phyp:// URI")); + PHYP_ERROR(conn, VIR_ERR_INTERNAL_ERROR, + _("Missing server name in phyp:// URI")); return VIR_DRV_OPEN_ERROR; } if (conn->uri->path == NULL) { - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, "%s", - _("Missing path name in phyp:// URI")); + PHYP_ERROR(conn, VIR_ERR_INTERNAL_ERROR, + _("Missing managed system name in phyp:// URI")); return VIR_DRV_OPEN_ERROR; } @@ -148,16 +143,14 @@ phypOpen(virConnectPtr conn, *char_ptr = '\0'; if (escape_specialcharacters(conn->uri->path, string, len) == -1) { - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, "%s", - _("Error parsing 'path'. Invalid characters.")); + PHYP_ERROR(conn, VIR_ERR_INTERNAL_ERROR, + _("Error parsing 'path'. Invalid characters.")); goto failure; } if ((session = openSSHSession(conn, auth, &internal_socket)) == NULL) { - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, "%s", - _("Error while opening SSH session.")); + PHYP_ERROR(conn, VIR_ERR_INTERNAL_ERROR, + _("Error while opening SSH session.")); goto failure; } //conn->uri->path = string; @@ -244,9 +237,8 @@ openSSHSession(virConnectPtr conn, virConnectAuthPtr auth, ret = getaddrinfo(hostname, "22", &hints, &ai); if (ret != 0) { - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, - _("Error while getting %s address info"), hostname); + PHYP_ERROR(conn, VIR_ERR_INTERNAL_ERROR, + _("Error while getting %s address info"), hostname); goto err; } @@ -262,9 +254,8 @@ openSSHSession(virConnectPtr conn, virConnectAuthPtr auth, cur = cur->ai_next; } - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, - _("Failed to connect to %s"), hostname); + PHYP_ERROR(conn, VIR_ERR_INTERNAL_ERROR, + _("Failed to connect to %s"), hostname); freeaddrinfo(ai); goto err; @@ -283,9 +274,8 @@ openSSHSession(virConnectPtr conn, virConnectAuthPtr auth, while ((rc = libssh2_session_startup(session, sock)) == LIBSSH2_ERROR_EAGAIN) ; if (rc) { - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, "%s", - _("Failure establishing SSH session.")); + PHYP_ERROR(conn, VIR_ERR_INTERNAL_ERROR, + _("Failure establishing SSH session.")); goto disconnect; } @@ -307,9 +297,8 @@ openSSHSession(virConnectPtr conn, virConnectAuthPtr auth, }; if (!auth || !auth->cb) { - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, "%s", - _("No authentication callback provided.")); + PHYP_ERROR(conn, VIR_ERR_AUTH_FAILED, + _("No authentication callback provided.")); goto disconnect; } @@ -319,9 +308,8 @@ openSSHSession(virConnectPtr conn, virConnectAuthPtr auth, } if (!hasPassphrase) { - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, "%s", - _("Required credentials are not supported.")); + PHYP_ERROR(conn, VIR_ERR_AUTH_FAILED, + _("Required credentials are not supported.")); goto disconnect; } @@ -329,18 +317,16 @@ openSSHSession(virConnectPtr conn, virConnectAuthPtr auth, (auth->cb) (creds, ARRAY_CARDINALITY(creds), auth->cbdata); if (res < 0) { - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, "%s", - _("Unable to fetch credentials.")); + PHYP_ERROR(conn, VIR_ERR_AUTH_FAILED, + _("Unable to fetch credentials.")); goto disconnect; } if (creds[0].result) { password = creds[0].result; } else { - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, "%s", - _("Unable to get password certificates")); + PHYP_ERROR(conn, VIR_ERR_AUTH_FAILED, + _("Unable to get password certificates")); goto disconnect; } @@ -350,9 +336,8 @@ openSSHSession(virConnectPtr conn, virConnectAuthPtr auth, LIBSSH2_ERROR_EAGAIN) ; if (rc) { - virRaiseError(conn, NULL, NULL, 0, VIR_FROM_PHYP, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, "%s", - _("Authentication failed")); + PHYP_ERROR(conn, VIR_ERR_AUTH_FAILED, + _("Authentication failed")); goto disconnect; } else goto exit; -- 1.6.0.4 -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list