25538 Commits

Author SHA1 Message Date
Travis Cross
311d7249fa Add voicemail parameter storage-dir-shared
If this is set to true (default false) we assume the storage-dir is
shared, organized by realm/domain, with uses other than voicemail, so
we adopt a directory structure of:

  <storage_dir>/<realm>/voicemail/<id>
2014-02-11 17:43:06 +00:00
Travis Cross
0ac4dcb8a6 Add vm-domain-storage-dir param
This replaces the semantics of the storage-dir parameter without the
deprecation notice.  The behavior of storage-dir never should have
been deprecated, though it was probably correct to deprecate the name
itself.

Rather than having both vm-storage-dir and vm-domain-storage-dir it
might be nice if the config system could just notice at what level it
was defined and do the right thing.  Indeed, this is why I'd left
things as-is for so long.

But as Master Foo famously said, "which one will reach the other side
of the river: the one who dreams of a raft, or the one that hitchhikes
to the next bridge?"

FS-5329
2014-02-11 15:53:03 +00:00
Travis Cross
cd6154b49e Add mod_sofia support for setting socket TCP keepalive
Some OSes like linux provide a mechanism for sending TCP keepalive
pings.  Sofia provides its own mechanism for doing this in userspace.
We shouldn't conflate these two mechanisms.

FS-6104
2014-02-11 06:40:10 +00:00
Travis Cross
92e2caf86b Rework handling of Linux TCP keepalives in Sofia
This separates out the Linux socket TCP keepalive timeout interval
from Sofia's internal mechanisms.  Earlier we tied these together.  In
retrospect this seems improper.

These two values can now be set separately.

You might, for example, want to keep the Sofia internal mechanism
disabled completely while enabling the platform-based mechanism if
your platform supports it.

We also here reform the default value of the socket TCP keepalive
parameter to 30 seconds.

This is what commit 1bf17857c9a322df50305606ca41203053001818 should
have been.

FS-6104
2014-02-11 06:39:50 +00:00
Travis Cross
f7c4dd79f5 Add additional debugging output to keepalive handling 2014-02-11 06:34:43 +00:00
Travis Cross
01a4aeaaeb Synchronize Sofia and Linux TCP keepalive timeout units
Sofia keeps the TCP keepalive timeout in milliseconds, but Linux
expects the value in seconds.  Before this change, it's unlikely the
TCP_KEEPIDLE and TCP_KEEPINTVL calls were having much effect as we
would have been passing them a huge value.

FS-6104
2014-02-11 06:34:40 +00:00
Ken Rice
2e6562af22 rev bump v1.2.20 2014-02-10 17:30:05 -06:00
Anthony Minessale
5b18879813 FS-6128 FS-6200 --resolve allocating the sofia_private on the nua_handle seems to lead to memory corruption, changing it back to malloc as done in the version before the regression 2014-02-11 04:06:11 +05:00
Anthony Minessale
38d679b205 FS-6208 --resolve that patch is correct but this other code will protect the seg in either case 2014-02-10 21:44:33 +05:00
Chris Rienzo
a6dfbf9442 mod_http_cache: fixed validation of S3 URL 2014-02-10 08:55:09 -05:00
Travis Cross
e2639e1d4d Add ifdefs around TLS v1.1 and v1.2 handling
This is needed to support squeeze for awhile longer.
2014-02-10 04:09:52 +00:00
Travis Cross
517c1b77ae Add some hardening to the debian build 2014-02-10 00:09:20 +00:00
Travis Cross
1b78cee611 Add support for setting custom LDFLAGS 2014-02-09 23:18:48 +00:00
Travis Cross
063545dfca Reorder build flags variables 2014-02-09 22:55:03 +00:00
Travis Cross
4985440032 Use simply-expanding variables for build flags 2014-02-09 22:54:00 +00:00
Jonathan Lennox
50791508b1 Fix inline functions when compiling as C99.
Make private inlines in C files 'static inline', not just 'inline', or the compiler
can discard the definition if it chooses not to inline it.

Make functions declared in header files not be declared inline (if they're defined in a
.c file).  It looks like no functions in this category are used in LibSRTP's critical
path, only for unit tests or generating AES tables.

To see the problem prior to this commit, compile with "gcc -O0 -std=gnu99".

Signed-off-by: Travis Cross <tc@traviscross.com>

This cherry-picks commit e2774dbd551ffe5f872eaec2b2d40b712a54e1ba from
libsrtp upstream.

FS-6196 --resolve
2014-02-09 22:34:05 +00:00
Travis Cross
d1e40b088a Add OpenSSL version check around ECDH
...we'll try to support ancient OpenSSL versions on v1.2 for awhile
longer.
2014-02-09 22:33:52 +00:00
Travis Cross
1398975622 Add support for EECDH to Sofia-SIP
This adds support for the ephemeral elliptic curve Diffie-Hellman key
exchange, which provides for forward secrecy in the event that
long-term keys are compromised.

