Commit Graph

101 Commits

Author SHA1 Message Date
Michael Jerris 2f556d4802 FS-5819: don't assigne variable to itself 2013-09-30 13:29:04 -04:00
Brian West 2645113465 similar fix to 53d17a1312 2013-09-12 16:57:19 -05:00
Anthony Minessale d7e107a46a add tcp keepalive where possible 2013-04-25 12:15:30 -05:00
Anthony Minessale 9b11dbe4b9 FS-4452 --resolve 2013-03-06 12:58:30 -06:00
Anthony Minessale 63e2044a7e modify sofia debug code to print file, line numbers and function name 2012-10-26 14:15:14 -05:00
Travis Cross c85c8d7bbd
Add mechanism to set OpenSSL session timeout
In a sofia profile, you can now set the parameter tls-timeout to a
positive integer value which represents the maximum time in seconds
that OpenSSL will keep a TLS session (and its ephemeral keys) alive.

This value is passed to OpenSSL's SSL_CTX_set_timeout(3).

OpenSSL's default value is 300 seconds, but the relevant standard
(RFC 2246) suggests that much longer session lifetimes are
acceptable (it recommends values less than 24 hours).

Longer values can be useful for extending battery life on mobile
devices.

Signed-off-by: Travis Cross <tc@traviscross.com>
2012-06-11 21:46:05 +00:00
Jeff Lenk 5e66db63f1 FS-3896 --resolve that sizeof was incorrect 2012-02-17 08:50:03 -06:00
Anthony Minessale 7938fd81cc FS-3813 --resolve this should be ok 2012-01-16 12:47:37 -06:00
Marc Olivier Chouinard f97a3266df FS-3071 I've commited the upstream passphrase backport 2011-12-18 11:04:59 -05:00
Anthony Minessale 032155c51e FS-3658 remember to date > libs/sofia-sip/.update when you patch sofia lib 2011-11-02 08:59:23 -05:00
Anthony Minessale bc177a4b28 FS-3475 --resolve 2011-08-02 13:51:57 -05:00
Anthony Minessale ed23847574 fix mac build 2011-08-01 10:01:50 -05:00
Jeff Lenk 02bb35148d trivial compiler warning 2011-08-01 10:39:11 -05:00
Jeff Lenk 2b6a4f97c3 trivial portability issues c89 2011-08-01 09:48:08 -05:00
Anthony Minessale 3e029f0dfb add capture hooks to libsofia 2011-07-31 18:36:05 -05:00
Marc Olivier Chouinard 626a99f994 sofia-lib: More Fix for -Wunused-but-set-variable required compiler. (Might need to be ported back to sofia) 2011-04-23 20:33:19 -04:00
Jeff Lenk bcd31ecaf3 correction to last patch 2010-09-29 16:00:09 -05:00
Jeff Lenk 45ecbc2f61 fix warnings on windows x64 builds src and mods projects - only libsofia included on the libs side 2010-09-29 15:47:58 -05:00
Brian West 4d3dac5b52 FSBUILD-249
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@16744 d0543943-73ff-0310-b7d9-9358b9ac24b2
2010-02-23 22:56:54 +00:00
Michael Jerris 8dd6f9c6e0 try to fix different const qualifiers in openssl 1.0
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@15782 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-12-04 01:41:58 +00:00
Michael Jerris 511132ac1e fix sofia build when -std=c99
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@15746 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-12-01 22:42:18 +00:00
Mathieu Rene 57169ef9fb fix sofia build with new openssl
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@15426 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-11-11 05:33:59 +00:00
Michael Jerris 780bce83a4 Mon Jun 29 07:52:27 CDT 2009 kai.k.samposalo@nokia.com
* Symbian winscw build fix


git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@14193 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-07-10 00:54:04 +00:00
Michael Jerris fac4ab6d5d Wed Jun 3 12:25:35 CDT 2009 Pekka Pessi <first.last@nokia.com>
* tport_type_tls.c: added field names to tport_vtable_t initialization



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13985 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-06-26 19:54:39 +00:00
Michael Jerris dd22cf6876 Wed Jun 3 12:25:19 CDT 2009 Pekka Pessi <first.last@nokia.com>
* tport_type_udp.c: added field names to tport_vtable_t initialization

Wed Jun  3 12:25:52 CDT 2009  Pekka Pessi <first.last@nokia.com>
  * tport_type_tcp.c: added field names to tport_vtable_t initialization

Wed Jun  3 12:29:13 CDT 2009  Pekka Pessi <first.last@nokia.com>
  * tport_threadpool.c: added field names to tport_vtable_t initialization

Wed Jun  3 12:29:41 CDT 2009  Pekka Pessi <first.last@nokia.com>
  * tport_type_connect.c: added field names to tport_vtable_t initialization

Wed Jun  3 12:30:01 CDT 2009  Pekka Pessi <first.last@nokia.com>
  * tport_type_stun.c: added field names to tport_vtable_t initialization

