sip-router
12 years agoMerge commit 'origin/ser_modules'
Andrei Pelinescu-Onciul [Fri, 17 Jul 2009 15:45:40 +0000 (17:45 +0200)]
Merge commit 'origin/ser_modules'

* commit 'origin/ser_modules':
  - socket support
  - more -h messages
  - minor ERR message improvment
  presence_b2b: fix from & to header access
  rr: fix from header access

12 years agoMerge branch 'cvs-head' of ssh://git.sip-router.org/ser_modules into ser_modules
Andrei Pelinescu-Onciul [Fri, 17 Jul 2009 15:37:32 +0000 (17:37 +0200)]
Merge branch 'cvs-head' of ssh://git.sip-router.org/ser_modules into ser_modules

* 'cvs-head' of ssh://git.sip-router.org/ser_modules:
  - socket support
  - more -h messages
  - minor ERR message improvment
  presence_b2b: fix from & to header access
  rr: fix from header access

12 years agocore: expr =~ fixup order fix
Andrei Pelinescu-Onciul [Fri, 17 Jul 2009 15:10:07 +0000 (17:10 +0200)]
core: expr =~  fixup order fix

The fixup for built-in expressions were in the wrong order: first
RE and then RVE/RVALs, but a RVE/RVALs could be optimized away to
a string => because of the wrong order at runtime the match
operator might end up being used with a normal string instead of a
RE.
Now the order is RVE/RVALs fixup & optimisations, string fixups
(len) and then RE fixups (so that by the time the RE fixup is run
 we know the final type of its operand).

Reported-by: Nils Ohlmeier nils at iptel org
12 years agodomain: Documentation of internal API
Jan Janak [Fri, 17 Jul 2009 09:34:24 +0000 (11:34 +0200)]
domain: Documentation of internal API

Add docbook documentation for the internal API of domain module.

12 years agodomain: Add internal function is_domain_local
Jan Janak [Fri, 17 Jul 2009 09:10:51 +0000 (11:10 +0200)]
domain: Add internal function is_domain_local

Add internal function is_domain_local that can be used to determine if
the domain name given in parameter is on the list of local domains. The
comparison of the domain name is always case insensitive.

There already is is_local function that does something similar, so we
can reuse the code from that function. is_domain_local takes a pointer
to str as parameter and this function is then called by is_local which
takes all the usual parameters that function which can be called from
the script take.

Finally, is_domain_local is exported through the internal API of the
domain module.

Function is_domain_local is now located in file domain.c and because of
db_get_did was also moved to file domain.c

12 years agodomain: API framework to be used by other modules
Jan Janak [Thu, 16 Jul 2009 22:15:39 +0000 (00:15 +0200)]
domain: API framework to be used by other modules

Add a new data structure and function bind_domain that can be used by
other modules to gain access to internal functions of domain module.

Implement inline function load_domain_api that does everything that
is necessary to make the API of the domain module available to the
caller.

12 years agodomain: Source cleanup
Jan Janak [Thu, 16 Jul 2009 21:46:27 +0000 (23:46 +0200)]
domain: Source cleanup

Cleanup of source files:
 * Wrap long lines
 * Fix wrong indentations
 * Update logging macros to the current calling convention

12 years agodomain: Boilerplace cleanup
Jan Janak [Wed, 15 Jul 2009 13:44:56 +0000 (15:44 +0200)]
domain: Boilerplace cleanup

Remove the reference to proprietary license from iptel.org, rename ser
to sip-router, remove cvs $Id$ tag, wrap the license text to 78
characters wide lines.

12 years agocore: futexlock include hack for older futex.h
Andrei Pelinescu-Onciul [Thu, 16 Jul 2009 12:05:50 +0000 (14:05 +0200)]
core: futexlock include hack for older futex.h

Older non-fixed linux/futex.h version (<2.6.20) cannot be included from
userspace without additional type declarations (which otherwise
are included only if __KERNEL__ is defined).
Note that most distribution fix this problem by distributing a
modified /usr/include/linux/futex.h and not the default kernel
one. However there are other distributions (like CentOS 5) for
which this hack is needed.

12 years agoctl(s) doc: added the autoconversion parameter
Andrei Pelinescu-Onciul [Thu, 16 Jul 2009 08:45:41 +0000 (10:45 +0200)]
ctl(s) doc: added the autoconversion parameter

- info about the new autoconversion parameter
- README re-generated

12 years agoxmlrpc(s): removed the introspection parameter
Andrei Pelinescu-Onciul [Thu, 16 Jul 2009 08:43:40 +0000 (10:43 +0200)]
xmlrpc(s): removed the introspection parameter

