Hello,
It seems that current implementation of the listed modules has a bug in the
"agregate_xmls" function in the "notify_body.c" files. Current
implementation is
"allowing" a single event entry in the XML body of the NOTIFY messages only.
This is caused by "unlinking the XML node" in the for loop "for (node =
p_root->children; node; node = node->next) {". After unlinking it cannot point
to another node. Therefore, it will never enter the aggregation loop again and
stop adding XML childs.... That´s the reason why we have the problem that DB
"body" entries of the presentity table, which include more than one event entry
(e.g. dialog), cannot be fully added to SIP NOTIFY messages. It is always
inserting the first event entry only.
We have tested a workaround with up to three (3) dialog entries (with module
presence_dialoginfo) in a single message body. This is working fine!
According RFC4235 it is allowed using more than onle dialog entry in a single
message body. Therefore, I´d like to ask, if the current behaviour can be seen
as "bug" or not?
regards,
Klaus