1.1.7 rlm_detail locking is broken

Nicolas Baradakis nbk at sitadelle.com
Fri Nov 30 01:38:08 CET 2007


Brian De Wolf wrote:

> The oddest part about this is that I had found this thread:
> http://osdir.com/ml/freeradius.devel/2005-03/msg00112.html
> 
> It looks like the locking should work perfectly!  But it seems these changes
> never found their way into the 1.x series, despite having occurred two years
> ago.

This was a long time ago therefore I'm not sure I remember correctly.
In my memories the solution was in two parts: one algorithm for rlm_detail
and an other for radrelay.

> I poked around in CVS and found revision 1.43 which is when the corrected
> locking was added.  I took a diff of revision 1.42 and 1.43, and applied
> it by hand to 1.1.7.  I haven't had any complaints from freeradius about
> locking issues since.

I think this is only half of the fix. The error messages have disappeared
but I suspect there're still race conditions without the corresponding
changes to radrelay.c.

> I have attached the patch.  Is there any reason this never found its way
> into the 1.x series?  I see it's in the CVS head.

Probably because radrelay is deprecated in the 2.0 series. The file
"radrelay.c" was never properly fixed in CVS head. I must admit I
completely forgot about it after so much time.

The radrelay functionality is now integrated into the server core,
where you can find the second part of the locking algorithm.
See src/main/detail.c.

-- 
Nicolas Baradakis




More information about the Freeradius-Devel mailing list