Menu

#9 Seagull start-length problem

open
nobody
diameter (2)
5
2007-03-21
2007-03-21
memphis_wu
No

Seagull Version: 1.4.1

Description:
For diameter CCR-CCA message, when starting up seagull, it was not working properly, it will prompt a fatal error and exit:
"Fatal: Maximum number of values reached [65]".
There was no CCR-CCA messages sent.

Reason:
It was caused by L_data_size caculated in function "C_ProtocolBinary::decode_body()" at line 3113(./protocol-binary/C_ProtocolBinary.c). If L_data_size is zero under certain circumstances, "L_data_size -= L_header_body_size" will cause an error. for L_data_size is an unsigned long type, so the value will be set a very large number.

Discussion