lamersons wrote:
I need to store ESN value to my database, but it comes in format[3GPP2-ESN = "\000\000\000\000\000\000\00000BBF636"].
Change the dictionary to make it type "octets". That's likely the simplest fix.
Freeradius counts '\0' as the end of the line and puts blank instead of actual parameter value. Not only ESN comes in that format but [Acct-Session-Id = "0000000\000"] does too.
The NAS is broken. The Acct-Session-Id attribute is *supposed* to be UTF-8 text. NASes are *not* supposed to terminte strings with a NUL byte.
Does any1 have any ideas about this ?
File a bug with the NAS vendor about the Acct-Session-Id attribute with the NAS vendor. State that RFC 2866, Section 5.2 says that that the Acct-Session-Id is UTF-8 text. RFC 2865 Section 5 specifically states that this practice is wrong: Note that none of the types in RADIUS terminate with a NUL (hex 00). In particular, types "text" and "string" in RADIUS do not terminate with a NUL (hex 00). File a bug with the NAS about the 3GPP2-ESN attribute,too. The 3GPP2 specification (X.S0011-005-C_v2.0_050708.pdf) states (Page 12): ... A2 ESN 26/52 15 string 3GPP2_ESN ASCII string of ESN. See [4]. ... C1 Account Session ID 44 8 string Acct-Session-Id ASCII string of session ID So the NAS breaks both the IETF specifications and the 3GPP2 specifications. Who builds this stuff? Alan DeKok.