#### Pre-Submission Checklist <!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply --> <!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above--> <!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list --> - [X] Commit message has the format required by CONTRIBUTING guide - [X] Commits are split per component (core, individual modules, libs, utils, ...) - [X] Each component has a single commit (if not, squash them into one commit) - [X] 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 - [X] 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: <!-- Go over all points below, and after creating the PR, tick the checkboxes that apply --> - [ ] PR should be backported to stable branches - [X] Tested changes locally - [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description Audit of libssl calls with default kamailio.cfg + database using MariaDB and PostgreSQL and add libssl thread guards.
Debian 12: for the default kamailio.cfg we build db_mysql / db_postgres / db_unixodbc and enable database with SSL 1. mariadb-client, libmariadb-dev, odbc-mariadb 2. postgresql-15, postgresql-client-15, odbc-postgresql
This PR adds thread guards for all function calls that touch thread-locals in process#0thread1
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3748
-- Commit Summary --
* core/rthreads.h: thread wrapper for db_XXXX_query * db_postgres: libssl thread guard for db_postgres_close * db_unixodbc: libssl thread guards for db_unixodbc_(close|free_result|query) * db_mysql: libssl thread guard for db_mysql_close
-- File Changes --
M src/core/rthreads.h (53) M src/modules/db_mysql/km_dbase.c (8) M src/modules/db_postgres/km_dbase.c (8) M src/modules/db_unixodbc/dbase.c (27)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3748.patch https://github.com/kamailio/kamailio/pull/3748.diff
Merged #3748 into master.