sip-router
9 years agoalso add pdb files to ignore list
Henning Westerholt [Thu, 2 Sep 2010 16:42:44 +0000 (18:42 +0200)]
also add pdb files to ignore list

9 years agoadd generated man pages to git ignore list, reported from Ovidiu
Henning Westerholt [Thu, 2 Sep 2010 16:40:20 +0000 (18:40 +0200)]
add generated man pages to git ignore list, reported from Ovidiu

9 years agodoc: generated counter lists
Andrei Pelinescu-Onciul [Wed, 1 Sep 2010 17:06:17 +0000 (19:06 +0200)]
doc: generated counter lists

9 years agodb_mysql: fixed driver error counter named
Andrei Pelinescu-Onciul [Wed, 1 Sep 2010 17:03:47 +0000 (19:03 +0200)]
db_mysql: fixed driver error counter named

Changed the name from "Mysql driver erros" to "driver_errors"
(spaces in the name, while legal, would make life harder).

9 years agodoc: *_list: minor sed script fix
Andrei Pelinescu-Onciul [Wed, 1 Sep 2010 11:01:34 +0000 (13:01 +0200)]
doc: *_list: minor sed script fix

Fix empty output for the  sed script for parsing/filtering makefiles
(in some cases the commands for the last line were not executed).

9 years agodoc: counter_list
Andrei Pelinescu-Onciul [Wed, 1 Sep 2010 09:36:50 +0000 (11:36 +0200)]
doc: counter_list

Added a new directory (doc/counter_list) complete with Makefiles
for auto-generating the lists with all the counters (stats)
implemented in the code.
Both .txt and docbook format are supported.

E.g.:
make -C doc/counter_list all  # generates the docbook and .txt
make -C doc/counter_list/docbook html # html from docbook

9 years agodoc: script to generate counter/stats list from C code
Andrei Pelinescu-Onciul [Wed, 1 Sep 2010 08:34:19 +0000 (10:34 +0200)]
doc: script to generate counter/stats list from C code

Added a perl script that generates counter documentation (name and
description) from a C file (based on the counter definition
array).
It can output txt or docbook.

9 years agoxcap_server: documentation updated
Daniel-Constantin Mierla [Wed, 1 Sep 2010 13:00:13 +0000 (15:00 +0200)]
xcap_server: documentation updated

9 years agocore: make READ_HTTP11 on if NO_READ_HTTP11 is defined
Daniel-Constantin Mierla [Wed, 1 Sep 2010 12:31:50 +0000 (14:31 +0200)]
core: make READ_HTTP11 on if NO_READ_HTTP11 is defined

- the code is anyhow enabled only when tcp_accept_no_cl is on
- suggested by Andrei

9 years agoxcap_server: components of xcap uri available in cfg
Daniel-Constantin Mierla [Wed, 1 Sep 2010 10:49:01 +0000 (12:49 +0200)]
xcap_server: components of xcap uri available in cfg

- the user id is embedded in xcap uri and is needed to decide what is
  the sip uri associated with it
- $xcapuri(name=>key) PV exported to config

9 years agocore: use req.start for http11 tcp read
Daniel-Constantin Mierla [Tue, 31 Aug 2010 21:24:04 +0000 (23:24 +0200)]
core: use req.start for http11 tcp read

- shifting back chunks is done with memmove - safer for overlapping
  buffers
- credits to Andrei Pelinescu-Onciul

9 years agoxcap_server: parser for xcap uri
Daniel-Constantin Mierla [Tue, 31 Aug 2010 21:20:00 +0000 (23:20 +0200)]
xcap_server: parser for xcap uri

- easier to get xcap uri attributes for doc and xpath selectors

9 years agoxcap_server: fixes to put and del ops
Daniel-Constantin Mierla [Tue, 31 Aug 2010 21:17:52 +0000 (23:17 +0200)]
xcap_server: fixes to put and del ops

- take in consideration xpath selectors

9 years agoMerge remote branch 'origin/carstenbock/dialog2'
Carsten Bock [Tue, 31 Aug 2010 14:47:14 +0000 (16:47 +0200)]
Merge remote branch 'origin/carstenbock/dialog2'

* origin/carstenbock/dialog2:
  - Updated docs
  - Use only call-id to get the h_id; otherwise dlg_list_dlg and dlg_terminate_dlg would require the from-tag, which is marked as optional in the docs
  - added support to terminate a single dialog by providing call-id and from-tag

9 years ago- Updated docs
Carsten Bock [Thu, 19 Aug 2010 17:46:37 +0000 (19:46 +0200)]
- Updated docs

