Miklos Tirpak [Thu, 22 May 2008 16:15:07 +0000 (16:15 +0000)]
@msg.body.sdp select call is introduced, that returns the sdp part
of the message body.
Miklos Tirpak [Thu, 22 May 2008 16:12:16 +0000 (16:12 +0000)]
get_body_part() function is introduced, that returns
a specific part of the message body, for example application/sdp.
The result can be the whole body, or a part of it
in case of multipart/somehing Content-Type.
Andrei Pelinescu-Onciul [Thu, 22 May 2008 16:08:52 +0000 (16:08 +0000)]
- fixed wrong size in lots of su2a() calls
Miklos Tirpak [Thu, 22 May 2008 16:06:15 +0000 (16:06 +0000)]
hooks parameter of parse_params() is made optional,
it is not always needed
Jan Janak [Thu, 22 May 2008 09:20:30 +0000 (09:20 +0000)]
- manpage syntax fixed, reported by Marcus Better
Andrei Pelinescu-Onciul [Thu, 22 May 2008 07:26:06 +0000 (07:26 +0000)]
- excluded ldap from compilation by default (external dependencies)
- ver.no ++
Andrei Pelinescu-Onciul [Wed, 21 May 2008 21:42:52 +0000 (21:42 +0000)]
- friendlier error messages on send or connect errors (the connection
destination is printed)
Andrei Pelinescu-Onciul [Wed, 21 May 2008 21:37:26 +0000 (21:37 +0000)]
- added more utility functions:
- su2a() converts a union sockaddr_union into <ip>:<port> (returns pointer
to null terminated static string)
- ip_addr2sbuf() converts a struct ip_addr into its ascii repsentation
in the supplied buffer (unlike ip_addr2a() which uses a static buffer)
- ip4tosbuf(), ip6tosbuf() directly convert a raw ip address (byte array)
into ascii
Andrei Pelinescu-Onciul [Wed, 21 May 2008 21:31:18 +0000 (21:31 +0000)]
- added ushort2sbuf() and ushort2str(): they convert an unsigned short into
its ascii representation (base 10). ushort2str() returns a pointer to a null
terminated static string, while ushor2sbuf() fills the supplied buffer.
Andrei Pelinescu-Onciul [Wed, 21 May 2008 10:16:46 +0000 (10:16 +0000)]
- tcp: more flags (no fixes, preparations for next set of changes)
Maxim Sobolev [Wed, 21 May 2008 00:23:41 +0000 (00:23 +0000)]
FreeBSD ELF shared library naming convention only allows using names such
as libname.so.X, not libname.so.X.Y. Obey it.
Maxim Sobolev [Tue, 20 May 2008 23:59:05 +0000 (23:59 +0000)]
Fix utils_bin_install.
Maxim Sobolev [Tue, 20 May 2008 22:55:55 +0000 (22:55 +0000)]
Add separate INSTALL_SCRIPT macro and use it to install scripts,
This allows packagers to override INSTALL_SCRIPT/INSTALL_BIN to
perform additional functionality when installing (e.g strip binary).
Maxim Sobolev [Tue, 20 May 2008 22:46:25 +0000 (22:46 +0000)]
Include <netinet/in.h>, which is necessary to get the code compiled
on FreeBSD.
Miklos Tirpak [Tue, 20 May 2008 14:20:39 +0000 (14:20 +0000)]
unused variable is deleted
Andrei Pelinescu-Onciul [Thu, 15 May 2008 18:46:12 +0000 (18:46 +0000)]
- t_relay_to renamed to t_relay_to_avp (it behaves very differently then the
other t_relay_to functions and it isn't even documented so the name change
should have a minimal impact)
- t_relay() can now also take host and port parameters (e.g. t_relay(host,
port)), behaving like a statefull orwad(host, port) version (forward to
host:port using the same protocol on which the message was received)
- t_relay_to_udp(), t_relay_to_tcp() and t_relay_to_tls() work now even with no
parameters: in this case the message is forwarded using the request uri, but
with the specified protocol (equivalent to a t_relay() with a forced
protocol)
Jan Janak [Tue, 13 May 2008 09:12:27 +0000 (09:12 +0000)]
- db_ops, permissions, and speeddial modules compile
Jan Janak [Tue, 13 May 2008 09:07:18 +0000 (09:07 +0000)]
- do not report an error when contact header cannot be found, issue a
debugging message only, reported by Atle Samuelsen
Andrei Pelinescu-Onciul [Tue, 6 May 2008 16:35:35 +0000 (16:35 +0000)]
- armv6 arch fixes:
- fixed return values for *atomic_inc_and_test* and *atomic_dec_and_test*
- fixed *atomic_cmpxchg*: init %1 to 0 (or else if cmp fails and strexeq is
not executed a "garbage" non zero value in %1 would cause an infinite loop)
- removed "not tested" warning
Nils Ohlmeier [Tue, 6 May 2008 14:30:27 +0000 (14:30 +0000)]
Fixed From Header check in route REGISTRAR
Ported from 2.0 branch
Jan Janak [Tue, 6 May 2008 12:08:26 +0000 (12:08 +0000)]
- regenerated from the xml files
Jan Janak [Tue, 6 May 2008 11:27:21 +0000 (11:27 +0000)]
- sip_status fields changed from string to integer type
Alfred E. Heggestad [Tue, 6 May 2008 07:15:52 +0000 (07:15 +0000)]
added newline at end of file
Andrei Pelinescu-Onciul [Mon, 5 May 2008 18:15:54 +0000 (18:15 +0000)]
- fix: double free on error (bad RE)
Jan Janak [Mon, 5 May 2008 15:14:13 +0000 (15:14 +0000)]
- Added support for PostgreSQL database (commented out)
Pavel Kasparek [Mon, 5 May 2008 13:30:55 +0000 (13:30 +0000)]
adding debconf question for the mysql password for creating ser db
Pavel Kasparek [Mon, 5 May 2008 12:46:42 +0000 (12:46 +0000)]
adding debconf question about creating ser database to debian package
Andrei Pelinescu-Onciul [Wed, 30 Apr 2008 20:12:16 +0000 (20:12 +0000)]
- win/cygwin support revived, for now no ipv6, no tcp (relies on fd passing
between processes which is not yet supported under cygwin), no dynamic
modules, only statically linking (backlinking is not supported under windows
and possible workarounds are too work intensive)
Andrei Pelinescu-Onciul [Wed, 30 Apr 2008 19:54:34 +0000 (19:54 +0000)]
- MSG_WAITALL emulation for OSes that don't support it (win+cygwin)
Andrei Pelinescu-Onciul [Wed, 30 Apr 2008 19:53:04 +0000 (19:53 +0000)]
- fixed compilation without tcp support (no -DUSE_TCP)
Andrei Pelinescu-Onciul [Wed, 30 Apr 2008 19:52:25 +0000 (19:52 +0000)]
- better support for no ipv6 (-DUSE_IPV6 not defined)
- more functions changed to static
Andrei Pelinescu-Onciul [Wed, 30 Apr 2008 19:50:04 +0000 (19:50 +0000)]
- if ipv6 support is disabled (-DUSE_IPV6 not defined), don't even try to use
AF_INET6 (might not be defined if the underlying OS doesn't support ipv6), or
str2ip6
Alfred E. Heggestad [Thu, 24 Apr 2008 13:51:26 +0000 (13:51 +0000)]
added CRLF ping/pong keepalives aka SIP outbound
Andrei Pelinescu-Onciul [Thu, 24 Apr 2008 11:46:52 +0000 (11:46 +0000)]
- minor fix: an invalid via like host:: would generate a BUG message in the log
instead of a via parse error
Bogdan Pintea [Wed, 23 Apr 2008 21:20:43 +0000 (21:20 +0000)]
New texops function added: remove_hf_re("regexp") to filter message headers out
by matching the header name field against a regular expression.
Closes SER-340.
Miklos Tirpak [Wed, 23 Apr 2008 15:34:28 +0000 (15:34 +0000)]
Replacing @select=="" with !@select, because the latter is safer.
(The select must exist with empty string value in order to evaluate
@select=="" as true.)
Miklos Tirpak [Wed, 23 Apr 2008 14:25:18 +0000 (14:25 +0000)]
something != "" can be true also when the left value does not exist
Miklos Tirpak [Wed, 23 Apr 2008 12:55:17 +0000 (12:55 +0000)]
intop (==, <, >, <=, >=) is supported between two integer AVP values
Miklos Tirpak [Wed, 23 Apr 2008 10:58:37 +0000 (10:58 +0000)]
ASSIGN_T uses 0 as right hand side value if eval_expr() returns
with error. That means, the expression evaluation result is false in case
of any error.
Miklos Tirpak [Wed, 23 Apr 2008 09:31:44 +0000 (09:31 +0000)]
Errors are treated as false during the expression evaluation
unless the operator is DIFF_OP.
Pavel Kasparek [Tue, 22 Apr 2008 14:57:36 +0000 (14:57 +0000)]
removed ser-oob.cfg from ser Debian package, because it is in ser-oob package
Alfred E. Heggestad [Mon, 21 Apr 2008 10:54:29 +0000 (10:54 +0000)]
use release number in RPM spec file
Alfred E. Heggestad [Mon, 21 Apr 2008 10:49:34 +0000 (10:49 +0000)]
remove serctl and serunix from RPM spec file
Pavel Kasparek [Fri, 18 Apr 2008 09:15:57 +0000 (09:15 +0000)]
changing all default ip addresses in ser-oob.cfg and debian templates to localhost
Nils Ohlmeier [Thu, 17 Apr 2008 20:52:47 +0000 (20:52 +0000)]
added functions to allow myself check ony based on port numbers
Jan Janak [Thu, 17 Apr 2008 18:35:21 +0000 (18:35 +0000)]
- install also ser-oob.cfg, in addition to ser.cfg
Miklos Tirpak [Thu, 17 Apr 2008 16:22:18 +0000 (16:22 +0000)]
- RURI is not parsed again if parsed_uri_ok=1
- new action type, SET_HOSTPORTTRANS_T, and the corresponding
script actions are introduced: sethostporttrans() and
rewritehostporttrans()
This action accepts an optional transport parameter, and clears the
previous transport param if there was any. It is safer to use this action
instead of SET_HOSTPORT_T in some cases, even if the transport param is
omitted, because the latter can leave the parameter in the RURI
causing troubles.
Pavel Kasparek [Thu, 17 Apr 2008 12:45:29 +0000 (12:45 +0000)]
fixing debconf templates - debconf does not know integers
Jan Janak [Wed, 16 Apr 2008 16:08:04 +0000 (16:08 +0000)]
- set default server_id value to 0
Nils Ohlmeier [Wed, 16 Apr 2008 14:19:59 +0000 (14:19 +0000)]
fixed check for min-se (which has to be smaller or equal)
Jan Janak [Wed, 16 Apr 2008 12:31:40 +0000 (12:31 +0000)]
- fixed typo in a flag name
- use loadpath to load modules
- added comment about removing internal headers from messages received from
utrusted sources
- extract server_id from SER-Server-ID header in registrar
Jan Janak [Wed, 16 Apr 2008 11:25:02 +0000 (11:25 +0000)]
- FLAG_PEER_REPLICATE renamed to FLAG_REPL_ENABLED which is what this
flag really means
- added debconf-configurable server_id option to the configuration file
- the replication source appends SER-Server-ID to the request with its
own server id
Jan Janak [Wed, 16 Apr 2008 11:19:05 +0000 (11:19 +0000)]
- added @sys.server_id select, this select will obtain the ID of the SER
server.
Jan Janak [Wed, 16 Apr 2008 11:18:15 +0000 (11:18 +0000)]
- server_id is configurable through debconf
Jan Janak [Wed, 16 Apr 2008 11:15:06 +0000 (11:15 +0000)]
- added server_id columns to acc, missed_calls, location, and aliases
tables. These columns will contain the unique ID of the SER server
that generated or is responsible for the record. This columns makes
it possible to merge the contents of the tables within a cluster or
share tables among the SER servers within a cluster.
Jan Janak [Tue, 15 Apr 2008 21:23:59 +0000 (21:23 +0000)]
- SER-Server-ID RADIUS attribute
Andrei Pelinescu-Onciul [Tue, 15 Apr 2008 17:38:33 +0000 (17:38 +0000)]
- fixes: missing extern for variables declared in *.h files (can cause
different symbols with the same name => unexpected bugs)
Andrei Pelinescu-Onciul [Mon, 14 Apr 2008 04:47:34 +0000 (04:47 +0000)]
- darwin link fix
Jan Janak [Mon, 14 Apr 2008 01:46:03 +0000 (01:46 +0000)]
- new configuration option server_id added, this option can be used to
discriminate servers within a cluster, to be used by modules like
acc_db and usrloc
Nils Ohlmeier [Sun, 13 Apr 2008 14:48:16 +0000 (14:48 +0000)]
Fixed typo in the flags
Nils Ohlmeier [Sun, 13 Apr 2008 14:39:01 +0000 (14:39 +0000)]
fixed linker error because of undefined symbols on Mac OS X/darwin
Miklos Tirpak [Sun, 13 Apr 2008 05:12:55 +0000 (05:12 +0000)]
(expr1 != expr2) is evaluated true if at least one of
the expressions does not exist, which can be a missing AVP
or select. (expr1 != expr2) and !(expr1 == expr2) mean the same
from now in this case.
Nils Ohlmeier [Thu, 10 Apr 2008 13:48:35 +0000 (13:48 +0000)]
fixed one-way RTP proxy in case of failure route
Miklos Tirpak [Thu, 10 Apr 2008 13:24:25 +0000 (13:24 +0000)]
t_reply() must be used insted of sl_reply() if the transaction
already exists.
Miklos Tirpak [Thu, 10 Apr 2008 10:41:54 +0000 (10:41 +0000)]
The call is rejected if @from.uri cannot be looked up during
non-register authentication.
It is not enough to check whether $fu.uid != $fr.uid, because
the expression is true only if both AVPs exist, and their values
are not equal. If one (or both) of the AVPs is missing, the expression
is false. (strange behaviour of not equal operator with AVPs)
Andrei Pelinescu-Onciul [Tue, 8 Apr 2008 16:26:49 +0000 (16:26 +0000)]
- make bin will take prefix into account, e.g.: make prefix=/foo bin
(it's not hardwired anymore to /usr/local)
Miklos Tirpak [Mon, 7 Apr 2008 13:31:24 +0000 (13:31 +0000)]
verify the return value of append_branch()
Nils Ohlmeier [Fri, 4 Apr 2008 15:56:15 +0000 (15:56 +0000)]
[Port from 2.0] Fixed authentication issue for non-REGISTER requests
Thanks to Stefan Sayer for this out!
Miklos Tirpak [Fri, 4 Apr 2008 08:40:53 +0000 (08:40 +0000)]
Two configuration variables are introduced that can help
troubleshooting memory leaks: mem_dump_pkg, and mem_dump_shm
Useage:
sercmd cfg.set_now_int mem_dump_pkg <pid_number>
Dumps the pkg memory status of the given processs
sercmd cfg.set_now_int mem_dump_shm 1
Dumps the shm memory status
Miklos Tirpak [Tue, 1 Apr 2008 14:20:50 +0000 (14:20 +0000)]
include cfg_rpc module in the standard module list
Vaclav Kubart [Tue, 1 Apr 2008 13:14:59 +0000 (13:14 +0000)]
added missing '{'
Miklos Tirpak [Tue, 1 Apr 2008 13:05:23 +0000 (13:05 +0000)]
missing include statement is fixed
Pavel Kasparek [Tue, 1 Apr 2008 12:50:28 +0000 (12:50 +0000)]
adding sems to dependencies of ser-ai1 package
Pavel Kasparek [Tue, 1 Apr 2008 09:37:21 +0000 (09:37 +0000)]
added registrar module modparam to limit maximum number of contacts
Bogdan Pintea [Mon, 31 Mar 2008 18:57:54 +0000 (18:57 +0000)]
Various warnings fixed (mostly appearing with 64b compiles).
Closes issue SER-343.
Bogdan Pintea [Mon, 31 Mar 2008 18:41:48 +0000 (18:41 +0000)]
New selects exported, allowing to dissecting the content of an attribute by
interpreting it as a "name-addr" value.
Ex.:
$loaded_uri = "\"display name\" <UserName@HostName;param>"
$user = @avp["$loaded_uri"].nameaddr.uri.user
'$user' will contain "UserName".
Closes issue #SER-365.
Bogdan Pintea [Mon, 31 Mar 2008 18:19:49 +0000 (18:19 +0000)]
New TM export - cancel_all_uacs() - to allow canceling all branches of a
transaction. (Closes issue #SER-253).
Some error messages are corrected to reflect new function name.
(Bits of code for the AS support also added; issue #SER-346 in the works.)
Miklos Tirpak [Mon, 31 Mar 2008 16:26:08 +0000 (16:26 +0000)]
Message flags are updated in shared memory even if they are modified
after the first t_newtran() function call.
Fixes SER-297
Bogdan Pintea [Mon, 31 Mar 2008 06:35:57 +0000 (06:35 +0000)]
New script directive to allow specifying the modules' path. This is equivalent
to the command line parameter -L.
Example:
loadpath "/usr/lib/ser/modules/"
loadmodule "maxfwd"
Closes issue #SER-364.
Miklos Tirpak [Wed, 26 Mar 2008 13:22:36 +0000 (13:22 +0000)]
Do not print out "no more records" ERROR message when use_dns_failover
is enabled, it is not an error, simply there is no more destination
in the SRV or A record.
Miklos Tirpak [Wed, 26 Mar 2008 11:06:03 +0000 (11:06 +0000)]
Message lumps are saved to shared memory when t_relay() is called
the first time, instead of saving them by t_newtran(). The advantage is
that the SIP msg modifications that are made after t_newtran() are saved
as well, and they are propagated to failure route.
t_save_lumps() function is introduced, it can be used to force saving
the lumps before t_relay(), check the doc for details.
Fixes SER-303
The change can be reverted by uncommenting #define POSTPONE_MSG_CLONING
in sip_msg.h.
Miklos Tirpak [Wed, 26 Mar 2008 09:47:18 +0000 (09:47 +0000)]
select_list() function must not return the global class when the global
flag is not set.
Fixes SER-368
Jan Janak [Fri, 21 Mar 2008 13:14:16 +0000 (13:14 +0000)]
- added support for extra authentication checks along with comments explaining
what is checked when and why. Disabled by default.
Miklos Tirpak [Tue, 18 Mar 2008 17:04:16 +0000 (17:04 +0000)]
- Session Timer proxy support is introduced (RFC 4028)
- custom config parameters are added to the script
- t_relay_cancel() is enabled to bypass the routing logic if possible
- NAT fixes (patch from Nils Ohlmeier)
- Record routing and loose routing is split into two parts to support
encoding of AVPs that are lately set in the script (patch from
Nils Ohlmeier)
Miklos Tirpak [Mon, 17 Mar 2008 11:16:19 +0000 (11:16 +0000)]
on_sl_reply module parameter is introduced:
It defines the route block that is called if a reply with no associated
transaction is received.
Closes SER-330
Miklos Tirpak [Mon, 17 Mar 2008 10:39:51 +0000 (10:39 +0000)]
t_drop_replies() script function is introduced.
It can be used to drop the received replies in failure_route block,
and disable all the previous replies to be selected again.
Closes SER-301
Miklos Tirpak [Mon, 17 Mar 2008 09:45:22 +0000 (09:45 +0000)]
fixing function name in the error message
Pavel Kasparek [Thu, 13 Mar 2008 14:17:39 +0000 (14:17 +0000)]
typo fixed
Pavel Kasparek [Thu, 13 Mar 2008 11:12:51 +0000 (11:12 +0000)]
fixing nathelper module parameter name to natping_crlf
Andrei Pelinescu-Onciul [Wed, 12 Mar 2008 20:42:30 +0000 (20:42 +0000)]
- fix: sip_msg_cloner wrongly translated parsed_uri when the message had
new_uri set (probably not seen until now because we set parsed_uri_ok to 0
on failure route and we didn't have non-failure callbacks causing the uri to
be reparsed)
Andrei Pelinescu-Onciul [Tue, 11 Mar 2008 23:59:27 +0000 (23:59 +0000)]
- use cancel_b_method also when CANCEL-ing due to received 6xx
Andrei Pelinescu-Onciul [Tue, 11 Mar 2008 22:05:44 +0000 (22:05 +0000)]
- cancel_b_method is now 1 by default => changes default cancel unreplied
branch behaviour: keep retransmitting the INVITE until a response is received
or the timeout kicks in (if the received response is provisional a CANCEL
will be automatically sent back). To revert to the old behaviour (stop
retransmissions and send back fake 487s) use
modparam("tm", "cancel_b_method", 0).
Jiri Kuthan [Mon, 10 Mar 2008 20:58:19 +0000 (20:58 +0000)]
uncommented disabling crlf natping
Miklos Tirpak [Mon, 10 Mar 2008 14:14:10 +0000 (14:14 +0000)]
reparse_on_dns_failover module parameter is introduced
(I forgot the commint the config files)
Miklos Tirpak [Mon, 10 Mar 2008 14:09:01 +0000 (14:09 +0000)]
- Requests after a DNS failover are constructed from the outgoing
message buffer of the failed branch instead of from the incomming
request.
- reparse_on_dns_failover module parameter is introduced.
Closes SER-300
Miklos Tirpak [Mon, 10 Mar 2008 10:37:24 +0000 (10:37 +0000)]
log message is changed to debug level in cfg_lookup_var(),
the message does not indicate an error in the framework
Pavel Kasparek [Mon, 10 Mar 2008 10:12:28 +0000 (10:12 +0000)]
debian debconf - forgotten +++ removed
Andrei Pelinescu-Onciul [Mon, 10 Mar 2008 09:58:15 +0000 (09:58 +0000)]
- missing docs for the cancel_b_method tm parameter
Pavel Kasparek [Mon, 10 Mar 2008 09:54:34 +0000 (09:54 +0000)]
debian debconf configuration - new separate question for ip address used for sending REGISTER replication
Andrei Pelinescu-Onciul [Sat, 8 Mar 2008 00:20:36 +0000 (00:20 +0000)]
- added a new tm parameter (cancel_b_method) that selects between 3 different
behaviours when attempting to cancel a branch where no reply was received:
0 (default) - stop request retransmission and send back a fake 487 (old ser
behaviour) ;
1 - keep retransmitting the request until a reply is received or the final
reply timeout kicks in ;
2 - stop request retransmission and send and retransmit a cancel on the
branch (this is not rfc conformant, but IMHO it wouldn't hurt) .