Removed the enable_introspection parameter. It's hard-wired to on
and cannot be changed (the methods needed are always exported by
the core).

12 years agoxmlrpc(s) doc: note about xmlrpclib bug
Andrei Pelinescu-Onciul [Thu, 16 Jul 2009 08:39:36 +0000 (10:39 +0200)]
xmlrpc(s) doc: note about xmlrpclib bug

- added note about xmlrpclib bug (waiting for connection closing)
  and workarounds (use a different transport class or make ser
  close the tcp connection after each answer).
- list examples/xmlrpc_test.{pl,py} among the client examples
- updated & fixed some links
- README re-generated

12 years agoxmlrpc(s) doc: added the autoconversion parameter
Andrei Pelinescu-Onciul [Thu, 16 Jul 2009 08:38:14 +0000 (10:38 +0200)]
xmlrpc(s) doc: added the autoconversion parameter

12 years agodoc: rpc api documentation updated: the '.' modifier
Andrei Pelinescu-Onciul [Thu, 16 Jul 2009 07:36:22 +0000 (09:36 +0200)]
doc: rpc api documentation updated: the '.' modifier

12 years ago- socket support
Tomas Mandys [Wed, 15 Jul 2009 23:02:15 +0000 (23:02 +0000)]
- socket support

12 years agomi_rpc: use autoconversion to string
Andrei Pelinescu-Onciul [Wed, 15 Jul 2009 20:55:28 +0000 (22:55 +0200)]
mi_rpc: use autoconversion to string

Because mi doesn't understand anything else besides strings, use
the new auto-convert modifier when reading the mi commands
parameters.

12 years agocore: rpc more verbose when duplicates found
Andrei Pelinescu-Onciul [Wed, 15 Jul 2009 20:49:23 +0000 (22:49 +0200)]
core: rpc more verbose when duplicates found

When duplicate rpc names are detected, print them (WARN(..)).

12 years agocore: new debug core rpcs
Andrei Pelinescu-Onciul [Wed, 15 Jul 2009 20:46:07 +0000 (22:46 +0200)]
core: new debug core rpcs

- added core.printi that expects integer parameters and prints
  them back in the reply (works with variable numbers of params.)
- added core.echo that echoes back its parameters (works with
  variable number of parameters and with any type, it
  auto-converts all of them to string).
- changed core.prints to work with variable number of parameters.

12 years agoctl(s): support for '.' and type autoconversion
Andrei Pelinescu-Onciul [Wed, 15 Jul 2009 20:39:20 +0000 (22:39 +0200)]
ctl(s): support for '.' and type autoconversion

- support for the new '.' rpc->scan modifier (when used it
  turns auto-conversion on for the next input parameter, e.g.:
   rpc->scan(".s", &str))

- new module "autoconversion" module parameter that enables
  auto-conversion globally

- fixed minor parameter number bug in binrpc faults, when the
 '*' modifier was used in rpc->scan()

- added binrpc context garbage collection supports (needed to
  track memory allocation used in type conversions)

12 years agoxmlrpc(s): type autoconversion support
Andrei Pelinescu-Onciul [Wed, 15 Jul 2009 18:32:53 +0000 (20:32 +0200)]
xmlrpc(s): type autoconversion support

- added a new module parameter ("autoconversion") that when enabled
  will try to autoconvert the xmlrpc  parameters types into what
  the rpc method expects (e.g. if the method expects a string, but
  receives an int, convert the int to string). By default it's
  off.

- support for a new modifier: '.' for rpc_scan. When used it turns
  auto-conversion on for the next input.
  E.g. rpc->scan(".s", &string) will work even if the next input
   is an int (it will convert it to string).
  More complex example:
   while((rpc->scan(c, "*.s", &p)>0)) rpc->add(c, "s", p);
  (work with any number of inputs/parameters, convert all of
   them to string and echo them back in the reply)

12 years agofix error in cr dump command, reported from Edson 4lists at gmail dot com
Henning Westerholt [Wed, 15 Jul 2009 13:06:25 +0000 (15:06 +0200)]
fix error in cr dump command, reported from Edson 4lists at gmail dot com

12 years agobugfix in cr and userblacklist modules (kamailio r5894)
Henning Westerholt [Wed, 15 Jul 2009 12:50:02 +0000 (14:50 +0200)]
bugfix in cr and userblacklist modules (kamailio r5894)
- fix error in module initialization which happened if a custom table name was
  configured in carrierroute and also userblacklist
- it was reported as table version mismatch, which was of course really misleading
- many thanks to Uriel Rozenbaum (uriel dot rozenbaum at gmail dot com) for his
  help in debugging this problem with a sample cfg and a binary build

