[sr-dev] New Kamailio module Obfuscate
Daniel-Constantin Mierla
miconda at gmail.com
Fri Aug 8 08:07:57 CEST 2014
I see that the code introduces a new variable $raw_msg. It looks like
being message buffer which is returned by $mb, thus redundant.
Cheers,
Daniel
On 05/08/14 12:06, Muhammad Shahzad wrote:
> yup, i always download kamailio from official repo mentioned here,
>
> http://www.kamailio.org/wiki/install/devel/git
>
> Thank you.
>
>
>
>
> On Tue, Aug 5, 2014 at 3:03 PM, Daniel-Constantin Mierla
> <miconda at gmail.com <mailto:miconda at gmail.com>> wrote:
>
>
> On 05/08/14 11:55, Muhammad Shahzad wrote:
>> OK, created the patch finally...
>>
>> http://webrtc.voip-demos.com/0001-added-support-for-network-io-intercept.patch
>
> I will look over it and push it to the repository if everything is
> ok.
>
>
>>
>> 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.
> Strange, I never had to do it -- did you clone the git repository
> from sip-router.org <http://sip-router.org>?
>
>>
>> I will just let you know i hit my head on wall just 17 times to
>> make it work. :-(
> Hopefully it was facebook wall :-)
>
> Daniel
>
>
>>
>> Thank you.
>>
>>
>>
>>
>> On Tue, Aug 5, 2014 at 2:40 PM, Daniel-Constantin Mierla
>> <miconda at gmail.com <mailto:miconda at gmail.com>> wrote:
>>
>> You should use:
>>
>> git format-patch -1 <sha>
>>
>> The <sha> in your case appears to be f415b0c . If it is last
>> commit, should work with:
>>
>> git format-patch -1 HEAD
>>
>> Cheers,
>> Daniel
>>
>>
>> On 05/08/14 11:25, Muhammad Shahzad wrote:
>>> These commands do not seem to work for me. Can you please do
>>> the patch?
>>>
>>> 1. adding files work,
>>>
>>> git add modules/corex/corex_nio.c modules/corex/corex_nio.h
>>>
>>> git status
>>> # On branch master
>>> # Changes to be committed:
>>> # (use "git reset HEAD <file>..." to unstage)
>>> #
>>> # new file: modules/corex/corex_nio.c
>>> # new file: modules/corex/corex_nio.h
>>> #
>>> # Changes not staged for commit:
>>> # (use "git add <file>..." to update what will be committed)
>>> # (use "git checkout -- <file>..." to discard changes in
>>> working directory)
>>> #
>>> # modified: modules/corex/README
>>> # modified: modules/corex/corex_mod.c
>>> # modified: modules/corex/doc/corex.xml
>>> # modified: modules/corex/doc/corex_admin.xml
>>> #
>>>
>>> 2. making commit seems to work,
>>>
>>> git commit -m "added support for network io intercept."
>>> [master f415b0c] added support for network io intercept.
>>> 2 files changed, 268 insertions(+)
>>> create mode 100644 modules/corex/corex_nio.c
>>> create mode 100644 modules/corex/corex_nio.h
>>>
>>> 3. git format-patch does not work,
>>>
>>> git format-patch
>>> [no-output]
>>>
>>> 4. Also tried,
>>>
>>> git format-patch master --stdout
>>> [no-output]
>>>
>>> git format-patch master --stdout > /tmp/nio.patch
>>> [no-output]
>>>
>>>
>>> I don't know what is wrong, i have git version 1.7.10.4 on
>>> debian wheezy.
>>>
>>> i miss subversion so badly...
>>>
>>> Thank you.
>>>
>>>
>>>
>>>
>>> On Tue, Aug 5, 2014 at 1:26 PM, Daniel-Constantin Mierla
>>> <miconda at gmail.com <mailto:miconda at gmail.com>> wrote:
>>>
>>> Can you do a commit on your local git clone and send the
>>> patch? It is easier to review the changes. Practically use:
>>>
>>> - git add -- to add new files
>>> - git commit -- to commit changes
>>> - git format-patch -- to get the commit in a file
>>>
>>> Cheers,
>>> Daniel
>>>
>>>
>>> On 05/08/14 01:14, Muhammad Shahzad wrote:
>>>> Done all changes as you suggested.
>>>>
>>>> 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.
>>>> 2. Event route name changed to event_route[network:msg].
>>>> 3. function name changed from is_msg_obfuscated to
>>>> is_incoming.
>>>> 4. one additional module parameter is added, named
>>>> network_io_intercept, to enable disable the whole
>>>> functionality. (default is disabled)
>>>> 5. The README file and doc folder is updated with
>>>> relevant documentation, examples and use cases etc.
>>>>
>>>> The code is available for review and download at,
>>>>
>>>> http://webrtc.voip-demos.com/corex.tbz2
>>>>
>>>> Regarding the actual encryption / compression etc., i
>>>> am planning to add some example PERL / LUA scripts
>>>> later on.
>>>>
>>>> Thank you.
>>>>
>>>>
>>>>
>>>>
>>>> On Mon, Aug 4, 2014 at 8:19 PM, Muhammad Shahzad
>>>> <shaheryarkh at gmail.com <mailto:shaheryarkh at gmail.com>>
>>>> wrote:
>>>>
>>>> Thank you for your valuable suggestions, i
>>>> appreciate it.
>>>>
>>>> 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.
>>>>
>>>> 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.
>>>>
>>>> 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.
>>>>
>>>> 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.
>>>>
>>>> Thank you.
>>>>
>>>>
>>>>
>>>>
>>>> On Mon, Aug 4, 2014 at 7:55 PM, Daniel-Constantin
>>>> Mierla <miconda at gmail.com
>>>> <mailto:miconda at gmail.com>> wrote:
>>>>
>>>> Hello,
>>>>
>>>> I looked at the code and my conclusion was that
>>>> the name is a bit confusing.
>>>>
>>>> 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.
>>>>
>>>> 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.
>>>>
>>>> Maybe obfuscate should be a module that
>>>> implement some algorithms for obfuscations,
>>>> like you mentions:
>>>> - simply compressing (gz)
>>>> - compressing and encapsulation as body in a
>>>> http request/reply
>>>> - itv
>>>>
>>>> My proposal would be:
>>>> - 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()
>>>> - 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).
>>>>
>>>> Of course, these are my opinions, so the
>>>> discussion can go on for deciding on how to
>>>> proceed.
>>>>
>>>> Cheers,
>>>> Daniel
>>>>
>>>>
>>>>
>>>>
>>>> On 02/08/14 23:57, Muhammad Shahzad wrote:
>>>>
>>>> Hi,
>>>>
>>>> As already discussed in detail in following
>>>> email thread,
>>>>
>>>> https://www.mail-archive.com/sr-users@lists.sip-router.org/msg19922.html
>>>>
>>>> The new Kamailio module obfuscate is ready
>>>> for testing and can be downloaded at,
>>>>
>>>> http://webrtc.voip-demos.com/obfuscate.tbz2
>>>>
>>>> It contains full code, with documentation
>>>> and usage scenarios etc.
>>>>
>>>> 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.
>>>>
>>>> Thank you.
>>>>
>>>>
>>>>
>>>> --
>>>> Daniel-Constantin Mierla - http://www.asipto.com
>>>> http://twitter.com/#!/miconda
>>>> <http://twitter.com/#%21/miconda> -
>>>> http://www.linkedin.com/in/miconda
>>>>
>>>>
>>>>
>>>
>>> --
>>> Daniel-Constantin Mierla -http://www.asipto.com
>>> http://twitter.com/#!/miconda <http://twitter.com/#%21/miconda> -http://www.linkedin.com/in/miconda
>>>
>>>
>>
>> --
>> Daniel-Constantin Mierla -http://www.asipto.com
>> http://twitter.com/#!/miconda <http://twitter.com/#%21/miconda> -http://www.linkedin.com/in/miconda
>>
>>
>
> --
> Daniel-Constantin Mierla -http://www.asipto.com
> http://twitter.com/#!/miconda <http://twitter.com/#%21/miconda> -http://www.linkedin.com/in/miconda
>
>
--
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Next Kamailio Advanced Trainings 2014 - http://www.asipto.com
Sep 22-25, Berlin, Germany ::: Oct 15-17, San Francisco, USA
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-dev/attachments/20140808/24f575ed/attachment-0001.html>
More information about the sr-dev
mailing list