* Don't return members of a freed structure
* Add reconnection_delay to rlm_ldap
So that incorrect bind credentials don't result in a spinning
connection.
case FR_LDAP_STATE_ERROR:
STATE_TRANSITION(FR_LDAP_STATE_INIT);
fr_connection_signal_reconnect(c->conn, FR_CONNECTION_FAILED);
- break;
+ /*
+ * The old connection has been freed, so specifically return the INIT state
+ */
+ return FR_LDAP_STATE_INIT;
}
return c->state;
{ FR_CONF_OFFSET("idle_timeout", FR_TYPE_TIME_DELTA, rlm_ldap_t, handle_config.idle_timeout), .dflt = "300" },
+ { FR_CONF_OFFSET("reconnection_delay", FR_TYPE_TIME_DELTA, rlm_ldap_t, handle_config.reconnection_delay), .dflt = "10" },
+
CONF_PARSER_TERMINATOR
};