OpenSIPS 3.6 Genesys fork sync with latest stable 3.6 upstream - #151
Open
benceszigeti wants to merge 272 commits into
Open
OpenSIPS 3.6 Genesys fork sync with latest stable 3.6 upstream#151benceszigeti wants to merge 272 commits into
benceszigeti wants to merge 272 commits into
Conversation
reset dialog when it has been terminated - this prevents being accessed after the dialog was deleted. (cherry picked from commit ee74356)
(cherry picked from commit 8e948d2)
Reset the `tmp.s` pointer when assigning it to a structure, to avoid freeing it when the `tmp` is reused. Many thanks to Andrey F(@kertor) for reporting it and Nick Altmann(@nikbyte) for fixing it. Close OpenSIPS#3808 (cherry picked from commit 5595a92)
(cherry picked from commit 71541c9)
Reported by Evgeniy (@gostkov on GitHub) in OpenSIPS#3813
(cherry picked from commit 2cde87b)
(cherry picked from commit 1cb16e0)
(cherry picked from commit c58e3af)
(cherry picked from commit 6082b43)
Fixes OpenSIPS#3717 (cherry picked from commit a3ae498)
(cherry picked from commit 30825e4)
(cherry picked from commit 67483a5)
(cherry picked from commit 3cc28d1)
except for Debian 13, which is new package and cannot run with libpcre3
The reason is that librkafka depends on libcurl4-openssl-dev, which conflicts with libcurl4-gnutls-dev (cherry picked from commit 7d9aadc)
(cherry picked from commit c51e2dd)
This reverts commit 5021266.
Please enter the commit message for your changes. Lines starting
(cherry picked from commit bbc1a75)
(cherry picked from commit 6da1f76)
(cherry picked from commit 2a8a298)
…docs cfgutils: fix async sleep()/usleep() doc examples (cherry picked from commit 2c8760d)
this ensures that the dialog does not disapear while signaling operations are being performed. Many thanks to Nuno Almeida from Five9 for reporting this issue and his extensively testing to confirm the fix. (cherry picked from commit 9f9b26b)
Many thanks to Mike Johnston (@LCEbay) for reporting it! Close: OpenSIPS#4069 (cherry picked from commit d1ddd10)
…ains Multiple virtual TLS domains can be defined on a single socket via match_sip_domain (SNI), each with distinct require_cert and verify_cert settings. However, these domain-specific verification rules were never applied to the connection during the TLS handshake, leaving only the socket's default settings enforced. This commit adds SSL_set_verify to the SNI callbacks for both OpenSSL and WolfSSL to ensure the correct domain-specific rules are applied. (cherry picked from commit 5526637)
(cherry picked from commit 3ed3b93)
Close OpenSIPS#3898 (cherry picked from commit 79c664c)
Many thanks to @baevga for reporting it. Close: OpenSIPS#4117 (cherry picked from commit 3a78e5a)
- updated core function names and examples to match OpenSIPS 4.0 - synchronized all functions with core_cmds.c
(cherry picked from commit 77236ff521e2a8a5d1ed08edc9ab9d67ed0a6c5a)
Backported from commit 50442e9.
Backported from commit 59241f0.
(cherry picked from commit 85f6ba2)
…penSIPS#3820) During sockets_reload, all processes receive an IPC RPC to run rpc_socket_reload_proc(). Non-dynamic (worker) processes close their copy of each dynamic socket and then call receive_fd() on the shared sock_mgm_unix[0] socketpair to get a fresh fd from the mgm process. Because sock_mgm_unix[0] is shared across all workers and SOCK_STREAM delivers bytes in order (not per-message), concurrent receive_fd() calls race: worker A can consume the fd response intended for worker B. When this happens, worker B receives worker A's fd response, which references a socket already in worker B's listener list. The sock_listadd() macro then corrupts the linked list into a circular loop (si->next == si), causing push_sock2list() to spin at 100% CPU indefinitely. Add a sock_mgm_reload_lock that serializes the entire send-IPC-to-mgm + receive-fd sequence for worker processes. Dynamic (mgm) processes are excluded from this lock because they create sockets directly via sock_mgm_add_listener() and never call receive_fd(); including them would deadlock since the worker holding the lock blocks on receive_fd() waiting for the mgm to process rpc_sockets_send(). Fixes: OpenSIPS#3789 (cherry picked from commit 9f2990c)
Avoid calling SSL_set_fd() and SSL_shutdown() after TCP lifetime cleanup has invalidated the connection fd. Thanks to @mstocco for reporting issue! Close: OpenSIPS#4124
Do not use the reply status code as a request method when deciding whether SDP is provisional. This prevents re-INVITE pings from sending stale SDP after sequential offer/answer updates. Thanks to rwilkinson87 for reporting issue! Close OpenSIPS#4123 (cherry picked from commit ac1bdc9)
Many thanks to Nick Altmann for spotting this (cherry picked from commit 4bd55a2)
benceszigeti
requested review from
DHennessyGenesys,
SubhashC37,
bcnewlin,
davidtrihy-genesys,
kordian-pawelec and
sekharp-genesys
August 4, 2026 10:37
Not up to standards ⛔🔴 Issues
|
| Category | Results |
|---|---|
| Security | 3 critical |
🟢 Metrics 380 complexity
Metric Results Complexity 380
NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.
SubhashC37
approved these changes
Aug 4, 2026
sekharp-genesys
approved these changes
Aug 4, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.