9 years ago- Use only call-id to get the h_id; otherwise dlg_list_dlg and dlg_terminate_dlg...
Carsten Bock [Thu, 19 Aug 2010 17:38:55 +0000 (19:38 +0200)]
- Use only call-id to get the h_id; otherwise dlg_list_dlg and dlg_terminate_dlg would require the from-tag, which is marked as optional in the docs
- dlg_terminate_dlg does request the call-id to terminate a specific call (terminating all calls require a little more development)
- match_downstream_dialog does only match by call-id (see first point)

9 years agoMerge remote branch 'origin/carstenbock/rtpproxy2'
Carsten Bock [Tue, 31 Aug 2010 14:42:05 +0000 (16:42 +0200)]
Merge remote branch 'origin/carstenbock/rtpproxy2'

* origin/carstenbock/rtpproxy2:
  - Updated the patch to the latest changes (see previous commit)
  Add a parameter for the type of the RTP-Timeout-Socket (defaults to 1 for Kamailio-XMLRPC)
  Added the changes to the RTP-Proxy as a patch, for easier review.
  - fixed identation
  The Timeout socket must be sent with Update after session confirmation.
  Tiny typo.
  - added support for the retrieval of RTP-Statistics through $rtpstat

9 years ago- Updated the patch to the latest changes (see previous commit)
Carsten Bock [Mon, 30 Aug 2010 15:17:13 +0000 (17:17 +0200)]
- Updated the patch to the latest changes (see previous commit)
- removed pre-built rtpproxy

