<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<meta charset="utf-8">
<pre style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; white-space: pre-wrap;">Here is the new function you added:
+int pv_get_raw_msg(sip_msg_t *msg, pv_param_t *param,
+ pv_value_t *res)
+{
+ str sb;
+ if(msg==NULL || res==NULL)
+ return -1;
+ sb.s = msg->buf;
+ sb.len = msg->len;
+ return pv_get_strval(msg, param, res, &sb);
+}
And next is the existing function for $mb:
</pre>
int pv_get_msg_buf(struct sip_msg *msg, pv_param_t *param,<br>
      pv_value_t *res)<br>
{<br>
   str s;<br>
   if(msg==NULL)<br>
      return -1;<br>
   <br>
   s.s = msg->buf;<br>
   s.len = msg->len;<br>
   return pv_get_strval(msg, param, res, &s);<br>
}<br>
<br>
They are the same apart of variables, so no matter where they will
be used (before or after event route processing), they point to the
same buffer, therefore they will return the same.<br>
<br>
Cheers,<br>
Daniel<br>
<br>
<div class="moz-cite-prefix">On 08/08/14 12:23, Muhammad Shahzad
wrote:<br>
</div>
<blockquote
cite="mid:CAFZQphykPmD7V-EnrC6Aam3iXMc5rSt+SKxOhDy6x3kCx+TCkQ@mail.gmail.com"
type="cite">
<div dir="ltr">
<div>
<div>humm, it is suppose to contain the original message that
was feed to event_route[network:msg], it would be same as
$mb till this route changes the contents of it stores the
new contents in $mb, then the $mb and $raw_msg would contain
different contents (original vs modified), this may be
useful in other routes, such as error_route or local_route
e.g. for comparison etc.<br>
<br>
</div>
Of course, you can remove this variable, since i don't have
any concrete use of it in my mind (other then comparing any
changes to message were done by event_route[network:msg] in
other routes).<br>
<br>
</div>
Thank you.<br>
<br>
<div>
<div>
<div><br>
</div>
</div>
</div>
</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On Fri, Aug 8, 2014 at 11:07 AM,
Daniel-Constantin Mierla <span dir="ltr"><<a
moz-do-not-send="true" href="mailto:miconda@gmail.com"
target="_blank">miconda@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"> I see that the code
introduces a new variable $raw_msg. It looks like being
message buffer which is returned by $mb, thus redundant.
<div>
<div class="h5"><br>
<br>
Cheers,<br>
Daniel<br>
<br>
<div>On 05/08/14 12:06, Muhammad Shahzad wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div>yup, i always download kamailio from official
repo mentioned here,<br>
<br>
<a moz-do-not-send="true"
href="http://www.kamailio.org/wiki/install/devel/git"
target="_blank">http://www.kamailio.org/wiki/install/devel/git</a><br>
<br>
</div>
Thank you.<br>
<br>
<div><br>
</div>
</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On Tue, Aug 5, 2014 at
3:03 PM, Daniel-Constantin Mierla <span
dir="ltr"><<a moz-do-not-send="true"
href="mailto:miconda@gmail.com"
target="_blank">miconda@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0
0 0 .8ex;border-left:1px #ccc
solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div> <br>
<div>On 05/08/14 11:55, Muhammad Shahzad
wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div>OK, created the patch finally...<br>
<br>
<a moz-do-not-send="true"
href="http://webrtc.voip-demos.com/0001-added-support-for-network-io-intercept.patch"
target="_blank">http://webrtc.voip-demos.com/0001-added-support-for-network-io-intercept.patch</a><br>
</div>
</div>
</blockquote>
<br>
</div>
I will look over it and push it to the
repository if everything is ok.
<div><br>
<br>
<blockquote type="cite">
<div dir="ltr">
<div> <br>
</div>
<div>I had to add all file i wanted to
include in the commit using "git
add", even the ones that are already
included in git repo, e.g. corex.xml
and corex_mod.c.<br>
</div>
</div>
</blockquote>
</div>
Strange, I never had to do it -- did you
clone the git repository from <a
moz-do-not-send="true"
href="http://sip-router.org"
target="_blank">sip-router.org</a>?
<div><br>
<blockquote type="cite">
<div dir="ltr">
<div><br>
</div>
I will just let you know i hit my head
on wall just 17 times to make it work.
:-(<br>
</div>
</blockquote>
</div>
Hopefully it was facebook wall :-)<span><font
color="#888888"><br>
<br>
Daniel</font></span>
<div>
<div><br>
<br>
<blockquote type="cite">
<div dir="ltr">
<div><br>
</div>
<div>Thank you.<br>
</div>
<div><br>
<br>
</div>
</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On Tue, Aug
5, 2014 at 2:40 PM,
Daniel-Constantin Mierla <span
dir="ltr"><<a
moz-do-not-send="true"
href="mailto:miconda@gmail.com"
target="_blank">miconda@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote"
style="margin:0 0 0
.8ex;border-left:1px #ccc
solid;padding-left:1ex">
<div bgcolor="#FFFFFF"
text="#000000"> You should
use:<br>
<br>
git format-patch -1
<sha><br>
<br>
The <sha> in your case
appears to be f415b0c . If it
is last commit, should work
with:<br>
<br>
git format-patch -1 HEAD<br>
<br>
Cheers,<br>
Daniel
<div>
<div><br>
<br>
<div>On 05/08/14 11:25,
Muhammad Shahzad wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div>
<div>
<div>These
commands do not
seem to work for
me. Can you
please do the
patch?<br>
<br>
</div>
1. adding files
work,<br>
<br>
git add
modules/corex/corex_nio.c
modules/corex/corex_nio.h<br>
<br>
git status<br>
# On branch master<br>
# Changes to be
committed:<br>
#Â Â (use "git
reset HEAD
<file>..."
to unstage)<br>
#<br>
#Â Â Â new file:Â Â
modules/corex/corex_nio.c<br>
#Â Â Â new file:Â Â
modules/corex/corex_nio.h<br>
#<br>
# Changes not
staged for commit:<br>
#Â Â (use "git add
<file>..."
to update what
will be committed)<br>
#Â Â (use "git
checkout --
<file>..."
to discard changes
in working
directory)<br>
#<br>
#Â Â Â modified:Â Â
modules/corex/README<br>
#Â Â Â modified:Â Â
modules/corex/corex_mod.c<br>
#Â Â Â modified:Â Â
modules/corex/doc/corex.xml<br>
#Â Â Â modified:Â Â
modules/corex/doc/corex_admin.xml<br>
#<br>
<br>
</div>
2. making commit
seems to work,<br>
<br>
git commit -m "added
support for network
io intercept."<br>
[master f415b0c]
added support for
network io
intercept.<br>
 2 files changed,