12 years ago- more -h messages
Tomas Mandys [Wed, 15 Jul 2009 10:45:37 +0000 (10:45 +0000)]
- more -h messages

12 years ago- minor ERR message improvment
Tomas Mandys [Tue, 14 Jul 2009 16:56:23 +0000 (16:56 +0000)]
- minor ERR message improvment
- new clean_rtpproxy_attrs script

12 years agotmx(k): remove unnecessary reply locking
Andrei Pelinescu-Onciul [Tue, 14 Jul 2009 16:18:02 +0000 (18:18 +0200)]
tmx(k): remove unnecessary reply locking

- reply locking is not needed around prepare_to_cancel() (former
  which_cancel()).

12 years agotm: remove unnecessary locking around prepare_to_cancel()
Andrei Pelinescu-Onciul [Tue, 14 Jul 2009 16:13:26 +0000 (18:13 +0200)]
tm: remove unnecessary locking around prepare_to_cancel()

- prepare_to_cancel() is lockless, doesn't need the reply lock
  anymore (_reply_light() and rpc_cancel()).
- _reply_light() minor fix: don't run prepare_to_cancel() if
  the reply is not a final reply (might affect latter cancel
  generation)

12 years agotm: minor improvement
Andrei Pelinescu-Onciul [Tue, 14 Jul 2009 13:00:36 +0000 (15:00 +0200)]
tm: minor improvement

- killed an if in prepare_to_cancel

12 years agomodules_k/permissions: fixed child initialization
Juha Heinanen [Tue, 14 Jul 2009 14:48:14 +0000 (17:48 +0300)]
modules_k/permissions: fixed child initialization

- Database was not initialized for all necessary children, which caused
  trusted_reload and trusted_dump mi commands to fail.

12 years agotmx(k): updated to the which_cancel change
Andrei Pelinescu-Onciul [Tue, 14 Jul 2009 12:49:05 +0000 (14:49 +0200)]
tmx(k): updated to the which_cancel change

- updated to the which_cancel name change
- use the new prepare_to_cancel skip_branches parameter to skip
  the current branch when generating the CANCEL, instead of the
  previous unsafe way (in sr which_cancel/prepare_to_cancel is
  lockless and so it's not safe to directly manipulate the cancel
  buffers even if the reply lock is held).

12 years agotm: which_cancel renamed and takes more parameters
Andrei Pelinescu-Onciul [Tue, 14 Jul 2009 12:44:21 +0000 (14:44 +0200)]
tm: which_cancel renamed and takes more parameters

- which_cancel() renamed to prepare_to_cancel() to better reflect
  its real purpose.
- which_cancel_f renamed to prepare_to_cancel_f
- tm_binds which_cancel member renamed to prepare_to_cancel
- should_cancel_branch() renamed to prepare_cancel_branch().
- prepare_to_cancel() takes now an extra parameter (skip_branches)
  which contains a bitmap of the branches that should be skipped
  (not canceled).

12 years agopresence_b2b: fix from & to header access
Andrei Pelinescu-Onciul [Tue, 14 Jul 2009 07:36:51 +0000 (07:36 +0000)]
presence_b2b: fix from & to header access

Access the parsed part of a From or To header only if non-zero
and/or parse_from_header() returned success.

12 years agorr: fix from header access
Andrei Pelinescu-Onciul [Tue, 14 Jul 2009 07:36:19 +0000 (07:36 +0000)]
rr: fix from header access

get_from() can be used _only_ if parse_from_header() returned
success or if msg->from!=0.

12 years agosercmd: updated to the new mi_rpc format
Andrei Pelinescu-Onciul [Mon, 13 Jul 2009 20:40:33 +0000 (22:40 +0200)]
sercmd: updated to the new mi_rpc format

- updated to the new mi output format
- support for tab completion for mi_dg, mi_fifo and mi_xmlrpc

12 years agomi_rpc: support for different "modes"
Andrei Pelinescu-Onciul [Mon, 13 Jul 2009 20:35:34 +0000 (22:35 +0200)]
mi_rpc: support for different "modes"

Added more rpc commands:
mi_fifo - output compatible with the k mi_fifo module, when using
          with sercmd (e.g. sercmd -f "%v" mi_fifo which)
mi_dg - output compatible with the k mi_datagram module, when
         using with sermcd (e.g. sercmd -f "%v" mi_dg which)
mi_xmlrpc - output compatible with the k mi_xmlrpc module
         (should be used with the xmlrpc module)

