Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
proton-0.7
-
None
Description
The processing for incoming frames dispatches based in the integer number of the performative. To do this it uses a table which is initially zero filled.
On initialising a connection it fills out the table entries for performatives that it can handle, but leaves the others zero.
On an incoming frame it will call the routine in the table entry without checking if it is zero. So if it gets an unrecognised performative integer it will call through a zero pointer causing a SEGV.