9 years agoAdd a parameter for the type of the RTP-Timeout-Socket (defaults to 1 for Kamailio...
Carsten Bock [Mon, 30 Aug 2010 14:48:49 +0000 (16:48 +0200)]
Add a parameter for the type of the RTP-Timeout-Socket (defaults to 1 for Kamailio-XMLRPC)

9 years agoAdded the changes to the RTP-Proxy as a patch, for easier review.
Carsten Bock [Tue, 24 Aug 2010 09:08:34 +0000 (11:08 +0200)]
Added the changes to the RTP-Proxy as a patch, for easier review.

9 years ago- fixed identation
Carsten Bock [Thu, 19 Aug 2010 17:55:01 +0000 (19:55 +0200)]
- fixed identation
- added modified RTP-Proxy (rtpproxy.tar.gz, based on latest git, needs some cleanup)
(please note, that you have to have libcurl-dev and libxmlrpc-client (same as for Kamailio-mi_xmlrpc) installed)
- some simple testing files (sample config, command line parameters for pjsua (used for testing) and rtpproxy)

9 years agoThe Timeout socket must be sent with Update after session confirmation.
Carsten Bock [Thu, 19 Aug 2010 13:33:30 +0000 (15:33 +0200)]
The Timeout socket must be sent with Update after session confirmation.

9 years agoTiny typo.
Carsten Bock [Wed, 18 Aug 2010 20:57:37 +0000 (22:57 +0200)]
Tiny typo.

9 years agodoc: rpc_list: improve DEFS parsing
Andrei Pelinescu-Onciul [Mon, 30 Aug 2010 21:02:48 +0000 (23:02 +0200)]
doc: rpc_list: improve DEFS parsing

When getting all the makefile variables from the Makefiles obey
also the conditionals (ifdef, ifndef) and make sure all the
makefiles rules are filtered out (to avoid miss-interpreting a
 shell variable assignment in a rule as a makefile variable).

9 years agodoc: select_list: parse DEFS from the modules Makefiles
Andrei Pelinescu-Onciul [Mon, 30 Aug 2010 11:32:18 +0000 (13:32 +0200)]
doc: select_list: parse DEFS from the modules Makefiles

Get all the variable definitions from each module Makefile and
evaluate them to get proper DEFS and INCLUDES (using sed to
extract the variable definitions, conditionals and filter-out
rules from the Makefiles, some hack to preserve the LFs and
$(eval) to evaluate the extracted stuff in the current context).
The DEFS and INCLUDES will be passed to the documentation
generating script (dump_selects.pl) as extra arguments for gcc.
This way the proper defines and includes will be used for each
module.
Fixes select list generation failure for modules with non-standard
include dirs.

9 years agodoc: cfg_list: parse DEFS from the modules Makefiles
Andrei Pelinescu-Onciul [Mon, 30 Aug 2010 11:32:18 +0000 (13:32 +0200)]
doc: cfg_list: parse DEFS from the modules Makefiles

Get all the variable definitions from each module Makefile and
evaluate them to get proper DEFS and INCLUDES (using sed to
extract the variable definitions, conditionals and filter-out
rules from the Makefiles, some hack to preserve the LFs and
$(eval) to evaluate the extracted stuff in the current context).
The DEFS and INCLUDES will be passed to the documentation
generating script (dump_cfg_defs.pl) as extra arguments for gcc. This
way the proper defines and includes will be used for each module.
Fixes cfg var. list generation failure for modules with kamailio module
interface or with non-standard include dirs.

9 years agodoc: rpc_list: parse DEFS from the modules Makefiles
Andrei Pelinescu-Onciul [Mon, 30 Aug 2010 11:46:33 +0000 (13:46 +0200)]
doc: rpc_list: parse DEFS from the modules Makefiles

Get all the variable definitions from each module Makefile and
evaluate them to get proper DEFS and INCLUDES (using sed to
extract the variable definitions from the Makefiles, some hack to
preserve the LFs and $(eval) to evaluate them in the current
context).
The DEFS and INCLUDES will be passed to the documentation
generating script (dump_rpcs.pl) as extra arguments for gcc. This
way the proper defines and includes will be used for each module.
Fixes rpc list generation failure for modules with kamailio module
interface or with non-standard include dirs.

9 years agodoc: dump_*.pl: support for gcc 4.5
Andrei Pelinescu-Onciul [Mon, 30 Aug 2010 11:28:17 +0000 (13:28 +0200)]
doc: dump_*.pl: support for gcc 4.5

- support for gcc 4.5 (gcc 4.5 will produce the translation unit
  dump file in the same directory as the output file, while older
  versions will always write it in the current directory).
- be more verbose on gcc error (display the complete gcc command line)
- cleanup temporary files even in the error case

9 years agodebian: added doc tools to build-depends
Andrei Pelinescu-Onciul [Mon, 30 Aug 2010 21:19:01 +0000 (23:19 +0200)]
debian: added  doc tools to build-depends

Added docbook2x, xsltproc and lynx to the debian package
Build-Depends. They are needed for building various parts of the
documentation: docbook2x for manual pages for some ser modules,
 xsltproc for pdf and html and lynx for txt/README.

Reported-by: Juha Heinanen jh tutpro com
9 years agocore: better condition for shifting back chunk payloads
Daniel-Constantin Mierla [Mon, 30 Aug 2010 17:15:52 +0000 (19:15 +0200)]
core: better condition for shifting back chunk payloads

9 years agomodules/db_berkeley Added a compatibility layer between libdb versions smaller than...
Marius Zbihlei [Mon, 30 Aug 2010 14:19:17 +0000 (17:19 +0300)]
modules/db_berkeley Added a compatibility layer between libdb versions smaller than 4.6 and libdb4.6

Cursor method close() is not present in versions smaller than 4.6 thus the module would not compile.
Also c_* methods are marked as deprecated so the compatibility layer should be extended as well.

9 years agoxhttp: don't set version to http/1.0
Daniel-Constantin Mierla [Mon, 30 Aug 2010 08:40:33 +0000 (10:40 +0200)]
xhttp: don't set version to http/1.0

- allow http/1.1 in replies

9 years agotcp: read http/1.1 chunked body
Daniel-Constantin Mierla [Mon, 30 Aug 2010 08:35:46 +0000 (10:35 +0200)]
tcp: read http/1.1 chunked body

- fix for xcap_server module that has to deal with PUT commands from
  xcap clients
- code withing READ_HTTP11 defines (for now off by default)
- conditioned by tcp_accept_no_cl=yes
- able to handle cases of "Expect: 100-continue" and "Transfer-Encoding:
  chunked"

9 years agoxcap_server: etag column is of type str
Daniel-Constantin Mierla [Mon, 30 Aug 2010 08:34:43 +0000 (10:34 +0200)]
xcap_server: etag column is of type str

9 years agopv(k): don't use CL for body PV
Daniel-Constantin Mierla [Mon, 30 Aug 2010 08:33:34 +0000 (10:33 +0200)]
pv(k): don't use CL for body PV

- size of body is computed from size of sip message

9 years agotextops(k): declare variables at function start
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:52:24 +0000 (21:52 +0200)]
textops(k): declare variables at function start

Fixes compilation with gcc < 3.0.

9 years agoregistrar(k): declare variables at function start
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:51:41 +0000 (21:51 +0200)]
registrar(k): declare variables at function start

Fixes compilation with gcc < 3.0.

9 years agodialog(k): declare variables at function start
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:50:59 +0000 (21:50 +0200)]
dialog(k): declare variables at function start

Fixes compilation for gcc < 3.0.

9 years agomediaproxy: declare variables at function start
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:49:58 +0000 (21:49 +0200)]
mediaproxy: declare variables at function start

Fixes compilation with gcc < 3.0.

9 years agomtree: declare variables at function start
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:47:56 +0000 (21:47 +0200)]
mtree: declare variables at function start

Fixes compilation for gcc < 3.0.

