From: Arran Cudbard-Bell Date: Tue, 22 May 2018 10:34:28 +0000 (+0600) Subject: Fixup autload in rlm_sqlcounter X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8963b28e412f950b7ecbee2627e6c3c71e309b49;p=thirdparty%2Ffreeradius-server.git Fixup autload in rlm_sqlcounter --- diff --git a/src/modules/rlm_sqlcounter/rlm_sqlcounter.c b/src/modules/rlm_sqlcounter/rlm_sqlcounter.c index e0d6dd6a945..13f712d45f2 100644 --- a/src/modules/rlm_sqlcounter/rlm_sqlcounter.c +++ b/src/modules/rlm_sqlcounter/rlm_sqlcounter.c @@ -100,11 +100,13 @@ fr_dict_autoload_t rlm_sqlcounter_dict[] = { }; static fr_dict_attr_t const *attr_user_name; +static fr_dict_attr_t const *attr_reply_message; static fr_dict_attr_t const *attr_session_timeout; extern fr_dict_attr_autoload_t rlm_sqlcounter_dict_attr[]; fr_dict_attr_autoload_t rlm_sqlcounter_dict_attr[] = { { .out = &attr_user_name, .name = "User-Name", .type = FR_TYPE_STRING, .dict = &dict_radius }, + { .out = &attr_reply_message, .name = "Reply-Message", .type = FR_TYPE_STRING, .dict = &dict_radius }, { .out = &attr_session_timeout, .name = "Session-Timeout", .type = FR_TYPE_UINT32, .dict = &dict_radius }, { NULL } }; @@ -473,9 +475,13 @@ static rlm_rcode_t CC_HINT(nonnull) mod_authorize(void *instance, UNUSED void *t * Check if check item > counter */ if (limit->vp_uint64 <= counter) { + VALUE_PAIR *vp; + /* User is denied access, send back a reply message */ snprintf(msg, sizeof(msg), "Your maximum %s usage time has been reached", inst->reset); - pair_make_reply("Reply-Message", msg, T_OP_EQ); + + MEM(pair_update_reply(&vp, attr_reply_message) >= 0); + fr_pair_value_strcpy(vp, msg); REDEBUG2("Maximum %s usage time reached", inst->reset); REDEBUG2("Rejecting user, %s value (%" PRIu64 ") is less than counter value (%" PRIu64 ")",