- too short fixed data length (invalid_length2.hex)
- premature end of record at data (premature_end_of_data1.hex,
premature_end_of_data2.hex)
- premature end of record at DIF (premature_end_of_dif1.hex,
premature_end_of_dif2.hex)
- premature end of record at variable length VIF
(premature_end_of_var_vif1.hex)
- premature end of record at VIF (premature_end_of_vif1.hex)
- too long variable length VIF (too_long_var_vif.hex)
- too many DIFE (too_many_dife.hex)
- too many VIFE (too_many_vife.hex)
- too short variable header (too_short_header.hex)
- replace non standard u_char with unsigned char (ANSI)
- advice splint to ignore variadic macros
- move declarations from the middle to top of functions (C90)
- replace local library includes <> to ""
Because of the multi telegrams it is impossible to use a fixed
buffer for XML output on the stack. Now the buffer is allocated on the
heap. These also leads to a change in return behaviour for all XML
functions, because it's possible that the buffer is NULL. For variable
data this buffer grows every time there are less than 1024 bytes left
for a new record.