9 years agocore: don't use conditionals in macro arguments
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:46:19 +0000 (21:46 +0200)]
core: don't use conditionals in macro arguments

Older gccs (< 3.3) do not like #ifdefs inside macro calls.

9 years agocore: pointer aliasing warning fixes for fix_rval_expr
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:44:59 +0000 (21:44 +0200)]
core: pointer aliasing warning fixes for fix_rval_expr

9 years agocore: use const in some ip_addr functions
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:42:54 +0000 (21:42 +0200)]
core: use const in some ip_addr functions

Fixes various warnings (gcc-4.2) in other parts of the code.

9 years agocore: use const char*/str* for hash functions
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:40:45 +0000 (21:40 +0200)]
core: use const char*/str* for hash functions

9 years agocore: typo fix in dns_cache_clone_entry()
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:39:33 +0000 (21:39 +0200)]
core: typo fix in dns_cache_clone_entry()

9 years agotm: warnings and avp param init. fixes
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:33:45 +0000 (21:33 +0200)]
tm: warnings and avp param init. fixes

- wrong pointer was passed to pv_get_avp_name(): int instead of
  unsigned short ( => not the whole int was set and problems on
  big endian archs).
- unneeded pointer casts removed
- variables declared at the function start (otherwise older
  compilers won't work)

9 years agonat_traversal(k): register stats only ifdef STATISTICS
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:30:44 +0000 (21:30 +0200)]
nat_traversal(k): register stats only ifdef STATISTICS

9 years agosst(k): don't register statistics twice
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:29:28 +0000 (21:29 +0200)]
sst(k): don't register statistics twice

Include kstats_wraper.h and don't register statistics twice (both
form mod_init() and via the module exports structure).

9 years agonathelper(k): add missing mi.h include
Andrei Pelinescu-Onciul [Thu, 26 Aug 2010 19:22:50 +0000 (21:22 +0200)]
nathelper(k): add missing mi.h include

9 years agomodules_k/nathelper: better add_contact_alias/handle_ruri_alias fix
Juha Heinanen [Thu, 26 Aug 2010 16:54:49 +0000 (19:54 +0300)]
modules_k/nathelper: better add_contact_alias/handle_ruri_alias fix
- In add_contact_alias/handle_ruri_alias functions, use ~ char both
  as port and transport protocol separator in

9 years agomodules_k/nathelper: replaced offending contact alias character
Juha Heinanen [Wed, 25 Aug 2010 19:30:00 +0000 (22:30 +0300)]
modules_k/nathelper: replaced offending contact alias character
- Changed character ':' in contact alias paramater value to '~',
  because ':' is not allowed in value field of generic contact
  parameter.

9 years agolcr: fix load_gws() 2nd param
Andrei Pelinescu-Onciul [Wed, 25 Aug 2010 16:59:21 +0000 (18:59 +0200)]
lcr: fix load_gws() 2nd param

load_gws() 2nd optional parameter was treated like a fparam
instead of a pv_spec_t (the fixup_igp_pvar function converts the
first parameter to a fparam and the second one to a pv_spec).

9 years agotextopsx: changed fixup to use fixup_var_pve_str_12()
Daniel-Constantin Mierla [Wed, 25 Aug 2010 13:10:14 +0000 (15:10 +0200)]
textopsx: changed fixup to use fixup_var_pve_str_12()

- accept PVs inside str params

9 years agoauth: changed fixup to use fixup_var_pve_str_12()
Daniel-Constantin Mierla [Wed, 25 Aug 2010 13:09:26 +0000 (15:09 +0200)]
auth: changed fixup to use fixup_var_pve_str_12()

- accept PVs inside str params

9 years agosl: changed fixup to use fixup_var_pve_str_12()
Daniel-Constantin Mierla [Wed, 25 Aug 2010 11:33:20 +0000 (13:33 +0200)]
sl: changed fixup to use fixup_var_pve_str_12()

- accept PV inside reason phrase param

9 years agoModules_k:pv No warning message for branch(count) if no branches
Marius Zbihlei [Wed, 25 Aug 2010 11:08:35 +0000 (14:08 +0300)]
Modules_k:pv  No warning message for branch(count) if no branches

Patch by Carsten Gross (carsten.gross at 1und1 dot de)

9 years agocore: counters can be used before forking
Andrei Pelinescu-Onciul [Tue, 24 Aug 2010 19:14:50 +0000 (21:14 +0200)]
core: counters can be used before forking

Counters can now be incremented (not only registered) before
counters_prefork_init(). This enables using them also from
mod_init() or the fixup functions (not recommended but needed for
"indirect" calls).
Fixes crashes when modules call a counter using function from
mod_init() or a fixup.
E.g.: xlog(s) does a dns lookup from mod_init. If the lookup fails
the dns code will try to increment the new dns.failed_dns_request
counter.