The "mi" command was changed too: it doesn't output a  leading '+'
anymore on each line and it doesn't print the result code (the
result code is embedded in the rpc reply, there no need to print
it).

12 years agoxmlrpc(s): added rpc client examples
Andrei Pelinescu-Onciul [Mon, 13 Jul 2009 17:04:52 +0000 (19:04 +0200)]
xmlrpc(s): added rpc client examples

Added rpc client examples/test scripts in perl and python. The
python script has 2 versions: one with re-defined transport (that
works properly without expecting the server side to immediately
close the connection after answering) and one using the default
xmlrpclib transport (which requires closing the connection from
the ser xmlrpc route).

12 years agomi_rpc: mi returns always an array
Andrei Pelinescu-Onciul [Mon, 13 Jul 2009 16:03:47 +0000 (18:03 +0200)]
mi_rpc: mi returns always an array

Try returning always an array: it makes no difference for sercmd,
but it helps for xmlrpc.

12 years agoxmlrpc(s): fix '*' rpc_scan handling
Andrei Pelinescu-Onciul [Mon, 13 Jul 2009 16:00:40 +0000 (18:00 +0200)]
xmlrpc(s): fix '*' rpc_scan  handling

The '*' modifier (marking the next parameters as optional) was not
properly handled (the current input parameter was "eaten").

Reported-by: Juha Heinanen jh at tutpro com
12 years agocfg framework: readme correction
Miklos Tirpak [Mon, 13 Jul 2009 14:58:22 +0000 (16:58 +0200)]
cfg framework: readme correction

Documentation about how to read "foreign" config values is
corrected.

12 years agocfg framework: fix the group handles in the main process
Miklos Tirpak [Mon, 13 Jul 2009 14:36:36 +0000 (16:36 +0200)]
cfg framework: fix the group handles in the main process

The main process does not have a local configuration,
it has access only to the config values that were set before
forking. As a result, the group handles cannot ponint to
the shared memory address because the shared memory block
may be freed later by one of the child processes. This problem
resulted sometimes in a core dump after the processes were killed
when the main process tried to access a variable from shared mem
which was no longer available.

12 years agocore: deleted test.c.bak
Andrei Pelinescu-Onciul [Mon, 13 Jul 2009 13:29:55 +0000 (15:29 +0200)]
core: deleted test.c.bak

test.c.bak was one of the first files in the ser repository.
test.c was used to test the first version of the sip parser and
test.c.bak made it by mistake into the first cvs repository.

12 years agoseas: use TMCB_DESTROY tm callback
Daniel-Constantin Mierla [Mon, 13 Jul 2009 13:26:30 +0000 (15:26 +0200)]
seas: use TMCB_DESTROY tm callback

12 years agoMakefile: fix module names
darilion [Mon, 13 Jul 2009 11:39:47 +0000 (13:39 +0200)]
Makefile: fix module names

- radius_... --> misc_radius

12 years agodebian: fix rules file
darilion [Mon, 13 Jul 2009 11:36:53 +0000 (13:36 +0200)]
debian: fix rules file
- fix postgress typo
- remove non-existing modules
- fix list of broken modules, and activate it, so that beta-users can make debian packages without errors

12 years agomodules_s/domain: is_local can now be called from BRANCH_ROUTE
Juha Heinanen [Mon, 13 Jul 2009 12:28:59 +0000 (15:28 +0300)]
modules_s/domain: is_local can now be called from BRANCH_ROUTE

- Added BRANCH_ROUTE to list of routes for is_local function after
  no one answered to my question on if it would cause any trouble.

12 years agotm: reason phrase of 100 is corrected in t_suspend()
Miklos Tirpak [Fri, 10 Jul 2009 14:02:14 +0000 (16:02 +0200)]
tm: reason phrase of 100 is corrected in t_suspend()

- t_suspend() now uses the tm_auto_inv_100_r config option to
form the 100 reply message.

12 years agotm: check whether or not 100 response has already been sent
Miklos Tirpak [Fri, 10 Jul 2009 13:58:17 +0000 (15:58 +0200)]
tm: check whether or not 100 response has already been sent

- Do not send the 100 Trying response when it has already been sent
The script writer can do it for example before t_relay().

12 years agosiptrace: removed trailing whitespaces
Daniel-Constantin Mierla [Thu, 9 Jul 2009 22:23:58 +0000 (00:23 +0200)]
siptrace: removed trailing whitespaces

- makes git happy, avoiding warning messages

12 years agosiptrace: module facelift
Daniel-Constantin Mierla [Thu, 9 Jul 2009 22:18:42 +0000 (00:18 +0200)]
siptrace: module facelift

- better structured traced data
- more modularity to avoid duplicity

