aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Bolte <matthias.bolte@googlemail.com>2009-11-06 03:19:22 +0100
committerMatthias Bolte <matthias.bolte@googlemail.com>2009-11-07 00:15:38 +0100
commitec3fa12e94414879305870b8acde50e16582d7d5 (patch)
tree48d56186830bef42da99d18b98a2e319af03fb92
parentphyp: Don't use VIR_ALLOC if a stack variable is good enough (diff)
downloadlibvirt-ec3fa12e94414879305870b8acde50e16582d7d5.tar.gz
libvirt-ec3fa12e94414879305870b8acde50e16582d7d5.tar.bz2
libvirt-ec3fa12e94414879305870b8acde50e16582d7d5.zip
phyp: Use actual error code instead of 0
-rw-r--r--src/phyp/phyp_driver.c71
1 files changed, 28 insertions, 43 deletions
diff --git a/src/phyp/phyp_driver.c b/src/phyp/phyp_driver.c
index 6263fd28f..a92046a28 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;