Reported-by: Michal Matyska michal.matyska iptel org
9 years agocore: don't try to fixup to PVE in fixup_var_str*
Andrei Pelinescu-Onciul [Tue, 24 Aug 2010 10:27:08 +0000 (12:27 +0200)]
core: don't try to fixup to PVE in fixup_var_str*

Moved PVE (PV based format string) fixing attempts from
fixup_var_str* into new fixup functions: fixup_var_pve_str*.
If the argument is a constant string, fixup_var_pve_str*() will
try first "fixing" it to a PVAR, then (if it fails) to an AVP,
SELECT, PVE and finally normal string. If the PVE fixup returned a
"static" PVE, the result will be discarded and a normal string
fparam will be created (a little bit faster at runtime).
The only difference between fixup_var_str*() and
fixup_var_pve_str*() is that fixup_var_str*() will not attempt
fixing to PVE (does not support PV style format strings).

9 years agocore: fix mod_register & dlflags
Andrei Pelinescu-Onciul [Tue, 24 Aug 2010 09:43:36 +0000 (11:43 +0200)]
core: fix mod_register & dlflags

dlflags changes in mod_register() functions were discarded
resulting in modules failing to load.

9 years agocore: daemon status/pipe fixes & interface changes
Andrei Pelinescu-Onciul [Thu, 19 Aug 2010 18:03:54 +0000 (20:03 +0200)]
core: daemon status/pipe fixes & interface changes

- moved most of the daemon status stuff to daemonize.[ch].
- nicer interface (e.g. daemon_status_send(code))
- send/read only 1 byte which will be used as exit code
- send an error status on error (fixes
  "Main process exited before writing to pipe" error message)
- disabled the timeout.  Not needed (now a status is sent always
  and even an unlikely process crash before sending it is detected via
  the read() failure) and very hard to find a good value (some
  setups start very slow).
- close the pipe "send" fd in processes not needing it
- attempt to send back status only if dont_daemonize is not set
  (not only if dont_fork==0, it is possible to have forking
  enabled, but daemonize disabled: ser -DD)
- BSDed daemonize.[ch] and pt.[ch]

9 years ago- added support to terminate a single dialog by providing call-id and from-tag
Carsten Bock [Wed, 18 Aug 2010 20:35:01 +0000 (22:35 +0200)]
- added support to terminate a single dialog by providing call-id and from-tag
- can also be used to terminate all dialogs on proxy (e.g. before shutdown)

Missing: Provide optional headers for the BYE-Message.

9 years ago- added support for the retrieval of RTP-Statistics through $rtpstat
Carsten Bock [Wed, 18 Aug 2010 19:27:30 +0000 (21:27 +0200)]
- added support for the retrieval of RTP-Statistics through $rtpstat
- added support for sending a timeout socket towards the RTP-Proxy (for timeout notifications)

9 years agomodules*: add k stats. includes where needed
Andrei Pelinescu-Onciul [Wed, 18 Aug 2010 18:06:25 +0000 (20:06 +0200)]
modules*: add k stats. includes where needed

Add k statistics includes (../../lib/kcore/kstats_wrapper.h) for
modules using k statistics and missing them (needed after no
longer automatically including k stats via sr_module.h)

9 years agokstats: cleanup - move type defs. to separate file
Andrei Pelinescu-Onciul [Wed, 18 Aug 2010 18:01:31 +0000 (20:01 +0200)]
kstats: cleanup - move type defs. to separate file

- moved kamailio statistics type defs to kstats_types.h (from
  lib/kcore/kstats_wrapper.h). This removes core dependency on
  lib/kcore include files (the statistics types are needed for the
  kamailio module interface defs).
- removed statistics.h (it is obsolete, counters.h should be used
  instead and if somebody really needs it, it should include
  lib/kcore/kstats_wrapper.h or lib/kcore/statistics.h).

