On 22 Apr 2014, at 13:45, Chaigneau, Nicolas <nicolas.chaigneau@capgemini.com> wrote:
I've stumbled onto this also.
Suddenly my server started crashing. So I checked what I added recently. Removed stuff, until there was almost nothing left in the module, but still it crashed (on "request->packet->anything").
And then I noticed someone had changed the build procedure, adding "--enable-developer" to the FreeRADIUS build. (module wasn't built with "-DNDEBUG").
Since several (at least two !) people have had this problem, maybe something could be done.
Perhaps adding a public function in FreeRADIUS, which would allow to check if it was built or not with "NDEBUG" ? This would allow a module, upon instantiate, to check that its build is consistent with the server build, and if not complain and return "fail".
What do you think ?
I think it's dumb having a compiler macro which alters the fields in public structs in such a way that it causes these sorts of issues. We should either add NDEBUG to features.h, or always include those fields. I'm deferring to Alan D because IIRC he had strong objections to including NDEBUG in features.h last time this came up. Arran Cudbard-Bell <a.cudbardb@freeradius.org> FreeRADIUS Development Team FD31 3077 42EC 7FCD 32FE 5EE2 56CF 27F9 30A8 CAA2