Hello,
your pull request to merge the usrloc_dmq module was accepted few days ago.
I wrote in the merge comment some remarks about few thinks to be cared of:
- add the license text at the top of .c/.h files (license must be gplv2
or bsd, at your choice)
- variables to be declared at the beginning of functions or blocks, to
be sure it still compiles with old strict C compilers
Giving a second thought and considering the current common naming
patterns, I propose to rename the module from usrloc_dmq to dmq_usrloc
(we have similar for pua_usrloc or pua_reginfo) -- the idea is that the
main purpose of the module is extending dmq with a new data flow type,
rather than usrloc specific extensions. Is that ok for you? If you don't
have time for it in short term, I can do it.
Cheers,
Daniel
--
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Module: kamailio
Branch: master
Commit: 06557a25af96d3de05d0302f202e6c4cbd0b84e9
URL: https://github.com/kamailio/kamailio/commit/06557a25af96d3de05d0302f202e6c4…
Author: Olle E. Johansson <oej(a)edvina.net>
Committer: Olle E. Johansson <oej(a)edvina.net>
Date: 2015-01-12T14:58:33+01:00
async: Clarify difference between modparam("async","workers",x) and async_workers in core config
---
Modified: modules/async/README
Modified: modules/async/doc/async_admin.xml
---
Diff: https://github.com/kamailio/kamailio/commit/06557a25af96d3de05d0302f202e6c4…
Patch: https://github.com/kamailio/kamailio/commit/06557a25af96d3de05d0302f202e6c4…
---
diff --git a/modules/async/README b/modules/async/README
index 327dc68..ce4daf3 100644
--- a/modules/async/README
+++ b/modules/async/README
@@ -38,7 +38,8 @@ Daniel-Constantin Mierla
1.1. Set workers parameter
1.2. async_route usage
1.3. async_sleep usage
- 1.4. async_task_route usage
+ 1.4. async_workers usage
+ 1.5. async_task_route usage
Chapter 1. Admin Guide
@@ -97,7 +98,7 @@ Chapter 1. Admin Guide
3.1. workers (int)
Number of worker processes to be started to handle the asynchronous
- tasks.
+ tasks for async_route() and async_sleep().
Default value is 1.
@@ -170,6 +171,16 @@ exit;
The task is executed as soon as a process from asynchronous framework
is idle, there is no wait time for the task like for async_route(...).
+ To enable the core asynchronous framework, you need to set the
+ async_workers core parameter in the configuration file. See the core
+ cookbook for more information.
+
+ Example 1.4. async_workers usage
+...
+; Enable 8 worker processes used by async and other modules
+async_workers=8
+...
+
In case of internal errors, the function returns false, otherwise the
function exits the execution of the script at that moment (return 0
behaviour).
@@ -184,7 +195,7 @@ exit;
This function can be used from REQUEST_ROUTE.
- Example 1.4. async_task_route usage
+ Example 1.5. async_task_route usage
...
async_task_route("RESUME");
...
diff --git a/modules/async/doc/async_admin.xml b/modules/async/doc/async_admin.xml
index 18d9388..31ad797 100644
--- a/modules/async/doc/async_admin.xml
+++ b/modules/async/doc/async_admin.xml
@@ -70,7 +70,7 @@
<title><varname>workers</varname> (int)</title>
<para>
Number of worker processes to be started to handle the asynchronous
- tasks.
+ tasks for async_route() and async_sleep().
</para>
<para>
<emphasis>
@@ -175,6 +175,20 @@ exit;
async_route(...).
</para>
<para>
+ To enable the core asynchronous framework, you need to set the
+ <emphasis>async_workers</emphasis> core parameter in the configuration
+ file. See the core cookbook for more information.
+ <example>
+ <title><function>async_workers</function> usage</title>
+ <programlisting format="linespecific">
+...
+; Enable 8 worker processes used by async and other modules
+async_workers=8
+...
+</programlisting>
+ </example>
+ </para>
+ <para>
In case of internal errors, the function returns false, otherwise the
function exits the execution of the script at that moment (return
0 behaviour).
Module: kamailio
Branch: master
Commit: a8ecf651aca0629fdb3c8576d020e2e968b1f23e
URL: https://github.com/kamailio/kamailio/commit/a8ecf651aca0629fdb3c8576d020e2e…
Author: Andrey Rybkin <rybkin.a(a)bks.tv>
Committer: Andrey Rybkin <rybkin.a(a)bks.tv>
Date: 2015-01-12T16:46:13+03:00
Add GPLv2 license
---
Modified: modules/usrloc_dmq/usrloc_dmq.c
Modified: modules/usrloc_dmq/usrloc_sync.c
Modified: modules/usrloc_dmq/usrloc_sync.h
---
Diff: https://github.com/kamailio/kamailio/commit/a8ecf651aca0629fdb3c8576d020e2e…
Patch: https://github.com/kamailio/kamailio/commit/a8ecf651aca0629fdb3c8576d020e2e…
---
diff --git a/modules/usrloc_dmq/usrloc_dmq.c b/modules/usrloc_dmq/usrloc_dmq.c
index 8291664..381d45f 100644
--- a/modules/usrloc_dmq/usrloc_dmq.c
+++ b/modules/usrloc_dmq/usrloc_dmq.c
@@ -1,3 +1,25 @@
+/*
+* Copyright (C) 2014 Andrey Rybkin <rybkin.a(a)bks.tv>
+*
+* This file is part of Kamailio, a free SIP server.
+*
+* This file is free software; you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version
+*
+*
+* This file is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program; if not, write to the Free Software
+* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*
+*/
+
#include <stdio.h>
#include "../../sr_module.h"
#include "../../dprint.h"
@@ -76,11 +98,11 @@ static int child_init(int rank)
{
if (rank == PROC_MAIN) {
- LM_ERR("child_init PROC_MAIN\n");
+ LM_DBG("child_init PROC_MAIN\n");
return 0;
}
if(rank == PROC_INIT || rank == PROC_TCP_MAIN) {
- LM_ERR("child_init PROC_INIT\n");
+ LM_DBG("child_init PROC_INIT\n");
return 0;
}
return 0;
diff --git a/modules/usrloc_dmq/usrloc_sync.c b/modules/usrloc_dmq/usrloc_sync.c
index 3f049ff..1b980ed 100644
--- a/modules/usrloc_dmq/usrloc_sync.c
+++ b/modules/usrloc_dmq/usrloc_sync.c
@@ -1,3 +1,25 @@
+/*
+* Copyright (C) 2014 Andrey Rybkin <rybkin.a(a)bks.tv>
+*
+* This file is part of Kamailio, a free SIP server.
+*
+* This file is free software; you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version
+*
+*
+* This file is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program; if not, write to the Free Software
+* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*
+*/
+
#include "usrloc_sync.h"
#include "../usrloc/usrloc.h"
#include "../usrloc/ul_callback.h"
diff --git a/modules/usrloc_dmq/usrloc_sync.h b/modules/usrloc_dmq/usrloc_sync.h
index 383a62d..d5678a2 100644
--- a/modules/usrloc_dmq/usrloc_sync.h
+++ b/modules/usrloc_dmq/usrloc_sync.h
@@ -1,3 +1,25 @@
+/*
+* Copyright (C) 2014 Andrey Rybkin <rybkin.a(a)bks.tv>
+*
+* This file is part of Kamailio, a free SIP server.
+*
+* This file is free software; you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version
+*
+*
+* This file is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program; if not, write to the Free Software
+* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*
+*/
+
#ifndef _DMQ_SYNC_USRLOC_H_
#define _DMQ_SYNC_USRLOC_H_
CURL is used in a few parts of Kamailio
http://curl.haxx.se/docs/adv_20150108B.html
THis is a case where a carriage return is embedded into an url. Action C suggest that we make sure
those are stripped out before sending a URL to cURL.
May be an easy fix while waiting for people to upgrade their cURL.
Cheers,
/O