12 years agotm: enabbled TMCB_ONSEND
Daniel-Constantin Mierla [Thu, 9 Jul 2009 22:17:54 +0000 (00:17 +0200)]
tm: enabbled TMCB_ONSEND

- used by siptrace module

12 years agodebian: various fixes and cleanups
Andrei Pelinescu-Onciul [Thu, 9 Jul 2009 19:51:03 +0000 (21:51 +0200)]
debian: various fixes and cleanups

- fixed duplicate libraries
- fixed wrong config install path
- added a ser-db-modules package containing db dependent modules
- debian rules major cleanup

12 years agomakefile: fix group_include
Andrei Pelinescu-Onciul [Thu, 9 Jul 2009 19:47:26 +0000 (21:47 +0200)]
makefile: fix group_include

fix recently introduced group_include bug

12 years agosiptrace(k): some updates to work with sip-router core
Daniel-Constantin Mierla [Thu, 9 Jul 2009 17:05:16 +0000 (19:05 +0200)]
siptrace(k): some updates to work with sip-router core

- module not completely ready
- prepared to enable sip_trace() in onsend route to be able to store
  stateless forwarded messages

12 years agonat_traversal(k): module compiles with sip-router core
Daniel-Constantin Mierla [Thu, 9 Jul 2009 15:18:13 +0000 (17:18 +0200)]
nat_traversal(k): module compiles with sip-router core

12 years agocore: temporary sip_msg flags reserved for K moved to end of bitmask
Daniel-Constantin Mierla [Thu, 9 Jul 2009 14:47:49 +0000 (16:47 +0200)]
core: temporary sip_msg flags reserved for K moved to end of bitmask

- respective modules updated

12 years agomakefile: dbtext(s) removed from the db group
Andrei Pelinescu-Onciul [Thu, 9 Jul 2009 11:52:53 +0000 (13:52 +0200)]
makefile: dbtext(s) removed from the db group

dbtext(s) is not yet migrated to the current db interfaces.

12 years agocore: backup/restore script flags
Daniel-Constantin Mierla [Thu, 9 Jul 2009 10:35:13 +0000 (12:35 +0200)]
core: backup/restore script flags

- safe usage of script flags in nested top routes

12 years agotable: drop in event_route[htable:mod-init]
Daniel-Constantin Mierla [Thu, 9 Jul 2009 10:30:48 +0000 (12:30 +0200)]
table: drop in event_route[htable:mod-init]

- usage of drop in event_route[htable:mod-init] causes failure of
  child_init(), stopping the start process

12 years agocore: run_top_route() can be give action context
Daniel-Constantin Mierla [Thu, 9 Jul 2009 09:23:14 +0000 (11:23 +0200)]
core: run_top_route() can be give action context

- functions calling run_top_route() can get access to context fields if
  they need
- modules updated to new function signature

12 years agocore: internal difference between cfg drop and exit
Daniel-Constantin Mierla [Wed, 8 Jul 2009 21:24:52 +0000 (23:24 +0200)]
core: internal difference between cfg drop and exit

- drop sets the flag for exit and one extra: EXIT_R_F and DROP_R_F
- no difference in processing right now (DROP_R_F not tested anywhere
  yet)

12 years agokex: several K core stats implemented in callbacks
Daniel-Constantin Mierla [Wed, 8 Jul 2009 20:55:14 +0000 (22:55 +0200)]
kex: several K core stats implemented in callbacks

12 years agomakefile: more modules groups and make modules-all
Andrei Pelinescu-Onciul [Wed, 8 Jul 2009 16:41:38 +0000 (18:41 +0200)]
makefile: more modules groups and make modules-all

- added more module groups (db, mysql_driver, postgres_driver)
- cleaned up module groups usage (replaced a lot of ifs with a
  foreach)
- modules-all is now a synonym for every-module

12 years agoprefix_route(s): fix: the lock should be in shm
Andrei Pelinescu-Onciul [Wed, 8 Jul 2009 16:03:40 +0000 (18:03 +0200)]
prefix_route(s): fix: the lock should be in shm

The shared_tree_lock was not in shared memory.

12 years agoprefix_route(s): fix mod_destroy/tree_close()
Andrei Pelinescu-Onciul [Wed, 8 Jul 2009 15:54:46 +0000 (17:54 +0200)]
prefix_route(s): fix mod_destroy/tree_close()

tree_close(), called from mod_destroy did not take into account
the possibility of mod_init not being run (e.g. startup error).

