summaryrefslogtreecommitdiff
path: root/usr/session_info.c
diff options
context:
space:
mode:
authorMike Christie <michaelc@cs.wisc.edu>2011-01-30 22:49:56 -0600
committerMike Christie <michaelc@cs.wisc.edu>2011-01-31 21:52:18 -0600
commit2c839a208413b88878ac56f138b5423bba893785 (patch)
tree4aa9cebd177375b6a85b9331ff0d0dfa4a777fb9 /usr/session_info.c
parent39d4ceb04f051c208ae7509d268a3871ffa194c5 (diff)
downloadopen-iscsi-2c839a208413b88878ac56f138b5423bba893785.tar.gz
iscsi tools: fix iscsiadm exit codes
iscsiadm/iscsistart return a mix of type of returns codes. Sometimes -1 and sometimes a EXYZ type of error code. This patch has them return a ISCSI_ERR value. See iscsiadm man page EXIT STATUS section for error code definitions.
Diffstat (limited to 'usr/session_info.c')
-rw-r--r--usr/session_info.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/usr/session_info.c b/usr/session_info.c
index cecd8e8..cded5e3 100644
--- a/usr/session_info.c
+++ b/usr/session_info.c
@@ -13,6 +13,7 @@
#include "initiator.h"
#include "iface.h"
#include "iscsid_req.h"
+#include "iscsi_err.h"
int session_info_create_list(void *data, struct session_info *info)
{
@@ -25,7 +26,7 @@ int session_info_create_list(void *data, struct session_info *info)
new = calloc(1, sizeof(*new));
if (!new)
- return ENOMEM;
+ return ISCSI_ERR_NOMEM;
memcpy(new, info, sizeof(*new));
INIT_LIST_HEAD(&new->list);
@@ -346,13 +347,15 @@ int session_info_print(int info_level, struct session_info *info)
break;
default:
log_error("Invalid info level %d. Try 0 - 3.", info_level);
- return EINVAL;
+ return ISCSI_ERR_INVAL;
}
if (err) {
log_error("Can not get list of active sessions (%d)", err);
return err;
- } else if (!num_found)
+ } else if (!num_found) {
log_error("No active sessions.");
+ return ISCSI_ERR_NO_OBJS_FOUND;
+ }
return 0;
}