[RADIATOR] Custom AuthApplicationIds

Heikki Vatiainen hvn at open.com.au
Sat Jun 7 12:44:03 CDT 2014

On 06/07/2014 12:25 PM, Arthur wrote:

> DiameterDictionaryFile %D/diameter_attrs.dat
> <ServerDIAMETER>
>          OriginHost xx.xxx.xxxxx.xx
>          OriginRealm xxx.xxxxx.xx
>          Port 3868
>          SupportedVendorIds DictVendors
>          AuthApplicationIds ETSI_E4
> </ServerDIAMETER>

Hello Arthur,

you need to use ETSI-E4, not ETSI_E4. The names Radiator tries to
resolve are the same that it logs for the Application ID: header. The
list of expected names is in Radiator/DiaMsg.pm. It does not use the
values defined for Auth-Application-Id attribute in the dictionary. Look
for appcode_to_name in DiaMsg.pm.

I think this is how it has always worked with Radiator. What has changed
recently is that it logs when it can not resolve the name to a number.
Versions 4.11 and older were silent.

To summarise: use a name from DiaMsg.pm or the number.

The error about get_handle and Radius::DiaDict_16777231 is a bug in
4.13. It should have just defaulted to the base dictionary when it is
not able to load the application specific dictionary. This will be
patched for the next release.

One major Diameter change in 4.13 is how the dictionaries are handled.
The Diameter dictionaries are now application specific. This means you
should define DiaDict_16777231.pm, see DiaDict_4.pm for an example, and
put all the attributes application 16777231 uses in this module. You do
not need to add attributes that are already in DiaDict.pm. These base
attributes are loaded first and form the base for each application
specific dictionary.

If you do not wish to create an application specific dictionary, you
need to change DiaUtil.pm to handle the absence of the dictionary module
or wait for the patch. In this case Radiator will use the default
dictionary with the attributes you have specified with

Please let us know if the above gets it going.


Heikki Vatiainen <hvn at open.com.au>

Radiator: the most portable, flexible and configurable RADIUS server
anywhere. SQL, proxy, DBM, files, LDAP, NIS+, password, NT, Emerald,
Platypus, Freeside, TACACS+, PAM, external, Active Directory, EAP, TLS,
DIAMETER etc. Full source on Unix, Windows, MacOSX, Solaris, VMS,
NetWare etc.

More information about the radiator mailing list