release 3.2.2 devel

Alan DeKok aland at
Sat Mar 11 13:34:15 UTC 2023

On Mar 10, 2023, at 6:30 PM, Peter Lee <peterli2005 at> wrote:
> I need to build 3.2.2 on CentOS7 because we will need to do a little
> customization.  But before integrating our stuff yet, I got 3.2.2 compiling
> errors like
> "src/modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c:293:40: error:
> 'PW_EAP_PWD_PASSWORD_PREP' undeclared (first use in this function"
> and so on.

  That's because you're not using the standard build system.  It processes dictionaries and creates C macro names from them.  See the difference between "git grep", which looks for strings in checked-in files, and "grep -r", which looks for files in the local file system:

src/modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c:            vp = fr_pair_afrom_num(fake->packet, PW_EAP_PWD_PASSWORD_PREP, 0);
src/modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c:    vp = fr_pair_find_by_num(fake->config, PW_EAP_PWD_PASSWORD_PREP, 0, TAG_ANY);

src//include/attributes.h:#define PW_EAP_PWD_PASSWORD_PREP 1222
src//modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c:		vp = fr_pair_afrom_num(fake->packet, PW_EAP_PWD_PASSWORD_PREP, 0);
src//modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c:	vp = fr_pair_find_by_num(fake->config, PW_EAP_PWD_PASSWORD_PREP, 0, TAG_ANY);

  The "src/include/attributes.h" file is auto-generated by the build system from the dictionaries.

> So to build from 3.2.2 release tar file on CentOS 7 probably requires
> updates of freeradius-devel that contains header files for these attribute
> names? Thanks.

  No.  It requires you to use the build system included with FreeRADIUS.

  You're using some other build system, which you haven't described.  Or, you've change the default build system (again in a way you haven't described), and broken it.

  i.e. If the build works for everyone else and not for you, then something on your local system is broken.

  Alan DeKok.

More information about the Freeradius-Users mailing list