Reported-by: Klaus Darilion klaus.mailinglists pernau at
12 years agodebian: updated debian spec for sip-router
Andrei Pelinescu-Onciul [Wed, 8 Jul 2009 15:36:38 +0000 (17:36 +0200)]
debian: updated debian spec for sip-router

- fixed & cleaned "rules", they now use make cfg and are generally simpler
- added a ser-tls package
- re-enabled the ser-postgres package

Note: right now the packages being built  will be called "ser*",
but they do include all the modules.

12 years agomakefile: fix make cfg when the cfg vars are already exported
Andrei Pelinescu-Onciul [Wed, 8 Jul 2009 15:31:56 +0000 (17:31 +0200)]
makefile: fix make cfg when the cfg vars are already exported

- when make cfg was called with the cfg vars already exported it
  failed to generate a proper config.mak (e.g. called from
  make deb)
- extra config sanity check
- s/mysql/db_mysql in the mysql module group
-  added "deb" to the list of targets that don't need dependencies
   (minor optimization)

12 years agocore: derive default config name from -DNAME
Andrei Pelinescu-Onciul [Wed, 8 Jul 2009 13:42:47 +0000 (15:42 +0200)]
core: derive default config name from -DNAME

The default config name was hard-wired to sip-router.cfg.

Reported-by: Klaus Darilion klaus.mailinglists at pernau at
12 years agodrouting: Updated documentation
Raul Alexis Betancor Santana [Tue, 7 Jul 2009 18:43:48 +0000 (19:43 +0100)]
drouting: Updated documentation

- Erased references to blacklist management

12 years agoMerge commit 'origin/rbetancor/drouting'
Raul Alexis Betancor Santana [Tue, 7 Jul 2009 18:41:39 +0000 (19:41 +0100)]
Merge commit 'origin/rbetancor/drouting'

* commit 'origin/rbetancor/drouting':
  drouting: blacklist functions remove
  drouting: Now the module compiles, but it's not tested
  drouting:
  drouting:
  drouting:
  drouting: Module for more flexible dynamic routing rules
  drouting: Documentation updated
  drouting: Updated all Copyright notices
  drouting: Makefile fixed to compile with OPENSER_MOD_INTERFACE
  drouting: new module to support Dynamic Routing

12 years agodrouting: blacklist functions remove
Raul Alexis Betancor Santana [Tue, 7 Jul 2009 16:48:39 +0000 (17:48 +0100)]
drouting: blacklist functions remove

- All blacklist management functions removed, core take cares of BL when
  sending out request as we only rewrite uri's

12 years agoxmlrpc: propagate route error exit
Andrei Pelinescu-Onciul [Mon, 6 Jul 2009 20:58:19 +0000 (22:58 +0200)]
xmlrpc: propagate route error exit

If the xmlrpc route exits with error, propagate the error
downwards (return NONSIP_MSG_ERROR instead of NONSIP_MSG_DROP).

12 years agocore: error handling for non-sip hooks
Andrei Pelinescu-Onciul [Mon, 6 Jul 2009 20:54:52 +0000 (22:54 +0200)]
core: error handling for non-sip hooks

receive_msg will exit with error if a non-sip msg hook returns
NONSIP_MSG_ERROR.

12 years agotm: t_reply() first param. can be any var. type
Andrei Pelinescu-Onciul [Mon, 6 Jul 2009 10:36:22 +0000 (12:36 +0200)]
tm: t_reply() first param. can be any var. type

Switched first param. fixup to fixup_var_int_12(), thus allowing
 it to be a pvar.

12 years agocore: pvars support in ser *var fixups
Andrei Pelinescu-Onciul [Mon, 6 Jul 2009 10:26:19 +0000 (12:26 +0200)]
core: pvars support in ser *var fixups

- all ser generic fixups (fixup_var_{int,str}_*) work with pvars
  (e.g. the fallback order for str is: pvar->avp->select->str).
- fixed FPARAM_* definitions to allow better fallback for
  fix_param_types (int->select->pvar->avp->str)
- fix_param() does not print anymore error messages for invalid
  pvars or avps, to allow fallback

12 years agomodules_s/domain: log message level changes
Juha Heinanen [Mon, 6 Jul 2009 10:06:35 +0000 (13:06 +0300)]
modules_s/domain: log message level changes

- Made module less noisy by turning INFOs to DBGs.
- Print error instead of debug message if domain name to be looked for
  cannot be accessed.

12 years agoscripts/mysql: updated 'gw' and 'lcr' table definitions
Juha Heinanen [Sun, 5 Jul 2009 07:55:48 +0000 (10:55 +0300)]
scripts/mysql: updated 'gw' and 'lcr' table definitions