For the moment, we've hard-coded the curve as prime256v1.
2014-02-09 20:13:44 +00:00
Jeff Lenk
096f92fb17 FS-6157 --resolve 2014-02-09 13:41:44 -06:00
Anthony Minessale
d6dfab2955 swigall 2014-02-09 04:30:15 +05:00
Anthony Minessale
95d36ac321 FS-5994 it looks like its microseconds 2014-02-09 04:24:53 +05:00
Anthony Minessale
d7bc0ab13b FS-5994 --resolve -- tips appriciated 2014-02-09 04:24:37 +05:00
Anthony Minessale
b8b475855e swigall stable 2014-02-09 00:13:42 +05:00
Brian West
fcbb664df9 ESL-66 2014-02-07 13:10:08 -06:00
Anthony Minessale
66fa44d889 FS-6198 --resolve 2014-02-07 04:00:02 +05:00
Chris Rienzo
c73fa9f9b0 mod_rayo: fix segfault in prompt component 2014-02-06 15:08:51 -05:00
Michael Jerris
5dcfe78169 FS-5763: --resolve add configure check for lzma and newer readhat/sl tinfo stuff 2014-02-06 12:41:52 -06:00
Anthony Minessale
0c65c4614d FS-6195 --resolve 2014-02-06 22:24:59 +05:00
Brian West
4a7bceb4d6 Update in-config docs 2014-02-06 08:59:51 -06:00
Travis Cross
1a435ef3d6 Delete old debian build tools 2014-02-06 06:11:05 +00:00
Travis Cross
1ee7ae5997 Delete old SVN build script 2014-02-06 06:04:32 +00:00
Travis Cross
8b4579c01d Support setting TLS cipher suites in mod_sofia
This adds a parameter tls-ciphers in which we can specify the TLS
cipher suite specification for OpenSSL.
2014-02-06 06:04:32 +00:00
Travis Cross
25c65d52c5 Allow setting TLS cipher suites through Sofia-SIP API
Previously there was no way to override the hard-coded cipher suite
specification of "ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH".

This commit does leave in place the hardcoded cipher spec for WebRTC
of "HIGH:!DSS:!aNULL@STRENGTH".
2014-02-06 06:04:32 +00:00
Chris Rienzo
195e959d61 mod_rayo: fix message->call input validation 2014-02-05 23:20:48 -05:00
Chris Rienzo
1f81993df6 FS-6192 --resolve 2014-02-05 22:25:14 -05:00
Travis Cross
aae91d6593 Default to TLSv1 through TLSv1.2 if unspecified 2014-02-06 02:45:51 +00:00
Travis Cross
3a753f1de2 Support setting enabled TLS versions in mod_sofia
Previously if tls-version was set to tlsv1 we supported only TLSv1,
but if it was set to sslv23 we supported all versions of TLS.  This
was a weird incorrectly documented behavior that we hope no one was
relying on.

Now we can pass a comma-separated list of TLS/SSL versions that we
would like to support in tls-version.

FS-5839 --resolve
2014-02-06 02:45:51 +00:00
Travis Cross
7f772b2601 Allow setting enabled TLS versions in Sofia-SIP
Previously if the TPTAG_TLS_VERSION was set to a non-zero value we
supported only TLSv1 (but not TLSv1.1 or TLSv1.2), and if was set to
zero we supported all versions of TLS and SSL (including the
ridiculous SSLv2).

Now we take an integer field where various bits can be set indicating
which versions of TLS we would like to support.
2014-02-06 02:45:50 +00:00
Chris Rienzo
b8cda452a2 FS-6092 --resolve mod_rayo - mixer with single call can be recorded 2014-02-05 17:03:40 -05:00
Chris Rienzo
a48132d1da FS-6181 --resolve 2014-02-05 16:59:34 -05:00
Anthony Minessale
41466b8c94 FS-6190 --resolve slightly modified, please test 2014-02-06 02:33:07 +05:00
Anthony Minessale
8fdb5e829a FS-6181 --resolve 2014-02-06 02:00:35 +05:00
Anthony Minessale
dedc4d7e3e FS-5396 --resolve add gethost function to call gethostbyname as desired
Conflicts:
	src/mod/endpoints/mod_sofia/mod_sofia.c
2014-02-06 01:52:22 +05:00
Ken Rice
e094f5dc70 version bump v1.2.19 2014-02-04 16:06:32 -06:00
Ken Rice
0f8783f32c small tweak to generate other source archive types 2014-02-04 16:01:06 -06:00
Anthony Minessale
cd4e926969 try to avoid compiler optimization snafu equiv to: 4021b5c 2014-02-05 00:36:10 +05:00
Anthony Minessale
1c2d2132a8 put back if block so we don't try secure where none is present 2014-02-04 11:54:07 +05:00
Giovanni Maruzzelli
3e8aa76e7c skypopen: new temporary address for downloading Skype client binary package 2014-02-03 16:47:55 -06:00
Travis Cross
2ddfecb4ed Improve configure handling of ODBC
This commit changes behavior such that if --disable-core-odbc-support
is provided we'll build without ODBC even if the libraries are there.

Previously we would always quietly build with ODBC support if it was
on the system.

Contrary to what was said in commit 72a804983, my 2012 commit
ffc8e81b7 did not affect the behavior of --disable-core-odbc-support.
We never recognized the flag as being different from not providing the
option at all.

What the commit did do was to cause us to fail loudly if
--enable-core-odbc-support was provided but the system libraries were
not there.  This behavior is preserved.

(That commit also caused us to potentially run certain checks twice,
which this commit resolves.)

You can also now provide --enable-core-odbc-support=optional which has
the same effect as the default behavior.

FS-6173 --resolve

Thanks-to: James Le Cuirot <chewi@aura-online.co.uk>
2014-02-01 16:33:09 +00:00
Chris Rienzo
0de9c52ba1 mod_rayo: fixed recording reference counts 2014-01-31 18:10:05 -05:00