I noticed an unwanted behavior in rlm_sql.c In a while loop that fetches rows the return code of rlm_sql_fetch_row is not checked properly. If rlm_sql_fetch_row returns -1, then sql_get_grouplist should also fail, but it return 0 instead and in this case rlm_sql module returns "notfound" instead of "failed".
Original code: int num_groups = 0; .. while (rlm_sql_fetch_row(sqlsocket, inst) == 0) { ... } (inst->module->sql_finish_select_query)(sqlsocket, inst->config); return num_groups; -------------------------------- It would be nice if you could do something like while ((ret=rlm_sql_fetch_row(sqlsocket, inst)) == 0) { .. } if (ret < 0) { /* sql fetch failed */ num_groups = -1; } (inst->module->sql_finish_select_query)(sqlsocket, inst->config); return num_groups; -- View this message in context: http://www.nabble.com/SQL-fet_row%3A-error-handling-tp24211138p24211138.html Sent from the FreeRadius - User mailing list archive at Nabble.com. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html