Aymeric Moizard
79d4781780
[eXosip_byte_generate_random/no openssl] fix infinite loop when exosip is compiled without openssl
2024-06-19 16:51:23 +02:00
Aymeric Moizard
80dc9cc38e
[subscription] update expires from int to uint32_t in order to reach the maximum allowed value from rfc.
2024-05-28 12:33:45 +02:00
Aymeric Moizard
5334e22f9b
[randomness] reduce random string length if large #define is used
2024-05-28 11:48:57 +02:00
Aymeric Moizard
44cd8cfbd3
[tls] late assignement of missing ephemeral_port seen on macosx
2024-02-12 11:30:32 +01:00
Aymeric Moizard
f8719853e4
[authentication] fix support for multi authentication for NICT transaction and improve authentication cache table management
2023-11-20 22:10:50 +01:00
Aymeric Moizard
6d8406c2c6
[epoll] if there is no event AND eXosip_event_wait(ctx, 0, 0) is used, then descriptor j_socketctl_event is flushed to avoid next wake up
2023-11-20 16:49:14 +01:00
Aymeric Moizard
866dee2a91
[authentication] if multiple authentication are used, keep adding them all in a new request with same Call-ID
2023-09-04 15:59:07 +02:00
Aymeric Moizard
27a16871bb
[randomness] improve randomness for call-id/branch/tag + API eXosip_generate_random
2023-06-19 15:13:26 +02:00
Aymeric Moizard
7d25444aeb
[refer-to] rename header from Refer-to to Refer-To to match exactly rfc3515
2023-04-13 19:23:22 +02:00
Aymeric Moizard
293f17631e
[spelling] fix spelling in comment [no change]
2023-02-10 12:37:16 +01:00
Aymeric Moizard
f8447c11e5
[ios] remove MULTITASKING_ENABLED on ios where kCFStreamNetworkServiceTypeVoIP is not allowed any more
2022-09-26 14:31:55 +02:00
Aymeric Moizard
3988123c8a
[retry] fix to avoid flood when expires is long [fix previous commit]
2022-07-13 16:02:09 +02:00
Aymeric Moizard
0a31c59169
[retry] fix to avoid flood when expires is short // optimize delay between retry
2022-07-11 18:57:37 +02:00
Aymeric Moizard
6593ced8d5
[TLS] return a transport error immediately when socket "send" API is failing to send a SIP message
...
[TLS] skip expired certificates when searching into windows/mac certificate stores
2022-07-11 18:53:54 +02:00
Aymeric Moizard
4c98e763fc
[dns] revert a change because using the cache is mandatory [no entry in conflict with configuration must exist]
2022-06-22 16:34:35 +02:00
Aymeric Moizard
9b5321da1f
[dns] do not re-use cache for AF_UNSPEC // avoid possible leak with cache for new dns usage
2022-06-22 15:33:55 +02:00
Aymeric Moizard
a5a18be776
[dns] add family in dns cache info to avoid wrong dns resolution when family is modified
2022-06-22 14:32:23 +02:00
Aymeric Moizard
e28078fcc5
[jauth] update sha256 code to support openssl 3.0
2022-06-08 11:12:06 +02:00
Aymeric Moizard
f32dde90db
[DTLS] fix build with libressl >= 3.4.1
2022-04-25 14:27:51 +02:00
Aymeric Moizard
b57de20370
[publish] fix to allow maximum authorized value for expires header [rfc3261] [TODO: same for other messages]
2022-04-06 14:03:06 +02:00
Aymeric Moizard
5245d40a1a
[so_mark] add OPTION to set SO_MARK on UDP/TCP/TLS outgoing sockets
2022-04-06 12:18:32 +02:00
Aymeric Moizard
07f355d678
[API] new eXosip_call_terminate_with_headers to add several headers in BYE [better prototype]
2022-03-05 10:24:03 +01:00
Aymeric Moizard
22c1e26e47
[API] new eXosip_call_terminate_with_headers to add several headers in BYE
2022-03-04 14:12:17 +01:00
Aymeric Moizard
9e23876a50
complete git ignore file
2022-02-27 11:35:48 +01:00
Aymeric Moizard
7b0983106e
update to version 5.3.0 // release
5.3.0
2021-11-22 16:13:39 +01:00
Aymeric Moizard
1151be62f7
add sip_storm tool for stress testing
2021-11-22 15:34:16 +01:00
Aymeric Moizard
dba71a5069
* rewrite socket error management in order to apply them to all pending ICT and NICT transactions.
...
In previous code, the code was doing its best to force a virtual retransmission so that the send
callback will be the one to detect transport errors. Unfortunatly, only one transaction is handling
the error and the other one will remain. Then, for a short time, the pending transaction will not
handle socket event correctly and unnecessary delay occurs before recovering.
The exact use case tested was an outgoing BYE, followed by an outgoign INVITE, followed by a
"Connection reset by peer" socket error, followed by a new socket being in progress and remaining
in this state for the duration of the BYE timeout [or a new outgoing xICT?].
The fix will force all pending transaction, trying to send an outgoing request, to execute a
"transport error". This will help to recover faster. REGISTER refresh will be done in most use-case.
And failover using NAPTR/SRV record will also be achieved when possible.
* add time information in cb_xixt_kill_transaction callback for debugging
* eXosip_lock will now include read on sockets.
2021-11-21 21:12:58 +01:00
Aymeric Moizard
b1143c4bf3
[tls] allow to accept wildcard with a new bit in tls_verify_client_certificate // and disable loading OS certifiate with a new bit in tls_verify_client_certificate
2021-08-07 23:46:21 +02:00
Aymeric Moizard
1eda889c99
[TLS] I beleive there is no reason to cut packet in 500 bytes chunks on ios [it works everywhere else]
2021-07-01 15:11:17 +02:00
Aymeric Moizard
962550fe22
[EXOSIP_OPT_SET_CONTACT_DIALOG_EXTRA_PARAMS] new option to set Contact parameters in request/answers dialogs
2021-06-23 17:59:00 +02:00
Aymeric Moizard
cba308af1c
[AMSIP_OPTION_SET_SIP_INSTANCE] allow any value inside +sip.instance instead of only urn:uuid
2021-06-23 16:19:14 +02:00
Aymeric Moizard
13121df2c9
[epoll] fix eXosip_event_wait when using epoll implementation where events are distributed in the next eXosip_event_wait call
2021-06-23 14:31:35 +02:00
Aymeric Moizard
a89c0134ef
update to version 5.2.1 // release // ADD MISSING CHANGELOG file
2021-05-25 13:34:00 +02:00
Aymeric Moizard
88979d67a4
update to version 5.2.1 // release
5.2.1
2021-05-25 12:09:26 +02:00
Aymeric Moizard
61c0564379
[ENABLE_MAIN_SOCKET]
...
This commit (follow up the previous one) is helping to establish
incoming TLS connections which are not flagged with "ssl_state = 3"
and never read with the epoll implementation.
A basic test with self signed certificate has been made.
Signed-off-by: Aymeric Moizard <amoizard@gmail.com >
2021-05-21 15:08:28 +02:00
Aymeric Moizard
fdec6a31b5
[ENABLE_MAIN_SOCKET]
...
When compiled with ENABLE_MAIN_SOCKET, exosip will be listening to incoming TCP and TLS connections.
This commit fix the epoll implementation:
* new socket must not have EPOLLOUT
* we make sure to read the main socket when an event is detected within the osip socket table
otherwise, the main socket is never read.
Signed-off-by: Aymeric Moizard <amoizard@gmail.com >
2021-05-18 13:11:01 +02:00
Aymeric Moizard
f2ed389fe8
[crash] check scheme upon processing 3xx
2021-05-10 15:50:07 +02:00
Aymeric Moizard
4e7ee0f98e
[_ex_strerror] use the correct one on ANDROID // improve the usage of the GNU version
2021-05-10 15:48:06 +02:00
Ay Moizard
ad1ee5daf4
code clean up and compilation warnings
2021-03-26 19:39:53 +01:00
Aymeric Moizard
2a9adb80b9
[ssl] fix to be compatible with libressl
2021-03-25 21:10:26 +01:00
Aymeric Moizard
bad81009f1
[patch #10046 ]
...
* https://savannah.nongnu.org/patch/?10046
* Build fix with old openssl version [earlier than openssl 1.1.0]
* introduce in commit a7161da5 [March 3rd 2021]
2021-03-25 11:37:56 +01:00
Aymeric Moizard
38538142f4
fix when Content-Type indicates application/sdp, but there is no body
2021-03-15 16:42:27 +01:00
Aymeric Moizard
d88ef0f9ed
[libressl] fix missing SSL_set0_rbio not defined in libressl
2021-03-09 20:19:41 +01:00
Aymeric Moizard
a7161da574
[TLS] modify the code for TLS validation in order to improve logs and details on the connection
2021-03-06 00:12:04 +01:00
Aymeric Moizard
fd0db27a3d
use time_t instead of int for r_retry_after_delay variable [fix 1367a34ca commited on March 1st]
2021-03-06 00:08:58 +01:00
Aymeric Moizard
e8ce94ef32
revert previous commit: do not avoid adding authentication header for 403
2021-03-01 18:23:15 +01:00
Aymeric Moizard
1367a34ca2
* eXosip_default_action will return OSIP_RETRY_LIMIT when limit is reached
...
* make sure to obey the Retry-After header from REGISTER reply
2021-03-01 17:43:45 +01:00
Aymeric Moizard
28d109a084
it should give faster results to not reuse credentials which has been rejected with 403
2021-03-01 17:36:36 +01:00
Aymeric Moizard
212c2306e0
use newer osip_timersub MACRO
2021-02-16 16:47:23 +01:00
Aymeric Moizard
449740ec16
[bug#60024] fix openssl usage to always use callback mode for private key password, even when missing
2021-02-08 22:19:18 +01:00