--with-developer

Arran Cudbard-Bell a.cudbardb at freeradius.org
Fri Nov 2 11:35:37 CET 2012


Behaviour of --with-developer is changing.

When --with-developer=yes compiler optimisation will now be disabled, and -g3 will be set, so gcc emitts the most complete debugging info (should include the value preprocessor macros and other useful things).

--with-developer=yes is automatically set if you're building from a git repo. So if you happen to be stress testing or pushing a pre-release version into production, you will want to set --with-developer=no, which will re-enable optimisation and set -g (2).

This will only be changed in master branch, because of issues with package maintainers passing --enable-developer when building binary packages.

In other news, ident has been enabled in the main repo, so all the little $Id$ tags that were left over from CVS will now be expanded on checkout to contain the latest commit hash for the file.

The format of RADIUSD_VERSION has now also changed. Previously it was the raw value from VERSION <major>.<minor>.<incremental> now it's a 6 digit integer <major><minor><incremental>.

This is because the C preprocessor can't do comparisons between floats, only integers, so if you needed to make your custom module build with multiple versions of the server, you couldn't.

Alan dislikes this approach and thinks it should die with fire, but if you don't like it, don't use it.

There's also a new xlat expansion %{dhcp_options:}. Some switch vendors offer DHCP to RADIUS gateways, but don't define their own VSAs to represent DHCP options, so include the DHCP options from the DHCP packet as an opaque blob of binary data packed into a single VSA.

Seeing as the server already has the code to parse dhcp options, it seemed like a fun hack to expose it as an xlat function. %{dhcp_options:} takes an attribute reference with qualifiers, and expands to the number of options in the blob. During expansion it adds all the options it finds in the blob to the request list with +=, using the FR DHCP dictionary.

If anyone knows of other vendors besides the lazy lazy French one doing this, please let me know.

-Arran



More information about the Freeradius-Devel mailing list