Pre-Submission Checklist

Type Of Change

Checklist:

Description

The handling of the buffer and pointers in the siputils/chargingvector.c module was inconsistent and led to writing directly in the sip msg buffer, which resulted in the destruction of the SIP message as reported in the issue. During the testing more cases showed up where the PCV handling became ugly and inconsistent, especially in fault scenarios. Therefore more parts have been rewritten to account for those scenarios.

The $pcv(status) pseudo-variable has been added to reflect the state of the P-Charging-Vector in the message, whether it was parsed, had errors (no body or no icid-value), has been deleted or if none is there.

The sip_p_charging_vector() function returns a status value of what it has done, or if it was a no-op call.

A present PCV can only be generated once by the module, either after an explicit deletion or by a forced replacement. After that the call returns with no-op.


You can view, comment on, or merge this pull request online at:

  https://github.com/kamailio/kamailio/pull/3994

Commit Summary

File Changes

(3 files)

Patch Links:


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <kamailio/kamailio/pull/3994@github.com>