case FR_RADIUS_CODE_ACCESS_ACCEPT:
case FR_RADIUS_CODE_ACCESS_REJECT:
case FR_RADIUS_CODE_ACCESS_CHALLENGE:
+ case FR_RADIUS_CODE_PROTOCOL_ERROR:
if (reply->data[1] != request->packet->id) {
ERROR("Invalid reply ID %d to Access-Request ID %d", reply->data[1], request->packet->id);
return -1;
case FR_RADIUS_CODE_ACCESS_CHALLENGE:
break;
+ case FR_RADIUS_CODE_PROTOCOL_ERROR:
+ stats.error++;
+ break;
default:
stats.rejected++;
}
"\tAccepted : %" PRIu64 "\n"
"\tRejected : %" PRIu64 "\n"
"\tLost : %" PRIu64 "\n"
+ "\tErrored : %" PRIu64 "\n"
"\tPassed filter : %" PRIu64 "\n"
"\tFailed filter : %" PRIu64,
stats.accepted,
stats.rejected,
stats.lost,
+ stats.error,
stats.passed,
stats.failed
);
uint64_t accepted; //!< Requests to which we received a accept
uint64_t rejected; //!< Requests to which we received a reject
uint64_t lost; //!< Requests to which we received no response
+ uint64_t error; //!< Requests which received a Protocol-Error response
uint64_t passed; //!< Requests which passed a filter
uint64_t failed; //!< Requests which failed a filter
} rc_stats_t;