9 years agomodules_k/*: add missing lib/kmi/mi.h include
Andrei Pelinescu-Onciul [Wed, 18 Aug 2010 17:58:44 +0000 (19:58 +0200)]
modules_k/*: add missing lib/kmi/mi.h include

9 years agomi: cleanup - move type defs. to separate file
Andrei Pelinescu-Onciul [Wed, 18 Aug 2010 17:54:09 +0000 (19:54 +0200)]
mi: cleanup - move type defs. to separate file

Moved MI types defs to mi/mi_types.h (from lib/kmi/mi.h).
This removes core dependency on lib/mi include files
(mi types are needed for kamailio module interface defs).

9 years agotm: don't reply if the reply dest. is not yet set
Andrei Pelinescu-Onciul [Wed, 18 Aug 2010 16:39:43 +0000 (18:39 +0200)]
tm: don't reply if the reply dest. is not yet set

- relay_reply() doesn't attempt to send the reply if the reply
 destination is not yet fully set. This can happen for example
 if reply_to_via is set, Via contains a host name (and not an ip)
 and before having a chance to resolve the name a reply must be
 sent (reply for a message that hasn't been sent yet: very
 unlikely, but possible).

- use a membar_write() in init_rb(), before setting the reply send
  socket (the reply send socket is also used as a flag for a fully
  initialized reply destination and the membar_write() makes sure
  that everything else was written before the send socket and no
  re-ordering will take place).

9 years agotcp: fix double increment for the established stats
Andrei Pelinescu-Onciul [Wed, 18 Aug 2010 16:36:14 +0000 (18:36 +0200)]
tcp: fix double increment for the established stats

The counter/stats for established TCP connections were incremented
twice in the case of accept()-ed connections: once immediately
after the accept() and another time after the first packet
received or sent on the connection.
Now they are incremented only after the first successful send or
receive.

9 years agopua: updated devel API documentation
Daniel-Constantin Mierla [Wed, 18 Aug 2010 15:21:14 +0000 (17:21 +0200)]
pua: updated devel API documentation

- updated documentation to reflect latest source code
- patch by Nikita Kozlov

9 years agodns cache: fix manually inserted SRV record order
Miklos Tirpak [Wed, 18 Aug 2010 13:32:36 +0000 (15:32 +0200)]
dns cache: fix manually inserted SRV record order

The manually inserted SRV records thought the RPC interface
were not ordered by their priority and weight which resulted in
wrong SRV look-ups, i.e. not the highest priority record
was chosen first.

9 years agopdbt: fix two bugs in debian packaging
Henning Westerholt [Wed, 18 Aug 2010 11:45:37 +0000 (13:45 +0200)]
pdbt: fix two bugs in debian packaging

9 years agokamailio.cfg: db_url parameters are set via defined DBURL ID
Daniel-Constantin Mierla [Wed, 18 Aug 2010 09:01:46 +0000 (11:01 +0200)]
kamailio.cfg: db_url parameters are set via defined DBURL ID

- one value to be updated in order to change DB connectivity URL, i.e.,

 #!define DBURL "mysql://openser:openserrw@localhost/openser"
 modparam("xyz", "db_url", DBURL)

9 years agokamailio.cfg: updated users list email address
Daniel-Constantin Mierla [Wed, 18 Aug 2010 08:48:16 +0000 (10:48 +0200)]
kamailio.cfg: updated users list email address

- fixed small typo

9 years agortpproxy(k): renamed files to reflect module name
Daniel-Constantin Mierla [Tue, 17 Aug 2010 18:35:22 +0000 (20:35 +0200)]
rtpproxy(k): renamed files to reflect module name

9 years agomodules_k:rtpproxy - remove trailing whitespaces from documentation
Ovidiu Sas [Tue, 17 Aug 2010 17:10:33 +0000 (13:10 -0400)]
modules_k:rtpproxy - remove trailing whitespaces from documentation

9 years agomodules_k:rtpproxy - documentation update
Ovidiu Sas [Tue, 17 Aug 2010 17:06:25 +0000 (13:06 -0400)]
modules_k:rtpproxy - documentation update

9 years agokamailio.cfg: load rtpproxy module
Daniel-Constantin Mierla [Tue, 17 Aug 2010 15:26:36 +0000 (17:26 +0200)]
kamailio.cfg: load rtpproxy module

- update for nathelper module split
- rtpproxy module needed when WITH_NAT is defined

9 years agomodules_k:rtpproxy - silence a noisy probe
Ovidiu Sas [Tue, 17 Aug 2010 15:18:30 +0000 (11:18 -0400)]
modules_k:rtpproxy - silence a noisy probe

9 years agomodules_k:nathelper: updated documentation
Ovidiu Sas [Tue, 17 Aug 2010 14:22:58 +0000 (10:22 -0400)]
modules_k:nathelper: updated documentation

9 years agomodules_k:nathelper - restore nortpproxy_str parameter
Ovidiu Sas [Tue, 17 Aug 2010 14:16:03 +0000 (10:16 -0400)]
modules_k:nathelper - restore nortpproxy_str parameter

9 years agocore:sr_module If offsetof is not found in stddef.h define it as a macro
Marius Zbihlei [Tue, 17 Aug 2010 08:24:43 +0000 (11:24 +0300)]
core:sr_module If offsetof is not found in stddef.h define it as a macro

This is very unlikely; the macro uses the null pointer dereference

9 years agocore: use offsetof() extension to finding the memory offset of a member of a structure
Marius Zbihlei [Tue, 17 Aug 2010 08:12:38 +0000 (11:12 +0300)]
core: use offsetof() extension to finding the memory offset of a member of a structure

This replaces some undefined behavior code in the form of null pointer dereferences
Offsetof is present in stddef.h and it is fairly portable across platforms/compilers.

9 years agotmx: updated for last tm changes sr_3.1_freeze
Daniel-Constantin Mierla [Mon, 16 Aug 2010 16:35:45 +0000 (18:35 +0200)]
tmx: updated for last tm changes

- cancel_uacs() takes new type of paraeters
- reply function takes str* parameters

9 years agotm: update to make seas module work
Daniel-Constantin Mierla [Mon, 16 Aug 2010 16:32:48 +0000 (18:32 +0200)]
tm: update to make seas module work

- worked from patch provided by Elias Baixas
- new function to build uac cancel exported via API
- several parameters for reply functions converted from char* to str*
  as lenght was available or needed anyhow
- updated cancel_uacs() type definition

9 years agomakefile: for kamailio flavour define AS support
Daniel-Constantin Mierla [Mon, 16 Aug 2010 16:31:58 +0000 (18:31 +0200)]
makefile: for kamailio flavour define AS support

- needed by seas module

9 years agosl: quick update to provie reason param as str*
Daniel-Constantin Mierla [Mon, 16 Aug 2010 16:31:09 +0000 (18:31 +0200)]
sl: quick update to provie reason param as str*

9 years agocore: reason phrase param updated to be str*
Daniel-Constantin Mierla [Mon, 16 Aug 2010 16:28:03 +0000 (18:28 +0200)]
core: reason phrase param updated to be str*

- build_res_buf_from_sip_req() takes reply reason phrase parameter as
  str*
- many calls of this function have already the reason length

9 years agomodules_k:rtpproxy - updated examples
Ovidiu Sas [Mon, 16 Aug 2010 13:15:50 +0000 (09:15 -0400)]
modules_k:rtpproxy - updated examples

 - load rtpproxy module for rtpproxy functions

9 years agomodules_k:nathelper - updated examples
Ovidiu Sas [Mon, 16 Aug 2010 13:11:04 +0000 (09:11 -0400)]
modules_k:nathelper - updated examples

 - load rtpproxy module for rtpproxy functions

9 years agocore: fix fixup_pvar_pvar bug
Andrei Pelinescu-Onciul [Mon, 16 Aug 2010 12:13:17 +0000 (14:13 +0200)]
core: fix fixup_pvar_pvar bug

Fix typo-bug introduced in d756b6bfb:
fixup_pvar_pvar() called fixup_free_pvar_all() instead of
fixup_pvar_all().

Reported-by: Juha Heinanen jh tutpro com
9 years agoMakefile: enable rtpproxy
Ovidiu Sas [Mon, 16 Aug 2010 04:17:35 +0000 (00:17 -0400)]
Makefile: enable rtpproxy

9 years agomodules_k/nathelper: remove rtpproxy functionality from nathelper
Ovidiu Sas [Mon, 16 Aug 2010 04:14:20 +0000 (00:14 -0400)]
modules_k/nathelper: remove rtpproxy functionality from nathelper

9 years agomodules_k/rtpproxy: update files
Ovidiu Sas [Mon, 16 Aug 2010 04:09:42 +0000 (00:09 -0400)]
modules_k/rtpproxy: update files

 - remove nathelper functionality from rtpproxy code

9 years agomodules_k/rtpproxy: new module
Ovidiu Sas [Mon, 16 Aug 2010 04:05:11 +0000 (00:05 -0400)]
modules_k/rtpproxy: new module

 - copy initial files from nathelper to rtpproxy

9 years agoMerge remote branch 'origin/andrei/tcp_tls_changes'
Andrei Pelinescu-Onciul [Mon, 16 Aug 2010 00:18:57 +0000 (02:18 +0200)]
Merge remote branch 'origin/andrei/tcp_tls_changes'

Asynchronous TLS support and various TCP and io_wait fixes
(especially on BSDs).

* origin/andrei/tcp_tls_changes: (67 commits)
  tls: fix partial write on write-wants-read queue flush
  tls: more config vars displayed by the tls.options RPC
  tls: fix trailing space in new modparams
  tls: verbose debugging for SSL_ERROR_WANT_WRITE
  tls: add lib64 to LIBS path
  tls: doc - notes about enabling debugging
  tls: added debug log level modparam
  tls: modparams for ct write queue params
  tls: doc - new & async related config options
  tls: no tls_bio debugging by default
  tls: change read_ahead, buffers and freelist defaults
  tcp: verbose and safer close()
  tls: enable PARTIAL_WRITE by default
  tls: partial SSL_write support when reading (tls_read_f)
  tls: don't report SSL protocol errors as bugs
  tls: more consistent low memory checking
  io_wait: kqueue: use the entire array during too many errors fallback
  tcp: fix dispatching closed connections to tcp readers
  tcp: more complete error messages
  tls: support for partial encoding and reseting send_flags
  tcp: support for tls partial encoding
  tls: update & fix repeated send & delayed send
  tcp: change tls send callback interface
  tsend: s/char*/const char*/ in function params.
  tls: very verbose debug logging
  tls: fix tls_send out-of-mem on new connection
  tcp: force eof after read if write side hangup
  tcp: don't reset read_flags on RD_CONN_REPEAT_READ
  tls: deal with internal openssl buffering
  tls: fix initial state error handling
  tcp: more consistent IO_FD_CLOSING usage
  io_wait: kqueue: use a bigger array
  io_wait: kqueue: handle ENOENT and more robust error handling
  io_wait: fix kqueue io_wait_add & POLLIN
  io_wait: don't update FD watched status on error
  io_wait: fix kqueue and too many errors in changelist
  io_wait: fix: check for EV_ERROR for kqueue()
  tcp: fix fd passing bug
  tls: config option for sending close notify alerts
  tls: SSL_shutdown() only fully established connections
  tls: ssl_flush() fix and re-worked error reporting
  tls: tls.list rpc:  fix timeout & ip display
  tls: fix queue accounting
  tls: rpc: tls.list and tls.options update
  tls: config options for the internal queues
  tls: fix wrong wbio usage
  tls: fix empty files treatment
  tls: added tls.options rpc
  tls: migrated to the runtime cfg framework
  db_flatstore: updated get_abs_pathname use
  core: get_abs_pathname() uses now pkg_malloc()
  core: str.h - s/NULL/0/
  tls: doc - removed handshake_timeout and send_timeout
  tls: removed handshake_timeout and send_timeout
  tls: s/tls_cfg/tls_domains_cfg
  tls: added tls_info rpc
  tls: fix unregistered rpc commands
  tls: async support (major tls core rewrite)
  tls: tls_bio ctrl cmd support, fixes and debug
  tls: clear text write queue implementation
  tls: added a minimum overhead shm buffer queue
  tls: safer destroy_cfg
  tcp: new tls hooks interface and async tls changes
  tls: added custom memory based bio
  tcp: minor cleanups & spelling
  tcp: tcp_send() split in 3 smaller functions
  tcp: comments & new internal command

