1.1.7 rlm_detail locking is broken

Brian De Wolf bldewolf at csupomona.edu
Fri Nov 30 02:46:50 CET 2007


Oh, how very annoying...

On 11/29/07 16:38, Nicolas Baradakis wrote:
> 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.

After looking back at that thread, I see you are correct.

> 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 think you might also be right on this as well...

> 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.

Well, since the 2.0 series doesn't have a stable yet, this is still somewhat of
an issue.  The rlm_detail/radrelay locking in 1.1.7 itself is horribly broken,
anyway.  One could argue that with that interaction I KNEW when I was losing
logs, though.

I'll look into modifying radrelay to observe the modified algorithm in the old
mail thread.  Using src/main/detail.c would feel more like a complete rewrite,
whereas I should only really need to tweak where/how it opens files.

Expect a patch, soon enough...



More information about the Freeradius-Devel mailing list