From: Gert Doering Date: Mon, 20 Jul 2020 07:08:02 +0000 (+0200) Subject: Separate handling of non-deferred return values for client-connect-scripts. X-Git-Tag: v2.5_beta1~51 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3658e57797656e63e35be65397101a7191897272;p=thirdparty%2Fopenvpn.git Separate handling of non-deferred return values for client-connect-scripts. (Only) on "CC_RET_SUCCESS", run multi_client_connect_post(). On "CC_RET_FAILURE", add missing log line, do not call ..._post(). Signed-off-by: Gert Doering Acked-by: Arne Schwabe Message-Id: <20200720070802.18819-1-gert@greenie.muc.de> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg20488.html Signed-off-by: Gert Doering --- diff --git a/src/openvpn/multi.c b/src/openvpn/multi.c index d9456f34f..622eb2eeb 100644 --- a/src/openvpn/multi.c +++ b/src/openvpn/multi.c @@ -2171,13 +2171,19 @@ multi_client_connect_script_deferred(struct multi_context *m, ret = CC_RET_DEFERRED; } - if (ret != CC_RET_DEFERRED) + if (ret == CC_RET_SUCCEEDED) { ccs_delete_deferred_ret_file(mi); multi_client_connect_post(m, mi, ccs->config_file, option_types_found); ccs_delete_config_file(mi); } + if (ret == CC_RET_FAILED) + { + msg(M_INFO, "MULTI: deferred --client-connect script returned CC_RET_FAILED"); + ccs_delete_deferred_ret_file(mi); + ccs_delete_config_file(mi); + } return ret; }