Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Check emergency urn function kamailio 5.8.1 #5

Draft
wants to merge 102 commits into
base: master
Choose a base branch
from

Conversation

anmartan
Copy link

@anmartan anmartan commented Jul 3, 2024

Pre-Submission Checklist

  • Commit message has the format required by CONTRIBUTING guide
  • Commits are split per component (core, individual modules, libs, utils, ...)
  • Each component has a single commit (if not, squash them into one commit)
  • No commits to README files for modules (changes must be done to docbook files
    in doc/ subfolder, the README file is autogenerated)

Type Of Change

  • Small bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds new functionality)
  • Breaking change (fix or feature that would change existing functionality)

Checklist:

  • PR should be backported to stable branches
  • Tested changes locally
  • Related to issue #XXXX (replace XXXX with an open issue number)

Description

miconda and others added 30 commits February 23, 2024 19:35
- entering the phase to prepare releasing next major version series
  5.8.x
Client modules (e.g. dispatcher) that require outbound TLS
may race if tls init is too late.

Restore tls init to PROC_INIT with a thread executor.

Addresses GH kamailio#3765

Cherry-pick from 706d7b7
- http_client, http_async_client, xcap_client use libcurl
- call curl_global_init in a thread executor as it invokes
  OpenSSL functions on Debian 12
- clang-format
(cherry picked from commit 967fb30)
(cherry picked from commit 8af509a)
- remove tls_map.* - not needed anymore
- install an ENGINE in each worker SSL_CTX
  no need to replicate to all processes

Cherry-pick from 5933893
- sync with code of tls module

(cherry picked from commit d443a1e)
(cherry-picked from commit 73e7123)
- initial support for v3 provider keys (replaces ENGINE from v1.1.1)
- can be disabled behind build flag -DOPENSSL_NO_PROVIDER
- provider keys start with /uri: e.g
  private_key = /uri:pkcs11:token=NSS%20Certificate%20DB;type=private;object=Fork-Test-c67cc0e0
- global config:
  provider_quirks: 0 | 1
  - 0 - default
  - 1 - create a new OSS_LIB_CTX* in the child

This integration does not load any providers itself and depends on
the usual

export OPENSSL_CONF=my-openssl.cnf

to configure providers.

(cherry picked from commit 69883dd)
- add global handling of thread-locals with
  tls_threads_mode = 2
- this will run a pthread_atfork handler to reset
  all thread-locals to 0x0
- alternative solution to running functions
  in thread executors
- requires tls.so to be loaded to be effective

(cherry picked from commit e7f040f)
- use pthread_atfork to force all thread-locals
  to 0x0 after fork()

(cherry picked from commit 464299c)
(cherry picked from commit f6f9d90)
(cherry picked from commit 65eef5c)
xkaraman and others added 21 commits March 28, 2024 16:05
- follow up of previous commit

(cherry picked from commit 14dc277)
(cherry picked from commit e39557c)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.