On Fri, Oct 26, 2012 at 10:59:17PM +0100, Brian Candler wrote:
https://github.com/candlerb/freeradius-server/commits/candlerb/redis_escapin...
commit d498c4c: pushes down the xlat functionality into rlm_redis_query, where it splits into arguments, xlats each one separately, and passes to redisCommandArgv.
(As a side effect of this, redis_escape_func is no longer used or needed, but I have left the code in there)
commit cfc6e78: fixes the trim functionality
I have given it a basic functional test, and it all seems OK.
Oops, I forgot to bounds-check argc; I'll add that in a bit. However running with the old patch (the one which unescaped =20 to space) overnight with a heavy accounting feed, after a few hours it stopped processing. Final log messages were: Sat Oct 27 04:58:32 2012 : Error: Received conflicting packet from client xxxxxxxx port 1813 - ID: 133 due to unfinished request 14570729. Giving up on old request. Sat Oct 27 04:58:32 2012 : Error: Received conflicting packet from client xxxxxxxx port 1813 - ID: 244 due to unfinished request 14570737. Giving up on old request. Sat Oct 27 04:58:33 2012 : Info: WARNING: Module rlm_rediswho became unblocked for request 14570725 Sat Oct 27 04:58:33 2012 : Info: WARNING: Module rlm_rediswho became unblocked for request 14570738 Sat Oct 27 04:58:33 2012 : Info: WARNING: Module rlm_rediswho became unblocked for request 14570729 Sat Oct 27 04:58:33 2012 : Info: WARNING: Module rlm_rediswho became unblocked for request 14570734 Sat Oct 27 04:58:33 2012 : Info: WARNING: Module rlm_rediswho became unblocked for request 14570728 Sat Oct 27 04:58:33 2012 : Info: WARNING: Module rlm_rediswho became unblocked for request 14570733 Sat Oct 27 04:58:33 2012 : Info: WARNING: Module rlm_rediswho became unblocked for request 14570724 Sat Oct 27 04:58:33 2012 : Info: WARNING: Module rlm_rediswho became unblocked for request 14570732 Sat Oct 27 04:58:36 2012 : Info: WARNING: Child is hung for request 14570724 in component accounting module . Any ideas what the problem might be? This is freeradius-2.2.0 plus the redis patches. Cheers, Brian.