<p>The design of uac_replace_from() with record-route parameters is expecting that From/To headers are not changed. If that is done, then the endpoint is supporting the rfc3261 and restore should not be needed - e.g., change only for the initial invite and for the rest change the from/to to anonymous values.</p>

<p>If one of the devices is not rfc3261, the solution is to use the other mechanism from uac_replace_from(), that stores the initial values in dialog variables and don't rely on sip message at all.</p>

<p>For clarification: "brings the from URI Parser to crash" -- what do you mean by that? Like throwing errors or causing a crash? The first is ok, the second needs to be fixed. For first case, perhaps it's still some space for improvements, eg., check if the result has only allowed chars in order to do replacement, otherwise just write error logs and keep the old value.</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/kamailio/kamailio/issues/833#issuecomment-256898683">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AF36ZQ-alDgHC_IukQr1Xv0we0CGglneks5q4d3IgaJpZM4KiOhD">mute the thread</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/AF36ZUhfgv7JGXqUQiUWlCst5WlOGr-wks5q4d3IgaJpZM4KiOhD.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/kamailio/kamailio/issues/833#issuecomment-256898683"></link>
  <meta itemprop="name" content="View Issue"></meta>
</div>
<meta itemprop="description" content="View this Issue on GitHub"></meta>
</div>

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/kamailio/kamailio","title":"kamailio/kamailio","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/kamailio/kamailio"}},"updates":{"snippets":[{"icon":"PERSON","message":"@miconda in #833: The design of uac_replace_from() with record-route parameters is expecting that From/To headers are not changed. If that is done, then the endpoint is supporting the rfc3261 and restore should not be needed - e.g., change only for the initial invite and for the rest change the from/to to anonymous values.\r\n\r\nIf one of the devices is not rfc3261, the solution is to use the other mechanism from uac_replace_from(), that stores the initial values in dialog variables and don't rely on sip message at all.\r\n\r\nFor clarification: \"brings the from URI Parser to crash\" -- what do you mean by that? Like throwing errors or causing a crash? The first is ok, the second needs to be fixed. For first case, perhaps it's still some space for improvements, eg., check if the result has only allowed chars in order to do replacement, otherwise just write error logs and keep the old value."}],"action":{"name":"View Issue","url":"https://github.com/kamailio/kamailio/issues/833#issuecomment-256898683"}}}</script>