Thanks, your recomendations are implemented in new commits. Realy, I think, that free() is
called in function, that destroys avp, but when I inspect usr_avp, I understood that I
done a mistake. Similary, I added correct processing of malloc() errors, malloc() and
free() was replaced to pkg_malloc() and pkg_free() respectively. I look at SIP-AVP
processing and found one mistake (for '#' in string value case, I`m not considered
this option), and this corrected too in new commits. In my oppinion, not using memory
allocation in this section will be very traumatic for kamailio, because we don`t know, in
which place in memory we place our string values.
Discussion question: some vendors (as Cisco) put name in value too. Cisco placed
'=' between name part of value and value part of value. Some other vendors may put
some other symbols. In my code I checking '=',':' and '#' by
analogy with SIP-AVP pair syntax. Whether it is necessary or not?
---
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/14#issuecomment-68535016