We have been seeing the following errors in our logs for some time:
ERROR:core:pv_get_avp: local buffer length exceeded!
This error prints from multiple places in the code and we were not able to
isolate the source until now. I have been able to consistently reproduce the
error by calling avp_insert. It seems to happen every time I call it in a
particular place, but I cannot identify the cause of the buffer issue.
Logs from an occurrence are here: https://pastebin.com/HvmrXqii
The relevant section of my config script is here: https://pastebin.com/301U1yY2
I am currently running 1.11.11, which I know is unsupported. But I am trying to
determine whether it is an OpenSIPS issue or whether I am using this function
in a way that is not intended.
I am trying to use it to push values onto the end of an AVP stack. According to
the docs :
“If the index is greater than the count of values the value will be inserted at
So I have selected an index that is known to always be greater than the number
of elements (32) and am performing the insert at that index. I must do this
because there does not seem to be any way in OpenSIPS to determine the number
of values in an AVP except to traverse the entire list. I attempted to keep
track of the number of items in the destination list using another variable,
but avp_insert will not accept a variable as the index argument, only a number.
I also tried reading from the source AVP backwards, as opposed to putting them
in the destination AVP backwards as I do now, but there is no way to indicate
the last index of an AVP. The common method of using -1 as the index does not
work with AVPs.
Any help would be appreciated.
Users mailing list