268 insertions(+)<br>
 create mode 100644
modules/corex/corex_nio.c<br>
 create mode 100644
modules/corex/corex_nio.h<br>
<br>
</div>
3. git format-patch
does not work,<br>
<div><br>
git format-patch<br>
<div>
<div>[no-output]<br>
</div>
<div><br>
</div>
<div>4. Also
tried,<br>
<br>
git format-patch
master --stdout<br>
</div>
<div>[no-output]<br>
</div>
<div><br>
git format-patch
master --stdout
>
/tmp/nio.patch<br>
<div>[no-output]<br>
</div>
<br>
<br>
</div>
<div>I don't know
what is wrong, i
have git version
1.7.10.4 on
debian wheezy. <br>
<br>
i miss
subversion so
badly...<br>
<br>
</div>
<div>Thank you.<br>
</div>
<div><br>
<br>
</div>
</div>
</div>
</div>
<div class="gmail_extra"><br>
<br>
<div
class="gmail_quote">On
Tue, Aug 5, 2014 at
1:26 PM,
Daniel-Constantin
Mierla <span
dir="ltr"><<a
moz-do-not-send="true"
href="mailto:miconda@gmail.com" target="_blank">miconda@gmail.com</a>></span>
wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0 0
0
.8ex;border-left:1px
#ccc
solid;padding-left:1ex">
<div
bgcolor="#FFFFFF"
text="#000000">
Can you do a
commit on your
local git clone
and send the
patch? It is
easier to review
the changes.
Practically use:<br>
<br>
- git add -- to
add new files<br>
- git commit --
to commit
changes<br>
- git
format-patch --
to get the
commit in a file<br>
<br>
Cheers,<br>
Daniel
<div>
<div><br>
<br>
<div>On
05/08/14
01:14,
Muhammad
Shahzad wrote:<br>
</div>
<blockquote
type="cite">
<div dir="ltr">
<div>
<div>Done all
changes as you
suggested.<br>
<br>
</div>
1. The code is
embedded in
corex module.
Two new files
added named,
corex_nio.h
and
corex_nio.c.
Some minor
changes to
corex_mod.c to
call the
methods
defined in
corex_nio.h.<br>
</div>
<div>2. Event
route name
changed to
event_route[network:msg].<br>
</div>
<div>3.
function name
changed from
is_msg_obfuscated
to
is_incoming.<br>
</div>
<div>4. one
additional
module
parameter is
added, named
network_io_intercept,
to enable
disable the
whole
functionality.
(default is
disabled)<br>
</div>
<div>5. The
README file
and doc folder
is updated
with relevant
documentation,
examples and
use cases etc.<br>
</div>
<div><br>
The code is
available for
review and
download at,<br>
<br>
<a
moz-do-not-send="true"
href="http://webrtc.voip-demos.com/corex.tbz2" target="_blank">http://webrtc.voip-demos.com/corex.tbz2</a><br>
<br>
</div>
<div>Regarding
the actual
encryption /
compression
etc., i am
planning to
add some
example PERL /
LUA scripts
later on.<br>
</div>
<div><br>
</div>
<div>Thank
you.<br>
</div>
<div><br>
<br>
</div>
</div>
<div
class="gmail_extra">
<br>
<br>
<div
class="gmail_quote">On
Mon, Aug 4,
2014 at 8:19
PM, Muhammad
Shahzad <span
dir="ltr"><<a
moz-do-not-send="true" href="mailto:shaheryarkh@gmail.com"
target="_blank">shaheryarkh@gmail.com</a>></span>
wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0
0 0
.8ex;border-left:1px
#ccc
solid;padding-left:1ex">
<div dir="ltr">
<div>
<div>Thank you
for your
valuable
suggestions, i
appreciate it.<br>
</div>
<div><br>
I agree about
module name,
in fact a
couple friends
have already
sent me email
privately
suggesting the
same. May be
something like
"nio_intercept"
would be
better, since
module only
intercepts the
network
in/output and
leaves it to
script writer
what to do
with it.<br>
<br>
</div>
Regarding
embedding in
corex, that is
interesting,
however i need
to go through
its code to
understand it
a bit and then
attempt to
embed it.
Later on, i
will create
separate
module which
import this
functionality
from corex and
do specific
tasks such as
compression
and faking
http etc.<br>
<br>
</div>
There is a
good progress
on doubango
SDK side as
well and at
least idoubs
would be ready
soon (7 to 10
days approx).
Then mobile
voip
developers can
fully test
this
functionality
at both ends.<br>
<div><br>
</div>
Anyways let me
look at corex
module and see
if and how can
i embed this.
In the
meantime more
suggestions
and comments
on this are
warmly welcome
from everyone.<br>
<div><br>
<div>Thank
you.<br>
<br>
<br>
</div>
</div>
</div>
<div>
<div>
<div
class="gmail_extra">
<br>
<br>
<div
class="gmail_quote">On
Mon, Aug 4,
2014 at 7:55
PM,
Daniel-Constantin
Mierla <span
dir="ltr"><<a
moz-do-not-send="true" href="mailto:miconda@gmail.com" target="_blank">miconda@gmail.com</a>></span>
wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0
0 0
.8ex;border-left:1px
#ccc
solid;padding-left:1ex">
Hello,<br>
<br>
I looked at
the code and
my conclusion
was that the
name is a bit
confusing.<br>
<br>
While indeed
you can do
obfuscation
using some
embedded
language or
other meanings
from the
config file,
the module
itself doesn't
do anything
related. It
executes an
event route
for network
packet in/out.<br>
<br>
Such
functionaly is
of course
useful, just
to remind the
given example
with
obfuscation.
But I think a
better name to
reflect the
behaviour
should be
given.<br>
<br>
Maybe
obfuscate
should be a
module that
implement some
algorithms for
obfuscations,
like you
mentions:<br>
- simply
compressing
(gz)<br>
- compressing
and
encapsulation
as body in a
http
request/reply<br>
- itv<br>
<br>
My proposal
would be:<br>
- either
rename the
module or
embed in
another module
(e.g., corex)
what was
developed for
these event
route
execution. The
event route
name should be
related to
network
reception/transmission
(e.g.,
network:msg).
Also the
is_obfuscated_msg()
should be
something like
is_incoming()<br>
- have a new
module
obfuscate to
implement some
algorithm as
proof of
concept (e.g.,
gzip -- i
guess plenty
of code from
gzcompress
module is very
useful just to
take from
there). Then
others may
contribute
more, as they
have new ideas
or from what
you listed
(http
ecapsulation
is at least
interesting,
considering
many allow
port 80 and
inspect for
http).<br>
<br>
Of course,
these are my
opinions, so
the discussion
can go on for
deciding on
how to
proceed.<br>
<br>
Cheers,<br>
Daniel
<div>
<div><br>
<br>
<br>
<br>
On 02/08/14
23:57,
Muhammad
Shahzad wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0
0 0
.8ex;border-left:1px
#ccc
solid;padding-left:1ex">
Hi,<br>
<br>
As already
discussed in
detail in
following
email thread,<br>
<br>
<a
moz-do-not-send="true"
href="https://www.mail-archive.com/sr-users@lists.sip-router.org/msg19922.html"
target="_blank">https://www.mail-archive.com/sr-users@lists.sip-router.org/msg19922.html</a><br>
<br>
The new
Kamailio
module
obfuscate is
ready for
testing and
can be
downloaded at,<br>
<br>
<a
moz-do-not-send="true"
href="http://webrtc.voip-demos.com/obfuscate.tbz2" target="_blank">http://webrtc.voip-demos.com/obfuscate.tbz2</a><br>
<br>
It contains
full code,
with
documentation
and usage
scenarios etc.<br>
<br>
Adding
Kamailio dev
team, can you
guys review
the code and
add this
module to
Kamailio trunk
if possible? I
will be
responsible
for its
maintenance
and bug fixes
etc. if any.<br>
<br>
Thank you.<br>
<br>
<br>
</blockquote>
<br>
</div>
</div>
<span><font
color="#888888">
-- <br>
Daniel-Constantin
Mierla - <a
moz-do-not-send="true"
href="http://www.asipto.com" target="_blank">http://www.asipto.com</a><br>
<a
moz-do-not-send="true"
href="http://twitter.com/#%21/miconda" target="_blank">http://twitter.com/#!/miconda</a>
- <a
moz-do-not-send="true"
href="http://www.linkedin.com/in/miconda" target="_blank">http://www.linkedin.com/in/miconda</a><br>
<br>
</font></span></blockquote>
</div>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
<pre cols="72">--
Daniel-Constantin Mierla - <a moz-do-not-send="true" href="http://www.asipto.com" target="_blank">http://www.asipto.com</a>
<a moz-do-not-send="true" href="http://twitter.com/#%21/miconda" target="_blank">http://twitter.com/#!/miconda</a> - <a moz-do-not-send="true" href="http://www.linkedin.com/in/miconda" target="_blank">http://www.linkedin.com/in/miconda</a></pre>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
<pre cols="72">--
Daniel-Constantin Mierla - <a moz-do-not-send="true" href="http://www.asipto.com" target="_blank">http://www.asipto.com</a>
<a moz-do-not-send="true" href="http://twitter.com/#%21/miconda" target="_blank">http://twitter.com/#!/miconda</a> - <a moz-do-not-send="true" href="http://www.linkedin.com/in/miconda" target="_blank">http://www.linkedin.com/in/miconda</a></pre>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
<pre cols="72">--
Daniel-Constantin Mierla - <a moz-do-not-send="true" href="http://www.asipto.com" target="_blank">http://www.asipto.com</a>
<a moz-do-not-send="true" href="http://twitter.com/#%21/miconda" target="_blank">http://twitter.com/#!/miconda</a> - <a moz-do-not-send="true" href="http://www.linkedin.com/in/miconda" target="_blank">http://www.linkedin.com/in/miconda</a></pre>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</div>
</div>
<pre cols="72">--
Daniel-Constantin Mierla
<div class=""><a moz-do-not-send="true" href="http://twitter.com/#%21/miconda" target="_blank">http://twitter.com/#!/miconda</a> - <a moz-do-not-send="true" href="http://www.linkedin.com/in/miconda" target="_blank">http://www.linkedin.com/in/miconda</a></div>
Next Kamailio Advanced Trainings 2014 - <a moz-do-not-send="true" href="http://www.asipto.com" target="_blank">http://www.asipto.com</a>
Sep 22-25, Berlin, Germany ::: Oct 15-17, San Francisco, USA</pre>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Daniel-Constantin Mierla
<a class="moz-txt-link-freetext" href="http://twitter.com/#!/miconda">http://twitter.com/#!/miconda</a> - <a class="moz-txt-link-freetext" href="http://www.linkedin.com/in/miconda">http://www.linkedin.com/in/miconda</a>
Next Kamailio Advanced Trainings 2014 - <a class="moz-txt-link-freetext" href="http://www.asipto.com">http://www.asipto.com</a>
Sep 22-25, Berlin, Germany ::: Oct 15-17, San Francisco, USA</pre>
</body>
</html>