<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">I would argue that this is the documented behavior.  The topmost via: is added during message assembly, and remove_hf() acts against the *<b>received</b>* message.  The behavior of this is along the lines of:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">append_hf("X-Fake-Header: Foo");<o:p></o:p></p>
<p class="MsoNormal">remove_hf("X-Fake-Header");<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I don’t think that the reason it can’t be removed in the manner requested has to do directly with RFC compliance, but rather the way Kamailio’s architecture processes messages.  Could we have more clarification and better documentation
 around this fact?  Sure.  Is it a bug?  Since Kamailio’s reason for being is to function as a SIP proxy, and proper insertion of the Via: header is usually critical to that function it wouldn’t seem so.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><b>Kaufman<o:p></o:p></b></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> sr-users <sr-users-bounces@lists.kamailio.org> <b>
On Behalf Of </b>Federico Cabiddu<br>
<b>Sent:</b> Thursday, August 11, 2022 6:31 AM<br>
<b>To:</b> Kamailio (SER) - Users Mailing List <sr-users@lists.kamailio.org><br>
<b>Subject:</b> Re: [SR-Users] remove_hf() does not remove the complete line<o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">Hi Bernd,<o:p></o:p></p>
<div>
<p class="MsoNormal">as I said I am using it to remove Via headers inserted by previous hops since years with no issue.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Cheers,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Federico<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Thu, Aug 11, 2022 at 1:10 PM Bernd Krueger-Knauber <<a href="mailto:bkk@ednt.de">bkk@ednt.de</a>> wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<p class="MsoNormal">Hi,<br>
<br>
if I remove only 1 of 2 it is not against the standard, because one Via <br>
header line is still inside.<br>
<br>
But if I modify the documentation I would write:<br>
<br>
"Attention: it is not working with a Via header field"<br>
<br>
Then everyone thinks: ok, that is the only point where it will not work.<br>
But how can I, as not a kamailio programmer, can know if this is really <br>
the only case?<br>
<br>
So I would also write something which is not 100% correct.<br>
This has to be done by a guy who knows this, and not by me as a kamailio <br>
learner.<br>
<br>
Best regards,<br>
<br>
Bernd<br>
<br>
<br>
Am 11.08.2022 um 12:56 schrieb Henning Westerholt:<br>
> Hi Bernd,<br>
><br>
> The Via header is mandatory according to RFC 3261, section 20, in Requests:<br>
><br>
>     Header field              where       proxy ACK BYE CAN INV OPT REG<br>
>     ___________________________________________________________________<br>
> [..]<br>
>     Via                         R          amr   m   m   m   m   m   m<br>
><br>
> You are asking Kamailio to do something that is against the standard. So, some people might expect that it's not working in this case, and I personally would not call it a Bug.<br>
><br>
> Documentation would be never fully complete for a complex software like Kamailio, sure.<br>
> You could open a feature request or (even better) a pull request to improve the documentation for the textops module in the Kamailio github.<br>
><br>
> Cheers,<br>
><br>
> Henning<br>
><br>
<br>
<br>
-- <br>
EDNT GmbH<br>
Werner-von-Siemens-Strasse 7<br>
64625 Bensheim<br>
<a href="https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.ednt.de%2F&data=05%7C01%7Cbkaufman%40bcmone.com%7C6f4c1458c1e94ec20e3208da7b8d21af%7Cafc1818e7b6848568913201b9396c4fc%7C1%7C0%7C637958143348606038%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=B8QM%2BsRxyJNn6vRa8UnQEDs2bcfW1u4eaPdCOLGWVZY%3D&reserved=0" target="_blank">www.ednt.de</a><br>
<br>
Registergericht: Darmstadt<br>
Registernummer: 24972<br>
<br>
Geschäftsführerin: Kerstin Knapp<br>
<br>
<br>
<br>
__________________________________________________________<br>
Kamailio - Users Mailing List - Non Commercial Discussions<br>
  * <a href="mailto:sr-users@lists.kamailio.org" target="_blank">sr-users@lists.kamailio.org</a><br>
Important: keep the mailing list in the recipients, do not reply only to the sender!<br>
Edit mailing list options or unsubscribe:<br>
  * <a href="https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.kamailio.org%2Fcgi-bin%2Fmailman%2Flistinfo%2Fsr-users&data=05%7C01%7Cbkaufman%40bcmone.com%7C6f4c1458c1e94ec20e3208da7b8d21af%7Cafc1818e7b6848568913201b9396c4fc%7C1%7C0%7C637958143348762293%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=vu1h6sAfgkNhcEHeBveSNyI%2BHV3c6OpYGzr7Fo6NgMo%3D&reserved=0" target="_blank">
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users</a><o:p></o:p></p>
</blockquote>
</div>
</div>
</body>
</html>