Wed Jun  3 12:30:17 CDT 2009  Pekka Pessi <first.last@nokia.com>
  * tport_type_sctp.c: added field names to tport_vtable_t initialization



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13956 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-06-25 18:43:54 +00:00
Michael Jerris d073879155 Tue May 19 12:03:18 CDT 2009 Pekka Pessi <first.last@nokia.com>
* tport_tls.c: removed global tls_ex_data_idx, using static one



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13540 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-06-01 22:50:03 +00:00
Michael Jerris ed9ddb3c56 Tue May 19 12:00:30 CDT 2009 Pekka Pessi <first.last@nokia.com>
* su_uniqueid.c: Solaris misdefines PTHREAD_ONCE_INIT 
  Ignore-this: 9fe2247164d572901ed4a30b009353db
  
  Solaris defines pthread_once_t as a struct containing an array. The
  initializer PTHREAD_ONCE_INIT needs two levels of brackets it but only has
  one. Original patch from Mike Jerris <mike@jerris.com>.



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13388 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-05-19 17:25:08 +00:00
Michael Jerris 6f7641f94a Wed May 13 05:14:56 CDT 2009 Pekka Pessi <first.last@nokia.com>
* tport.c: better checking of IP6 addresses
  Ignore-this: 49f502ccaaf771abed1e5b2d00eaa8b8
  
  Coverity issue.


git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13335 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-05-15 16:04:28 +00:00
Michael Jerris 61c7a110b2 Tue May 12 13:23:33 CDT 2009 Pekka Pessi <first.last@nokia.com>
* tport.c: do not use out-of-scope array in tport_deliver()
  Ignore-this: a651d5eb213850d9dfd317102a432f8e
  
  Coverity issue.


git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13331 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-05-15 16:01:31 +00:00
Michael Jerris 0106f699e6 Tue May 12 13:04:33 CDT 2009 Pekka Pessi <first.last@nokia.com>
* tport_type_udp.c: tport_check_trunc() cleaned code
  Ignore-this: b39558360afb657325a4615d0919baaa
  
  Coverity issue.



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13327 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-05-15 15:54:54 +00:00
Michael Jerris 3f4f728974 Wed Apr 29 13:03:20 CDT 2009 Pekka Pessi <first.last@nokia.com>
* tport: close half-closed idle connections on windows, too



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13317 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-05-15 15:42:25 +00:00
Michael Jerris 123153d843 Wed Mar 11 11:52:58 CDT 2009 Pekka Pessi <first.last@nokia.com>
* tport.c: silence VC warnings
  Ignore-this: b81c43b73fcefa2dd58dd3366dd60368


git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@12751 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-03-24 15:46:13 +00:00
Michael Jerris 094de86372 Tue Mar 3 07:56:30 CST 2009 Pekka Pessi <first.last@nokia.com>
* tport.c: add TPTAG_LOG() and TPTAG_DUMP() to tport_get_params()
  
  Fixed return value from tport_set_params(), too.



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@12374 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-03-03 17:19:09 +00:00
Michael Jerris 024c64420f sync to darcs
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@12313 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-26 19:29:50 +00:00
Michael Jerris b161d3f93d sync file to darcs
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@12312 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-26 19:21:46 +00:00
Michael Jerris 96e65ddec3 Thu Feb 12 12:02:48 CST 2009 Jarod Neuner <janeuner@networkharbor.com>
* tport_tls: add/fix some tls init logging



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11964 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-12 21:30:05 +00:00
Michael Jerris 459bad1563 Thu Feb 12 14:56:11 CST 2009 Pekka Pessi <first.last@nokia.com>
* tport_type_tls.c: fixed error logging in tport_tls_connect()



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11958 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-12 21:23:05 +00:00
Michael Jerris cbb7805d53 Thu Feb 12 07:17:08 CST 2009 Pekka Pessi <first.last@nokia.com>
* tport.c: return correct errno from tport_connect()


