<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Hello,</p>
<p>can you try with the patch from commit:</p>
<p> *
<a class="moz-txt-link-freetext" href="https://github.com/kamailio/kamailio/commit/eaec3aaac227eb4a8c48f93b45565d15d4a0a991">https://github.com/kamailio/kamailio/commit/eaec3aaac227eb4a8c48f93b45565d15d4a0a991</a></p>
<p>If works, then I will backport.</p>
<p>The transformation is designed for working with lines in sip
message that are terminated with CRLF, by searching for LF (\n) to
cover the unix/dos. If you want to remove \r, there is a string
trim transformation. I haven't seen lines finished only with \r
flowing in the SIP world, but feel free to add new features in the
code and propose pull requests via github project portal.</p>
<p>Cheers,<br>
Daniel<br>
</p>
<div class="moz-cite-prefix">On 06.10.21 16:45, Daniel Donoghue
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:BA5F20C6-0B7C-457E-858C-D0F5946CE576@freespee.com">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
I think I’ve found an edge case with the string transformations
for line.count:
<div class=""><br class="">
</div>
<div class="">In <font class="" face="Menlo">pv_trans.c</font>,
the following code does not appear to consider the last line if
there are multiple lines and the last one is not terminated with
<font class="" face="Menlo">\n</font>.</div>
<div class=""><br class="">
</div>
<div class="">
<pre style="background-color: rgb(255, 255, 255); font-family: Menlo; font-size: 9pt;" class="">case TR_LINE_COUNT:
n=0;
for(i=0; i<val->rs.len; i++)
if(val->rs.s[i]=='\n')
n++;
if(n==0 && val->rs.len>0)
n = 1;
val->flags = PV_TYPE_INT|PV_VAL_INT|PV_VAL_STR;
val->ri = n;
val->rs.s = int2str(val->ri, &val->rs.len);
break;
</pre>
<div class="">This means that my count is always one off unless
I force a blank line at the end of my string.</div>
</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">Also, this code does not cater for cases where there
is a different line terminator, such as CR or CRLF as is the
case when the string comes from a Mac or windows system,
respectively; it might be useful to have a transformation for
doing that as I’ve had to hack it using <font class=""
face="Menlo">s.replace</font> with hexadecimal escape codes (<font
class="" face="Menlo">\r</font> and <font class=""
face="Menlo">\n</font> do not work) in a variable.</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">With every blessing,</div>
<div class="">—</div>
<div class="">Daniel Donoghue</div>
<div class=""><br class="">
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions
* <a class="moz-txt-link-abbreviated" href="mailto:sr-users@lists.kamailio.org">sr-users@lists.kamailio.org</a>
Important: keep the mailing list in the recipients, do not reply only to the sender!
Edit mailing list options or unsubscribe:
* <a class="moz-txt-link-freetext" href="https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users">https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users</a>
</pre>
</blockquote>
<pre class="moz-signature" cols="72">--
Daniel-Constantin Mierla -- <a class="moz-txt-link-abbreviated" href="http://www.asipto.com">www.asipto.com</a>
<a class="moz-txt-link-abbreviated" href="http://www.twitter.com/miconda">www.twitter.com/miconda</a> -- <a class="moz-txt-link-abbreviated" href="http://www.linkedin.com/in/miconda">www.linkedin.com/in/miconda</a>
Kamailio Advanced Training - Online
Nov 08-11, 2021 (Europe Timezone) - Nov 22-25, 2021 (America Timezone)
* <a class="moz-txt-link-freetext" href="https://www.asipto.com/sw/kamailio-advanced-training-online/">https://www.asipto.com/sw/kamailio-advanced-training-online/</a></pre>
</body>
</html>