From e245495fe6efa9105d6a0c614ae942f797898e3b Mon Sep 17 00:00:00 2001 From: Arran Cudbard-Bell Date: Wed, 7 Oct 2015 16:27:41 -0400 Subject: [PATCH] Set BEQUEATH_DETACH should Close #1308 --- .../rlm_sql/drivers/rlm_sql_oracle/rlm_sql_oracle.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/modules/rlm_sql/drivers/rlm_sql_oracle/rlm_sql_oracle.c b/src/modules/rlm_sql/drivers/rlm_sql_oracle/rlm_sql_oracle.c index 45483b90c0b7..abe4c919c575 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_oracle/rlm_sql_oracle.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_oracle/rlm_sql_oracle.c @@ -139,6 +139,18 @@ static int _sql_socket_destructor(rlm_sql_oracle_conn_t *conn) return 0; } +static int mod_instantiate(UNUSED CONF_SECTION *conf, UNUSED rlm_sql_config_t *config) +{ + /* + * This stops oracle instaclient from registering its own + * signal handler for SIGINT, which stops people Cntrl-Cing + * to terminate the server. + */ + setenv("BEQUEATH_DETACH", "YES", 0); + + return 0; +} + static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *config, UNUSED struct timeval const *timeout) { @@ -496,6 +508,7 @@ static int sql_affected_rows(rlm_sql_handle_t *handle, rlm_sql_config_t *config) extern rlm_sql_module_t rlm_sql_oracle; rlm_sql_module_t rlm_sql_oracle = { .name = "rlm_sql_oracle", + .mod_instantiate = mod_instantiate, .sql_socket_init = sql_socket_init, .sql_query = sql_query, .sql_select_query = sql_select_query,