- Updated 'gw' and 'lcr' MySQL table definitions.
- No idea if a schema exists somewhere where sr tables are
  auto-generated.
- The tables are assumed to have versions 10 and 3, respectively
  although there is no 'version' table in sr database.

12 years agomodules/lcr: added 'defunct' column to 'gw' table
Juha Heinanen [Sun, 5 Jul 2009 07:52:47 +0000 (10:52 +0300)]
modules/lcr: added 'defunct' column to 'gw' table

- Added 'defunct' column to 'gw' table that can be used to defunct
  a gateway until the given time.

12 years ago* modules_s/xmlrpc: allow use of k ls module api
Juha Heinanen [Sat, 4 Jul 2009 19:36:41 +0000 (22:36 +0300)]
* modules_s/xmlrpc: allow use of k ls module api

- Added Makefile #define for choosing between s and k sl API.

12 years agotm: fix cloning parsed uri for to/from headers
Daniel-Constantin Mierla [Sat, 4 Jul 2009 19:10:36 +0000 (21:10 +0200)]
tm: fix cloning parsed uri for to/from headers

- parsed structure was not cloned
- several fields in struct uri were not cloned

12 years agomodules_s/xmlrpc: fixed typo in name of module parameter
Juha Heinanen [Sat, 4 Jul 2009 12:17:58 +0000 (15:17 +0300)]
modules_s/xmlrpc: fixed typo in name of module parameter

- enable_instrospection => enable_introspection.

12 years agocore: km_parse_avp_spec() update
Daniel-Constantin Mierla [Fri, 3 Jul 2009 18:19:47 +0000 (20:19 +0200)]
core: km_parse_avp_spec() update

- fallback to ser style of avp name in $avp(id) if 'id' has no ':' and
  there is no avp alias defined
- behavior was changed when I added support for K compatible avp aliases
  in pv module
- issue reported by Andrei Pelinscu-Onciul

12 years agomakefile: removed avpops from exclude modules
Daniel-Constantin Mierla [Fri, 3 Jul 2009 18:18:26 +0000 (20:18 +0200)]
makefile: removed avpops from exclude modules

- it compiles fine after removing ser version and moving the module in
  'modules' folder

12 years agolib/srdb2: marked four db flags as "reserved"
Juha Heinanen [Fri, 3 Jul 2009 16:50:00 +0000 (19:50 +0300)]
lib/srdb2: marked four db flags as "reserved"

- Marked last four db flags as "reserved" for private use.

12 years agoman pages: editorial changes
Juha Heinanen [Wed, 1 Jul 2009 13:38:35 +0000 (16:38 +0300)]
man pages: editorial changes

- In sip-router.cfg 5 changed reference to "Sip Express Router" to "SIP
  Router" and changed reference to documentation page.

12 years agocfg framework: fix sanity checks (again)
Andrei Pelinescu-Onciul [Fri, 3 Jul 2009 16:28:38 +0000 (18:28 +0200)]
cfg framework: fix sanity checks (again)

The previous sanity check fix wrongly assumed that CFG_VAR_MASK
would return 1<<type and not type.

12 years agodomain: Documentation update
Jan Janak [Fri, 3 Jul 2009 15:15:05 +0000 (17:15 +0200)]
domain: Documentation update

Update domain module documentation. Now it describes all functions
and parameters and also contains description of some of the concepts,
such as virtual domains and domain-level attributes.

12 years ago- tm: document the unmatched_cancel parameter
Klaus Darilion [Fri, 3 Jul 2009 13:57:36 +0000 (15:57 +0200)]
- tm: document the unmatched_cancel parameter

12 years agoMerge branch 'master' of ssh://git.sip-router.org/sip-router
Klaus Darilion [Fri, 3 Jul 2009 13:06:53 +0000 (15:06 +0200)]
Merge branch 'master' of ssh://git.sip-router.org/sip-router

* 'master' of ssh://git.sip-router.org/sip-router:
  mangler(s): fixed missing var. definitions
  test: fix test 13, avp name for domain
  core: add openser database URL for compatibility, used with OPENSER_MOD_INTERFACE
  test: fix ctl and dbctl script path after import

12 years agomangler(s): fixed missing var. definitions
Andrei Pelinescu-Onciul [Fri, 3 Jul 2009 12:46:31 +0000 (14:46 +0200)]
mangler(s): fixed missing var. definitions

ipExpression and portExpression were only declared as extern,
they had no definition in sdp_mangler.c.

Reported-by: Klaus Darilion klaus.mailinglists at pernau at
12 years agotest: fix test 13, avp name for domain
Henning Westerholt [Fri, 3 Jul 2009 12:46:41 +0000 (14:46 +0200)]
test: fix test 13, avp name for domain