git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11945 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-12 21:11:15 +00:00
Michael Jerris b5ef501d09 Thu Feb 12 07:17:31 CST 2009 Della Betta Filippo <filippo DOT dellabetta AT telecomitalia DOT it>
* tport.c: return correct errno from tport_listen()



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11944 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-12 21:10:11 +00:00
Michael Jerris 613a5ebf86 Wed Feb 11 15:01:08 CST 2009 Della Betta Filippo <filippo DOT dellabetta AT telecomitalia DOT it>
* tport.c: fixed tport_queuelen() when queue is full



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11942 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-12 21:08:29 +00:00
Raymond Chandler 8984a298a9 patch from FSBUILD-118
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11888 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-11 20:19:56 +00:00
Michael Jerris 38dabb3635 Thu Jan 15 09:50:45 CST 2009 Jarod Neuner <janeuner@networkharbor.com>
* TLS Subject Checking in tport
  
  sofia-sip/tport.h:
  * tport_delivered_from_subjects() returns type (su_strlst_t const *)
  * Export tport_subject_search()
  
  sofia-sip/tport_tag.h + tport_tag.c:
  * Remove TPTAG_TLS_VERIFY_PEER()
    - Depreciated.  Use TPTAG_TLS_VERIFY_POLICY instead.
    - Binary Compatibility is preserved.
  * Add TPTAG_TLS_VERIFY_POLICY()
    - tport can verify incoming and/or outgoing connections, using:
      1) Certificate Signatures only - or - 
      2) Certificate Signatures and Certificate Subjects
  * Add TPTAG_TLS_VERIFY_DEPTH()
    - Restrict certificate chain verification to a set length.
  * Add TPTAG_TLS_VERIFY_DATE()
    - Disable notBefore/notAfter checking (application: embedded devices)
  * Add TPTAG_TLS_VERIFY_SUBJECTS()
    - Incoming connections must present client certificates with subjects
      that match an item in this list.
    - Intended Use: Proxy Authentication
  * Replaced TPTAG_TRUSTED() with TPTAG_X509_SUBJECT()
    - Commented out for future use.
    - Intended Use: SIP User Identities in Server Certificates.
  * Add appropriate doxygen documentation.
  
  tport.c
  * Add tport_subject_search()
    - Subject can be a hostname, IP Address, or a URI.
    - Valid subject examples include:
        example.com
        alice@example.com
        sip:alice@example.com
        sips:alice@example.com
  * tport_by_addrinfo() matches tpn_canon against the subject list
      of reusable TLS connections.
  
  tport_tls.h:
  * Add tls_init_secondary()
  * Remove tls_init_slave() & tls_init_client()
  
  tport_tls.c:
  * tls_verify_cb() supports TPTAG_TLS_VERIFY_DATE()
  * tls_post_connection_check() verifies certificate subjects.
  * tls_init_secondary()
    - Replaces tls_init_slave(), tls_init_client(), and tls_clone().
  
  tport_type_tls.c:
  * Removed erroneous reference to tport_tls_deliver()
  * Fix a memory leak caused by duplicate calls to tls_clone().
  * Populate the (tport_t *)->tp_subjects field with peer certificate data for
    new secondary connections.



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11830 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-11 17:03:59 +00:00
Michael Jerris 90311fbd2d Tue Jan 13 16:22:39 CST 2009 Pekka Pessi <first.last@nokia.com>
* tport_type_tls.c, tport_tls.c: added Jarod Neuner as one of authors
  
  Cleaned whitespace, too.



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11822 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-11 17:00:16 +00:00
Michael Jerris 8cb0c75279 Tue Jan 13 16:20:56 CST 2009 Pekka Pessi <first.last@nokia.com>
* TPTAG_TLS_VERIFY_PEER() added in 1.12.10



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11820 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-11 16:59:20 +00:00
Michael Jerris 1ab22fe83c Thu Jan 8 15:00:46 CST 2009 Pekka Pessi <first.last@nokia.com>
* tport: using <sofia-sip/su_string.h> functions



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11803 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-11 16:50:52 +00:00
Michael Jerris f92b45a9fa Mon Jan 5 06:43:24 CST 2009 Pekka Pessi <first.last@nokia.com>
* tport_type_tls.c: no tport_tls_deliver() yet



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11774 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-11 16:15:05 +00:00
Michael Jerris 1d36053c74 Mon Jan 5 06:43:04 CST 2009 Pekka Pessi <first.last@nokia.com>
* tport_tls.c: silences warnings on signedness



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11773 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-11 16:14:35 +00:00
Michael Jerris 0a07ac4b16 Mon Jan 5 06:42:09 CST 2009 Pekka Pessi <first.last@nokia.com>
* tport_tls.c: su_home_new() already zeros the allocated memory



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11772 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-11 16:14:05 +00:00
Michael Jerris 52fa079b2b Tue Dec 16 16:19:37 CST 2008 Jarod Neuner <janeuner@networkharbor.com>
* Early TLS Handshake and Verification
  
  tport_type_tls.c:
  * tport_tls_accept():
    - Replaces tport_accept for incoming TLS connections.
  * tport_tls_connect():
    - Replaces tport_base_connect() for outgoing TLS connections.
  
  tport_tls.c:
  * tls_t now use a memory home instead of malloc.
  * removed tls_check_hosts()
  * tls_connect():
    - Replaces tport_base_connect for TLS connection setup.
    - Completes TLS handshake and verifies peer certificates.
    - Destroys suspect TLS connections before sending/receiving payload.
    - Populates a su_strlst_t with subjects from the peer certificate.
  
  tport.c:
  * tport_is_verified()
    - true if peer certificate validated successfully
  * tport_delivered_from_subjects()
    - Certificate subjects listed in the peer certificate.



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11769 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-11 16:11:33 +00:00
Michael Jerris ece5252042 Tue Dec 16 11:58:26 CST 2008 Jarod Neuner <janeuner@networkharbor.com>
* Helper functions for vtp_connect and vtp_wakeup_pri.
  
  - Expose tport_setname() and tport_wakeup() via tport_internal.h
  - Add tport_register_secondary() for adding secondaries to a root, and
    to alleviate the need to export tprb_append.



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11768 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-02-11 16:10:58 +00:00