diff options
author | Martin Willi <martin@revosec.ch> | 2014-10-09 16:48:29 +0200 |
---|---|---|
committer | Martin Willi <martin@revosec.ch> | 2014-10-10 11:42:18 +0200 |
commit | 67f9f09dd3aec23f8ebc514220c53833996dd1ea (patch) | |
tree | 725d2f77744e47d950c673aa61963542d1ea38db /src/swanctl/commands/list_conns.c | |
parent | d4d85135c5713f3bddebdc5ccc3c0bf0fa4b022a (diff) | |
download | strongswan-67f9f09dd3aec23f8ebc514220c53833996dd1ea.tar.bz2 strongswan-67f9f09dd3aec23f8ebc514220c53833996dd1ea.tar.xz |
swanctl: Fix exit codes based on errno
As fprintf() most likely sets errno, we should save it before printing the
error message.
Diffstat (limited to 'src/swanctl/commands/list_conns.c')
-rw-r--r-- | src/swanctl/commands/list_conns.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/swanctl/commands/list_conns.c b/src/swanctl/commands/list_conns.c index ec5da4bef..31ab9c40a 100644 --- a/src/swanctl/commands/list_conns.c +++ b/src/swanctl/commands/list_conns.c @@ -183,6 +183,7 @@ static int list_conns(vici_conn_t *conn) vici_res_t *res; command_format_options_t format = COMMAND_FORMAT_NONE; char *arg; + int ret; while (TRUE) { @@ -205,16 +206,18 @@ static int list_conns(vici_conn_t *conn) } if (vici_register(conn, "list-conn", list_cb, &format) != 0) { + ret = errno; fprintf(stderr, "registering for connections failed: %s\n", strerror(errno)); - return errno; + return ret; } req = vici_begin("list-conns"); res = vici_submit(req, conn); if (!res) { + ret = errno; fprintf(stderr, "list-conns request failed: %s\n", strerror(errno)); - return errno; + return ret; } if (format & COMMAND_FORMAT_RAW) { |