12 years agocore: add openser database URL for compatibility, used with OPENSER_MOD_INTERFACE
Henning Westerholt [Fri, 3 Jul 2009 12:34:41 +0000 (14:34 +0200)]
core: add openser database URL for compatibility, used with OPENSER_MOD_INTERFACE

12 years agotest: fix ctl and dbctl script path after import
Henning Westerholt [Fri, 3 Jul 2009 12:32:44 +0000 (14:32 +0200)]
test: fix ctl and dbctl script path after import

12 years agoRevert "according to Di-Shi are K's and ser's osp module more or less the same, where...
Klaus Darilion [Fri, 3 Jul 2009 12:40:57 +0000 (14:40 +0200)]
Revert "according to Di-Shi are K's and ser's osp module more or less the same, whereas Kamailio's osp module should be more up2date than ser's module. Thus, ser's osp module will be removed and K's osp module will be used as common OSP module."

This reverts commit 6bdbd8e2ab1ec15695cc156ff74f20af799a947b.

12 years agoFORCE_RTP_PROXY_ERET -> FORCE_RTP_PROXY_RET for clarity.
sobomax [Thu, 2 Jul 2009 22:07:14 +0000 (15:07 -0700)]
FORCE_RTP_PROXY_ERET -> FORCE_RTP_PROXY_RET for clarity.

12 years agoForgot to update parameters of the send_rtpp_command() in the last
sobomax [Thu, 2 Jul 2009 22:06:25 +0000 (15:06 -0700)]
Forgot to update parameters of the send_rtpp_command() in the last
checkin.

12 years agoRework fix for the static buffer overflow with the content of the overly long payload...
sobomax [Thu, 2 Jul 2009 22:02:44 +0000 (15:02 -0700)]
Rework fix for the static buffer overflow with the content of the overly long payload types list. Instead of silently truncating the list, use dynamic buffer allocated on heap to keep that list growing it if necessary.

12 years agoRework fix for the static buffer overflow with the content of
sobomax [Thu, 2 Jul 2009 21:12:45 +0000 (14:12 -0700)]
Rework fix for the static buffer overflow with the content of
the overly long payload types list. Instead of silently
truncating the list, use dynamic buffer allocated on heap to
keep that list growing it if necessary.

12 years agoMerge branch 'master' into drouting
Raul Alexis Betancor Santana [Thu, 2 Jul 2009 20:14:37 +0000 (21:14 +0100)]
Merge branch 'master' into drouting

* master: (728 commits)
  tm: suspended transaction was not always replied and freed
  core: fix EXTRA_DEBUG information about second via in parse_msg
  nathelper(k): fix for very long payload-type
  nathelper (k): fix for flag 'l'
  avpops: merge avpops modules
  according to Di-Shi are K's and ser's osp module more or less the same, whereas Kamailio's osp module should be more up2date than ser's module. Thus, ser's osp module will be removed and K's osp module will be used as common OSP module.
  remove shm_str_dup() from tls_util.[c|h] as it breaks compilation and is not used at all
  cfg framework: documentation for cfg_read_var*
  Add missed <sys/select.h> include.
  cfg framework: read variables by name with a handle
  domain: init db connection for RPC process
  presence: use event name from parsed structure
  core: parse_event - skip first ; for parameters
  select_core: fix @ruri.rn_user moving parsed ptr
  modules/lcr: fixed printing of lcr_id by lcr.dump_lcrs
  carrierroute: port from 1.5 branch, r5885
  siputils(k): port from 1.5 branch, r5880
  carrierroute: port from 1.5 branch, r5877
  carrierroute: port from 1.5 branch, r5876, remove dead code (double return)
  registrar(k): port from 1.5 branch, r5873
  ...

12 years agodrouting: Now the module compiles, but it's not tested
Raul Alexis Betancor Santana [Thu, 2 Jul 2009 17:08:52 +0000 (18:08 +0100)]
drouting: Now the module compiles, but it's not tested

- fixed call to sip_resolvehost

12 years agodrouting:
Raul Alexis Betancor Santana [Thu, 2 Jul 2009 16:45:43 +0000 (17:45 +0100)]
drouting:

- fixed access to rlist

12 years agotm: suspended transaction was not always replied and freed
Miklos Tirpak [Thu, 2 Jul 2009 16:37:56 +0000 (18:37 +0200)]
tm: suspended transaction was not always replied and freed

- When the suspended transaction continued but no new UAC
was added to the transaction, for example all the new branches
tried to reach a blacklisted destination, then there was no
error message returned and the transaction was never freed.