9 years agotls: fix partial write on write-wants-read queue flush andrei/tcp_tls_changes
Andrei Pelinescu-Onciul [Sun, 15 Aug 2010 23:12:41 +0000 (01:12 +0200)]
tls: fix partial write on write-wants-read queue flush

When flushing the queue the SSL_write() should be retried until
the queue is empty or there is an error (SSL_WANT_READ or
SSL_WANT_WRITE), since it is possible to have partial writes
smaller then the block size (SSL_write() will write at most 1
record when partial writes are enabled and with the
ssl_max_send_fragment option it is possible to set/have record
sizes smaller then typical writes).

9 years agotls: more config vars displayed by the tls.options RPC
Andrei Pelinescu-Onciul [Sun, 15 Aug 2010 23:04:18 +0000 (01:04 +0200)]
tls: more config vars displayed by the tls.options RPC

Added send_close_notify and debug to the list of displayed config
options.

9 years agotls: fix trailing space in new modparams
Andrei Pelinescu-Onciul [Sun, 15 Aug 2010 23:02:19 +0000 (01:02 +0200)]
tls: fix trailing space in new modparams

Fix typo (trailing space) in recently added modparams:
con_ct_wq_max, ct_wq_max and ct_wq_blk_size.

9 years agotls: verbose debugging for SSL_ERROR_WANT_WRITE
Andrei Pelinescu-Onciul [Sun, 15 Aug 2010 16:10:42 +0000 (18:10 +0200)]
tls: verbose debugging for SSL_ERROR_WANT_WRITE

Debugging messages for partial write and SSL_ERROR_WANT_WRITE
(enabled only if the tls module is compiled with
 -DTLS_WR_DEBUG and -DTLS_RD_DEBUG).

9 years agotls: add lib64 to LIBS path
Andrei Pelinescu-Onciul [Sun, 15 Aug 2010 16:07:38 +0000 (18:07 +0200)]
tls: add lib64 to LIBS path

Add default openssl install path on 64 bit systems
($(LOCALBASE)/ssl/lib64).