Hi Heikki, Thanks for the detailed explanation. I've changed AuthApplicationIds to the ETSI-E4, made simple DiaDict_16777231.pm:
# DiaDict_16777231.pm # Dictionary for the Diameter ETSI-E4 application # $Id: DiaDict_16777231.pm,v 1.0 2014/01/27 21:57:44 hvn Exp $ package Radius::DiaDict_16777231; use strict; use warnings; # RCS version number of this module $Radius::DiaDict_16777231::VERSION = '$Revision: 1.0 $'; ##################################################################### sub get_handle { return *DATA; } # Here follows the Diameter attributes for Diameter Credit Control application __DATA__ VALUE Auth-Application-Id ETSI_E4 16777231 and it works. Thank you again. Regards, Arthur 7.06.2014 20:44, Heikki Vatiainen kirjutas: > 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 > DiameterDictionaryFile. > > Please let us know if the above gets it going. > > Thanks, > Heikki > _______________________________________________ radiator mailing list radiator@open.com.au http://www.open.com.au/mailman/listinfo/radiator