diff options
author | Mike Christie <michaelc@cs.wisc.edu> | 2011-01-30 22:49:56 -0600 |
---|---|---|
committer | Mike Christie <michaelc@cs.wisc.edu> | 2011-01-31 21:52:18 -0600 |
commit | 2c839a208413b88878ac56f138b5423bba893785 (patch) | |
tree | 4aa9cebd177375b6a85b9331ff0d0dfa4a777fb9 /usr/session_info.c | |
parent | 39d4ceb04f051c208ae7509d268a3871ffa194c5 (diff) | |
download | open-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.c | 9 |
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; } |