Boy, that was some real quality time with dbx...ugh.
I'm fairly confident that the issue is that portable.h isn't included and should have been as part of my patch. This worked in a development environment; I'll be putting it through some more tests and, most likely, in production soon (the =NULL workaround is just a time bomb).
On Thu, 24 May 2007, Aaron Richton wrote:
On Tue, 22 May 2007, Pierangelo Masarati wrote:
If that's an issue, I have no problem in explicitly setting that pointer to NULL.
I got some more dbx time on this, and it looks like that's a workaround for something that shouldn't be happening/needs to be fixed anyway. config_filename is always NULL at dlopen() time, just as it should be.
Calling lock(&libradius_mutex) apparently overwrites config_filename, and explicitly initializing to NULL somehow stops this from happening. I can't see anything wrong with radius.c (as in HEAD), though; if anybody can weigh in on this, it'd be much appreciated. I suppose it could still be a compiler or a libthread bug, but I'm still missing a smoking gun here.