#### 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, ...) - [ ] 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: <!-- Go over all points below, and after creating the PR, tick the checkboxes that apply --> - [ ] PR should be backported to stable branches - [ ] Tested changes locally - [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description A couple of commit (1 per each module) adding SSL support to db_redis and ndb_redis.
This mainly includes checking if proper parameter is provided (for ndb_redis it is `ssl` option in the DB URL and, for db_redis, a new `opt_ssl` parameter) and create a temporary SSL context that is used to initialise the redis context.
db_redis is also updated with another parameter to provide a DB access password.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3345
-- Commit Summary --
* db_redis: Adding SSL support * ndb_redis: Adding SSL support
-- File Changes --
M src/modules/db_redis/Makefile (8) M src/modules/db_redis/db_redis_mod.c (5) M src/modules/db_redis/redis_connection.c (43) M src/modules/db_redis/redis_connection.h (2) M src/modules/ndb_redis/Makefile (6) M src/modules/ndb_redis/redis_client.c (47) M src/modules/ndb_redis/redis_client.h (3)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3345.patch https://github.com/kamailio/kamailio/pull/3345.diff
@henningw commented on this pull request.
Thanks for the PR. I have added a few comments related to white space changes and variable declaration. Please remove the debugging comment regarding the password, its not a good security practice to log it. For merging this to our code base, you also need to add documentation to the modules. This is done by extending the XML file in the doc directory. They are are used to create the README and web site documentation.
LM_DBG("connecting to redis cluster at %.*s\n", con->id->url.len, con->id->url.s);
host_begin = strstr(con->id->url.s, "redis://"); if (host_begin) { host_begin += 8; - } else { - LM_ERR("invalid url scheme\n"); + } + + if (db_redis_opt_ssl != 0) { + /* Create SSL context*/ + redisInitOpenSSL(); + ssl = redisCreateSSLContext(NULL, NULL, NULL, NULL, NULL, NULL); + if (ssl == NULL) { + LM_ERR("Unable to create Redis SSL Context.\n");
It seems indention here is wrong, please adapt it for the goto and the one bracket.
@@ -137,14 +140,23 @@ int db_redis_connect(km_redis_con_t *con) {
char hosts[MAX_URL_LENGTH]; char* host_begin; char* host_end; + redisSSLContext *ssl = NULL;
consider moving this parameter definition to the beginning of the function, as its needed in #if and #else
status = redisClusterConnect2(con->con);
if (status != REDIS_OK) { LM_ERR("cannot open connection to cluster with hosts: %s, error: %s\n", hosts, con->con->errstr); goto err; } #else + redisSSLContext *ssl = NULL;
move to beginning, as before
#endif
- if (con->id->password) { - reply = redisCommand(con->con, "AUTH %s", con->id->password); + password = con->id->password; + if (!password) { + password = db_pass; + } + if (password) { + LM_DBG("Using password %s\n", password);
Please not log the password to the system log, this should be removed.
@@ -72,6 +74,7 @@ typedef struct redisc_server {
param_t *attrs; char *spec; redisContext *ctxRedis; + redisSSLContext *sslCtxRedis;
Fix the indention
@joelbax pushed 2 commits.
c6599607952ff480980ab1e6d0fb0c1ef73d2c05 db_redis: Review comments. fd7aefffe68dd05df711018985349f9738b97758 ndb_redis: Review comments
@joelbax pushed 1 commit.
70ff02129e305c1e32212daf76676fad08cd98d0 ndb_redis: Fixing indentation
@joelbax pushed 2 commits.
f91d109a04e36ce3fafe44f37ea3cf12c6c4e973 db_redis: Adding SSL documentation. fab1ecc2990560aa837356d9e29f40e72e272929 ndb_redis: Adding SSL documentation
@henningw Thank you very much for the feedback.
I've added documentation information into db_redis_admin.xml and ndb_redis_admin.xml files but I was wondering if I needed to add any reference in the authors/editors section in db_redis.xml and ndb_redis.xml. Please, let me know if that's needed.
@henningw commented on this pull request.
Thank you, looks good to me now. There seems to be a build error for gcc and clang related to the hiredis-ssl header in the automatic build tests. Could you have a quick look to that? You can find the build logs by clicking to the failed two jobs, thanks. Maybe we just need to add some packaging rules or similar.
@oej commented on this pull request.
@@ -213,6 +213,43 @@ modparam("db_redis", "keys", "version=entry:table_name;location=entry:ruid&u
<programlisting format="linespecific"> ... modparam("db_redis", "verbosity", 0) +... + </programlisting> + </example> + </section> + + <section id="db_redis.p.opt_ssl"> + <title><varname>opt_ssl</varname> (int)</title> + <para> + Controls SSL usage while connecting to a remote DB.
Please do not use "SSL" in any documentation as that protocol is old and deemed insecure. Replace with "TLS".
Setting names in new code should reflect this, regardless of the names used by old libraries.
@joelbax pushed 2 commits.
da0a566e27dfc8944d530ed13a7137379e5057f8 db_redis: Replacing SSL references by TLS 492cffe3d46b42aaf153c01404fdd242fb9d738c ndb_redis: Replacing SSL references by TLS
Thank you, looks good to me now. There seems to be a build error for gcc and clang related to the hiredis-ssl header in the automatic build tests. Could you have a quick look to that? You can find the build logs by clicking to the failed two jobs, thanks. Maybe we just need to add some packaging rules or similar.
I'm really sorry @henningw I totally missed that. I had to build hiredis with SSL support because default Debian packages didn't provide it. SSL is natively supported by hiredis, it was just a matter of getting the source package and building again with USE_SSL=1, I don't know why that's not provided by libhiredis-dev package by default.
Should I reject this PR until libhiredis-dev provides such support?
Thank you for removing "SSL" !
@joelbax Thanks for the update. No worries, for that we are having the automatic build tests. Regarding merging this PR, could you please check if there is maybe a C define that you could check if the SSL is included in the library? Then we could merge it and it should be available as soon its in debian stable etc..
@joelbax Any update regarding the last discussed topic about the define?
@henningw I'm really sorry for the long long delay but I've been constantly side-pulled in work and I couldn't find a define I could use, so, I'm thinking about a different approach checking if the SSL lib exists and do that define in the Makefile.
@joelbax Thanks for the reply. Do you have access for a locally compiled and installed libhiredis? Could you maybe execute this command: `$ pkg-config hiredis --cflags`
I am interested if maybe the pkg-config is usable here in deciding if its support SSL/TLS or not.
For reference, on my ubuntu it shows this:
``` $ pkg-config hiredis --cflags -D_FILE_OFFSET_BITS=64 -I/usr/include/hiredis ```
@joelbax pushed 2 commits.
1e5fbc78b86dc626fd936f51a376e6a542cfe2ba db_redis: Adding WITH_SSL flag a403c20f3b801e5043bf7b4de4935f86671d58c0 ndb_redis: Adding WITH_SSL flag
@joelbax pushed 250 commits.
d488407ececc207993d483c4d48a060579df4b1a cfg_db: clang-format for coherent indentation and coding style f719c8be69e33998f1953c896425fa1f69aadaec cfgt: clang-format for coherent indentation and coding style 388fa4f5874317de09ce2215512447d357a260bd cfgutils: clang-format for coherent indentation and coding style bd5ffa18a75f30293e454a2ece5e5447ce90c12f cnxcc: clang-format for coherent indentation and coding style 70625d0ba322ad23bbcf29c809aad4c15f566aa0 corex: clang-format for coherent indentation and coding style 35454ba09732a6d08e0cdf172af22cb0f59fb427 counters: clang-format for coherent indentation and coding style 00168efc53ff75d153894709fc172e29f83687dc cplc: clang-format for coherent indentation and coding style 913ef5b0f94237acea1ec851cfe9b7d05ae414f0 crypto: clang-format for coherent indentation and coding style 4940fd2e0a13ef3438dbf93c981d9e8e4f475c56 ctl: clang-format for coherent indentation and coding style 4f10a615df63bda84aa4a95893e453a79a0eb1b4 db2_ldap: clang-format for coherent indentation and coding style 8e9863e0a269c5daf81f2dfc88ae3e76d782c678 db2_ops: clang-format for coherent indentation and coding style 1dc0bbbe9d15782ca5bf807aef0cd3babc83c7af db_berkeley: clang-format for coherent indentation and coding style 8ab3075e036fb15a6218bed302d8d2bf18d752fd db_cassandra: clang-format for coherent indentation and coding style 81078ba7fb9bb084cde36228bbdee2e249198a03 db_cluster: clang-format for coherent indentation and coding style f8d371315ba6e951cc2c1c564603ee4718844ea3 db_flatstore: clang-format for coherent indentation and coding style 71b9235e3be8ad12666c05f3fb5bab18ea6fdeb1 db_mongodb: clang-format for coherent indentation and coding style 1e0cf1fb6b6348ea759d6bd44624bd1b51a6b36a db_mysql: clang-format for coherent indentation and coding style ff47e83bb4b646a857c3646f93227521ee4ed692 db_oracle: clang-format for coherent indentation and coding style 2c45e429bf745541238aab727955dc6267a385ef db_perlvdb: clang-format for coherent indentation and coding style 368c2dffd8e4f4d8335d0cbf73a68afe333ff0fa db_postgres: clang-format for coherent indentation and coding style 65b7724ae196ff9da346a486721de53d280cfff1 db_redis: clang-format for coherent indentation and coding style 3d7a3769d03a0c036a7e2514f972af4bd5c36055 db_sqlite: clang-format for coherent indentation and coding style 2a660612138dd212de748c65da89189681cfbbfc db_text: clang-format for coherent indentation and coding style 2b597d8c2a5316286929d13623c6b77c9600338a db_unixodbc: clang-format for coherent indentation and coding style 656e147c47088b8147d48948c482491f35fa4482 debugger: clang-format for coherent indentation and coding style 783a416f1a542a3e195660f13eff30b86304dabd dialog: clang-format for coherent indentation and coding style 01d0d1de2c82db189c288a157932f4a3ba98970a dialplan: clang-format for coherent indentation and coding style 6f45af36ef9d4fdd525a2c817c7800eff4136278 dispatcher: clang-format for coherent indentation and coding style d663b437f1642d4da41a953ab38083efbf2f2474 diversion: clang-format for coherent indentation and coding style a288219cd1194b127def679c745260c0154d6749 dlgs: clang-format for coherent indentation and coding style 85783de49890c4f678bad7561ea8eba99673355c dmq: clang-format for coherent indentation and coding style 12aea06c9ee18268ea7186600f2177996cf26aa5 dmq_usrloc: clang-format for coherent indentation and coding style d97cebf4a71c3a83ef7545fc5927fe9625207daa dnssec: clang-format for coherent indentation and coding style 8eb3ae270e7ee6f7508254255530939c5bb1880c domain: clang-format for coherent indentation and coding style b16014efa351fe52d3342795bbe7fb6e2d94d4ca domainpolicy: clang-format for coherent indentation and coding style f52dd528c488c9b0c6f55bd4720f9a53868d2f7e drouting: clang-format for coherent indentation and coding style 5886f6130fdb422e4c00786caaf48c0544c12b84 enum: clang-format for coherent indentation and coding style 4d856d4be25c29030c1a38efbc72d04e73550fb2 erlang: clang-format for coherent indentation and coding style 1fd07cc888a704a6cc1fa138a7c3bba5ff77152a evapi: clang-format for coherent indentation and coding style f45726eb8fa27ade3bc22929e7b40363b8959d7d evrexec: clang-format for coherent indentation and coding style 41cd7a2e3e99efd1b06e8d5694fada267da78811 exec: clang-format for coherent indentation and coding style 0b273cebbe6fa533e57f177fd403d057d43388f3 geoip: clang-format for coherent indentation and coding style 3560b72188b2ce13247dc66e6b3f7768be2a48e5 geoip2: clang-format for coherent indentation and coding style feb9b6d140e7ab4dd14c4427c2937c5ed9460747 group: clang-format for coherent indentation and coding style 2209444f837ace72d44f92cedabdf72f2011ab9e gzcompress: clang-format for coherent indentation and coding style 003cfd2abf71217ad936c6dc0781ae7374f1e3bb h350: clang-format for coherent indentation and coding style e3a31a046f7032d8a797a51751679c6b4163109a htable: clang-format for coherent indentation and coding style 66d99f277c8f0ba71c2d86ff6039924cd5c4ddaf http_async_client: clang-format for coherent indentation and coding style b6fd0eeec3807d043f7a18be7ac3586defaf5063 http_client: clang-format for coherent indentation and coding style 9f351785ff9b9c65370f7e576fdb51f4a247ed49 imc: clang-format for coherent indentation and coding style 7048217eb06e3d7a8eb5af48383f7f975f7af624 ims_auth: clang-format for coherent indentation and coding style 12f3e8f600bd160075d081a9208e3e40aa149643 ims_charging: clang-format for coherent indentation and coding style eccfa6bffeeb93d22a0c049af8d362023c9ca396 ims_dialog: clang-format for coherent indentation and coding style 57b636787d87ce922342d40df8424511711135da ims_diameter_server: clang-format for coherent indentation and coding style 7d29322056da699f09060884ee28e64dff885de7 ims_icscf: clang-format for coherent indentation and coding style a3b7d9989a5fe68937f6ea15a3a1b7a5804e97ad ims_ipsec_pcscf: clang-format for coherent indentation and coding style 4a5bb1088c684dc15b70318eb655a39052aef807 ims_isc: clang-format for coherent indentation and coding style fa2f17f0d697b45b98b4422bdc037adc6218c0fa ims_ocs: clang-format for coherent indentation and coding style d1a5dc6de5c4965236ead644342eac3e798d1df3 ims_qos: clang-format for coherent indentation and coding style d0d11e9f71636a49bc279930d00569c4d33931f1 ims_registrar_pcscf: clang-format for coherent indentation and coding style a8403652f033c8dc9bc7f1667fb1e33acfb371dd ims_registrar_scscf: clang-format for coherent indentation and coding style 8598f4e099a30e94af1fb526afc39170af53ee0d ims_usrloc_pcscf: clang-format for coherent indentation and coding style 874e9150a5dbce5bc5219962d169a1acad487bd6 ims_usrloc_scscf: clang-format for coherent indentation and coding style f8c6f3dc1b61b045c796d91b77f4afcc58576ca2 ipops: clang-format for coherent indentation and coding style 1f42d3fcfa6ca2cdf2bfa674dae075c85e90be2a jansson: clang-format for coherent indentation and coding style 393548de8effe4c1daff4100104c2c642962615e janssonrpcc: clang-format for coherent indentation and coding style c4e39b7c836c9cfd87f44e49104c04612e7ebe7a json: clang-format for coherent indentation and coding style 566db03019e8aca34d282938deee727ad8b4c4ac jsonrpcc: clang-format for coherent indentation and coding style 728ed60909173fd9ce513a136d4c9ea6d5e0b00b jsonrpcs: clang-format for coherent indentation and coding style e5bff977cf4e59aab006297a7a91520356f0a39f jwt: clang-format for coherent indentation and coding style 296caa2d6c9fd9eb86a17fa6719cccefd023f409 kafka: clang-format for coherent indentation and coding style b33f7a2a21978b1b624258e01c9cd988357c92f6 kazoo: clang-format for coherent indentation and coding style 567384c7f7f2b914b5cbbea65d9ab6936c713d25 keepalive: clang-format for coherent indentation and coding style ae2ad67fa04066ff3baa1196ac6074d054474628 kemix: clang-format for coherent indentation and coding style 65daf0988f44953c218f401d6027682822fff9da kex: clang-format for coherent indentation and coding style ecc2c9e54fa8f24c1e96860c1f59b43f2e1e8b7a lcr: clang-format for coherent indentation and coding style 3ad039d5f0b8bf851e484d917863bafbbef8e6ad ldap: clang-format for coherent indentation and coding style a1a2f82e0cf1c30c044a951750f0fc6553d5223a log_custom: clang-format for coherent indentation and coding style 73972a702a63d7209d303dbe4b3530aa8f9ffda2 log_systemd: clang-format for coherent indentation and coding style bae6239c6e3d56a4f5417646090cdbf34fe78b48 lost: clang-format for coherent indentation and coding style 0459451ed633d71988e312472b5c18980e3edeed lrkproxy: clang-format for coherent indentation and coding style d2e04212ab7bbb9bdaa443ef752f0d14019c520f lwsc: clang-format for coherent indentation and coding style 3d4c0d745ee1ec4af91ac45c1131ad0799611f23 mangler: clang-format for coherent indentation and coding style e20a865d4791d7cd113182133a45e1e92785a8aa math: clang-format for coherent indentation and coding style d6f57ba321c81bfbde8cdac5bdd6b0979d377450 matrix: clang-format for coherent indentation and coding style da6bb37ce2a7c99c1bfb567ef883e3a1bccb03c4 mediaproxy: clang-format for coherent indentation and coding style da7d1962c7f05cdaebd4f57f818abda95dba1e82 memcached: clang-format for coherent indentation and coding style e90ab1267bb4d42e1b2f64f0654aaa42fffea1be misc_radius: clang-format for coherent indentation and coding style a8eaac568a1dd2cfc9e6f87c8bdb76553c063d40 misctest: clang-format for coherent indentation and coding style 14759133db64489dc0c9f8e38682f6f64c0f9874 mohqueue: clang-format for coherent indentation and coding style 5afc71465aa7a3ef3e398e9a107fcb9fa1e73df4 mqtt: clang-format for coherent indentation and coding style 31af21a1022d39b2426a9c4cad658a9b92659a8a mqueue: clang-format for coherent indentation and coding style 44e5ec3910054bb3b1fe70c54f174d72ec82eb92 msilo: clang-format for coherent indentation and coding style cd9f807580082205565ab1ff9ef8a62272ec194a msrp: clang-format for coherent indentation and coding style 777c1cb6b4d28138a8b8fc085fdc5655e5565d88 mtree: clang-format for coherent indentation and coding style 5d1fbcab0817a41a3afbe609238bb1bf5cb3adc9 nat_traversal: clang-format for coherent indentation and coding style d952b84c85d72e59d88e8a77507bf4274954e090 nathelper: clang-format for coherent indentation and coding style 55ed36e45baf11abd4c67f17be8d3eaf313cd133 nats: clang-format for coherent indentation and coding style b49392ebcdf1f9af536742a0107720cfb6380f36 ndb_cassandra: clang-format for coherent indentation and coding style 8d402c220dd88b0622f68715a12c473907808d67 ndb_mongodb: clang-format for coherent indentation and coding style d8ca55e0bc8ebb62b94e9236e67ecf30a8f78a63 ndb_redis: clang-format for coherent indentation and coding style 28049ecee8a6407b7e1bc792498762dac9c922ae nosip: clang-format for coherent indentation and coding style 34f4c5a39cf4167e4667398dff26922441a7c5a0 nsq: clang-format for coherent indentation and coding style eb8c5c4283753793576a52831b2da50b1cab242f osp: clang-format for coherent indentation and coding style 3b770d392754fe4f9421f21afa230096e839e4d8 outbound: clang-format for coherent indentation and coding style 878a2c8044531b529bd399b62a8045922a423d73 p_usrloc: clang-format for coherent indentation and coding style f2220160e4cc233816af18de63e2e323e7ca9f24 path: clang-format for coherent indentation and coding style d8cd464075247e16dc9c142d350c575e3db52f53 pdb: clang-format for coherent indentation and coding style ca324931833cda3377acf451138cc39be2d49482 pdt: clang-format for coherent indentation and coding style 4bf8282e3bfcc16094d03fe1774268388dfa9c89 peering: clang-format for coherent indentation and coding style 71571d66c400aa2f80d866551b564208b29cc807 permissions: clang-format for coherent indentation and coding style 15605096ffdb540ce34f160bd8da601266bbc3a5 phonenum: clang-format for coherent indentation and coding style 448caabdc1c9ec1de6f08139df4a663977caa604 pike: clang-format for coherent indentation and coding style 1e3674afd25bd5fcaecd99e2d734d4973eae800e pipelimit: clang-format for coherent indentation and coding style 442f266bd3ce1d020375a1d5f9804e39da29c217 posops: clang-format for coherent indentation and coding style c38af2267479bf4dfd4a44101e2c87a6ddd8de98 prefix_route: clang-format for coherent indentation and coding style 197f64ff273e7eb62f341ff668036cca2f442fe2 presence: clang-format for coherent indentation and coding style 33a2c8ccc5a257b3114d6e46b67a94bfe9afcef0 presence_conference: clang-format for coherent indentation and coding style 953ef0c751ab1ec95c999547681c2373a90fef25 presence_dialoginfo: clang-format for coherent indentation and coding style 5152e2790722257ca75771a000140c96b5afc981 presence_mwi: clang-format for coherent indentation and coding style 7c729f6c6cf2c8771b43f35fd91d66f54193b258 presence_profile: clang-format for coherent indentation and coding style bffc6c4f69dac25e70505775bd017f6d4d3526ca presence_reginfo: clang-format for coherent indentation and coding style 194a8d4d38367548845cf2076015bac17aff8a51 presence_xml: clang-format for coherent indentation and coding style fc027184353d0e03c5c8790d3eaca8e93d8fcb81 print: clang-format for coherent indentation and coding style 6391b15598af3567df8e60408cd3eb94258af0b5 print_lib: clang-format for coherent indentation and coding style db1dfee3c76681e14b80a45a77b931d4748858cb pua: clang-format for coherent indentation and coding style 8966ab98d30d6278bdd9c282f3c666827000ad1e pua_dialoginfo: clang-format for coherent indentation and coding style 7a836358872d765aa0412eed380b96398a6f488b pua_json: clang-format for coherent indentation and coding style 3e79c970aa5fa1e028d82985b47645524d824dd4 pua_reginfo: clang-format for coherent indentation and coding style c4e589ab9dd52ad769d04edd1f0598405df42418 pua_rpc: clang-format for coherent indentation and coding style cb22d7e9c3e1fa5fffa7f7a22b179f96e6ef327e pua_usrloc: clang-format for coherent indentation and coding style c140c3acd69409b9f99c4986d84c5c9d5cb77b65 pua_xmpp: clang-format for coherent indentation and coding style f5c0077f65ca50940fc53776c2b964e45ebec8f5 pv: clang-format for coherent indentation and coding style d56093d37d65105b5550639df88c6b5902603f7e pv_headers: clang-format for coherent indentation and coding style 08b5cbc2e6639b744728c47df8373e506d972623 qos: clang-format for coherent indentation and coding style cf1978231edcad1611df9d88e670ac7b5cc7aab5 rabbitmq: clang-format for coherent indentation and coding style 79301505e26f55f2830d21dd960a130810f0b99d ratelimit: clang-format for coherent indentation and coding style fb7c59cafceb35628d40c727dbfa2990335b922a regex: clang-format for coherent indentation and coding style 42d357e5c1400f60f138b2d604e1f6bfb8d8b65e registrar: clang-format for coherent indentation and coding style 4f2523f2feb8042feacf9cfbd2ff73c2f8933ebf rls: clang-format for coherent indentation and coding style 4b120452ebfbd7bf935c3c9345d0ce1623e33812 rr: clang-format for coherent indentation and coding style eca9b97ead0a22490461a326aac4a0b4b1e7bc36 rtimer: clang-format for coherent indentation and coding style 135d55131dbcc0d8e8a99913629d930b567f5e41 rtjson: clang-format for coherent indentation and coding style 5f48f91efd3b5d3ed76fadc3604cd308eefdd8d9 rtp_media_server: clang-format for coherent indentation and coding style 37af6dfbe6756d6a3991fc757cd3e72c9e76f750 rtpengine: clang-format for coherent indentation and coding style bbb3604d1704d8e24d9fbf4ed863121d6914ec19 rtpproxy: clang-format for coherent indentation and coding style 85c0ced80dd9c0253f24f8c1b62f07793d859ba5 ruxc: clang-format for coherent indentation and coding style b48ac63551216b2afbf2d9d52c31cd390b181115 sanity: clang-format for coherent indentation and coding style ed20f7f62b3504d207af542f0a99f8b22e0899d4 sctp: clang-format for coherent indentation and coding style 7c9415686ac1ae59c21141dc3013d288246ac445 sdpops: clang-format for coherent indentation and coding style ba2cbf2ba100bc3f06511302535c1bea2778a3c7 seas: clang-format for coherent indentation and coding style 82100e1220e3ecd12afb986465957764f8743e3e secfilter: clang-format for coherent indentation and coding style 286c38522fdebdd4192126463725d4d9a2b83658 secsipid: clang-format for coherent indentation and coding style c726d55a19090f7da847171f27183e4f9db9457c secsipid_proc: clang-format for coherent indentation and coding style 7c36da9c0ca5faf98c7b66ee0678a36bd81c2d48 sipcapture: clang-format for coherent indentation and coding style 5b18c3415478e5f610199f63ba8d221d3e48f472 sipdump: clang-format for coherent indentation and coding style 6b63f482deef965e347f1d746587cfaff21d8146 sipjson: clang-format for coherent indentation and coding style 2c17fbc22f84229d5f11c17bbb15696b0dcf9ed6 siprepo: clang-format for coherent indentation and coding style b0633dd7bfc6c1802f5a098f1a3311e85b5d19b7 sipt: clang-format for coherent indentation and coding style 6ea356e2ef09ce0c9e27e12ba63bc191d648a9bb siptrace: clang-format for coherent indentation and coding style e569931dcd96087729eec1772a318e78ed505d14 siputils: clang-format for coherent indentation and coding style be5c1b59547e9503391da615edcd73bf0e3dab0c sl: clang-format for coherent indentation and coding style 698d642bb9ca309a2205b00d0ea10dbe74eda9c6 slack: clang-format for coherent indentation and coding style 976486d2c365f0c58c8273a5b2cb62f226c74202 sms: clang-format for coherent indentation and coding style 87766761e80656c37e967383708bec2ec66d0cac smsops: clang-format for coherent indentation and coding style f2cca4f00625e25b60b14dbcbee407144b18744e snmpstats: clang-format for coherent indentation and coding style 1b5ab42c21c9b248f35d956ca3af53e193c81824 speeddial: clang-format for coherent indentation and coding style aeabdb6fa5bb7f3ab49d5af5e5e4d2b69596d786 sqlops: clang-format for coherent indentation and coding style e051bdc1315321824a366df97c671623b47843c7 ss7ops: clang-format for coherent indentation and coding style 578a17a5c608078d317066144256403fb79985cd sst: clang-format for coherent indentation and coding style 972777a3555abeb5733629caeb0b0d9f674050e8 statistics: clang-format for coherent indentation and coding style 30898dff28871ddf5a2054c46dee3e2007d144b8 statsc: clang-format for coherent indentation and coding style 352a1f59d2e16501a1678f51705877f36b3edf65 stirshaken: clang-format for coherent indentation and coding style 4e3fb1666d7fe5b0c2973b842d065c1c7f9b8fbe stun: clang-format for coherent indentation and coding style d07141c699bf0e69b850f4100e83ad0b0354d4c0 sworker: clang-format for coherent indentation and coding style de74852a83e7830749d74ab82becc16139956969 systemdops: clang-format for coherent indentation and coding style 76482e4df45ee350fb3f502a2be0f31b9b9af14e tcpops: clang-format for coherent indentation and coding style 507d4240b5a08fa874857c81b4b9411dffe9e0d3 textops: clang-format for coherent indentation and coding style cd9be5e55a6cd4d8ec53511abd7315546d806c90 textopsx: clang-format for coherent indentation and coding style 68fe076d4fa9233519a414cfddc9fb5bea5d73d4 timer: clang-format for coherent indentation and coding style d253dcd8b6c2f0111e2a09e1f10baa1f0733a41b tls: clang-format for coherent indentation and coding style 7e36597b8f7797a0468a9d6d4a8070ba5603cf79 tls_wolfssl: clang-format for coherent indentation and coding style 5a347dd24e0d60d9eef48f27b95df43a0eb3eb78 tlsa: clang-format for coherent indentation and coding style 77693248300a6cecb802950fad754bf933218163 tm: clang-format for coherent indentation and coding style 9c15771fd3b4ddf63928751e359b42b49559d8e5 tmrec: clang-format for coherent indentation and coding style b0b4d5d41b8ff0e6afb429a91d16c07f8e6efffb tmx: clang-format for coherent indentation and coding style 963f301a08ab6c3e15a20181b23e9177eb1e2232 topoh: clang-format for coherent indentation and coding style f55112c0c5e442ce9e404940da583903420313ee topos: clang-format for coherent indentation and coding style f57e9aa15b7b5fb9b1116406320487ea8845dcf7 topos_redis: clang-format for coherent indentation and coding style 8187f195644ffd527f51d887dac34a1fb584edfd tsilo: clang-format for coherent indentation and coding style f2c587938311398818b8c7c3e02fc3af3726bb53 uac: clang-format for coherent indentation and coding style f22200bfe135577bb4a71c01106ea7ba5c1b886a uac_redirect: clang-format for coherent indentation and coding style db6b81a1a9995fec3720d01f32b517451ff2f077 uid_auth_db: clang-format for coherent indentation and coding style c9ef2603b5b6c6979049c6c0f9521025afc7a731 uid_avp_db: clang-format for coherent indentation and coding style 488501c35eff7be60b87753e3c841b082aad305c uid_domain: clang-format for coherent indentation and coding style 18725c558c8437fa80e545eedc4eb26d48f7dad7 uid_gflags: clang-format for coherent indentation and coding style 57e22554272f30a51ec460fa18492a000fdb5e48 uid_uri_db: clang-format for coherent indentation and coding style 8b3609542484c79cf09f3ee6fb57c1cc1a05138b uri_db: clang-format for coherent indentation and coding style af6b7b7034007dc51525732562853c402a6941a3 userblocklist: clang-format for coherent indentation and coding style 6e89f3e252dc6e8353ca3b7f2d7b29ab4173e8c8 usrloc: clang-format for coherent indentation and coding style e0d162afb8c87b56a800ee5ddd395af27969be80 utils: clang-format for coherent indentation and coding style 62db7b0e2b3f5ad40ca417e7d9c21518db448cb2 uuid: clang-format for coherent indentation and coding style 90eea708c8ba661fa02ef5bb6bbbb5102ad6246c websocket: clang-format for coherent indentation and coding style ce9cd3132bf5834b5d6c3ecac42b0e4c002da71d xcap_client: clang-format for coherent indentation and coding style 85ad2db0ced7c21e5f3e3871fc9cbdc0d637641a xcap_server: clang-format for coherent indentation and coding style d5a0735ee32685bfb070cb9288f6bbf4b699780c xhttp: clang-format for coherent indentation and coding style 0bc9de0dcdfbbceea45206cc5f9b4c7ab2a6f8ee xhttp_pi: clang-format for coherent indentation and coding style d9d1e2469e63aa58e7154ec44777efec8695ef20 xhttp_prom: clang-format for coherent indentation and coding style 43b7f3bd64eb1075e7e567cb008bfbd8b60f1503 xhttp_rpc: clang-format for coherent indentation and coding style 0e0f42ae1e4e3aa39458e512125f00e52b65686e xlog: clang-format for coherent indentation and coding style e748922b0f3c2346f633e1dbf2bfa97d11023697 xmlops: clang-format for coherent indentation and coding style 07044780f59b37e555e181a946658e841c66ca51 xmlrpc: clang-format for coherent indentation and coding style 709163fa7e8ac3a1bf0a1f8ac5fdaa0ccce64d67 xmpp: clang-format for coherent indentation and coding style 83b092fea98cf6ba8b716fcfb574ad24db818ce3 xprint: clang-format for coherent indentation and coding style 704f589577f51bb85b76070ca5722d54590b2c09 dispatcher: clarification regarding xavp_dst_mode docs 6183319381573e42b882d05ae1748539f7547d8c dispatcher: fix force send socket functionality, was not working in some TCP scenarios 1f53b159c311715b993ee33d40fb35017626e89c modules: readme files regenerated - dispatcher ... [skip ci] 08fbc4fa8d44c2c0ee596e1f30b95b5b4fcfc823 dispatcher: fix formatting after commit 1f53b159c311715b 2cac52c68feeacc1dc90e4ff322b6109c32669e8 README: remove travis-ci info [skip ci] f781dc9ce914cc619abd9d53f987f1155557b720 pre-commit: tool to keep thing tidy [skip ci] e15a57e0e027425827509277203341d55ace49fa pre-commit: update pre-commit-hooks [skip ci] e66a63a230e91461af0a82e3bbc54eabbf5195c7 README: add pre-commit badge 339891e7da584abcc378aa2104f536841d615e57 pre-commit: add mixed-line-ending hook [skip ci] a2209018fb03dda6d4b7df90f933c97bf4ae532b core: clang-format for coherent indentation and coding style 9ff464850c6ef23b37833b8c86efc1e973f744b1 kamctl: version set to 5.8.0 9c125234cd5bb7ff580e875c82002a8dd69fff82 iopops: realign exported structures to highlight better the fields 7971d825361bee29d65fcea69f2978d7af31eeaa ipops: create container items if not found for srv and naptr functions 423a818cf6e8f6d672630a0365e13877a173508f siprepo: check if list is set on insert 87ed3d9c3ae3ecfabe6d24f5fd3d656ef1182fac src/Makefile.defs: recognize GCC 13 as recent ⇔ not too old compiler 1205869ffd9c7e16a4f299b020f0bc90a2d4fcd7 core: pv_cache_dump cb6332982edff5fd2f10b6ee41c22388cc9a39b3 cdp: reworked switch for setting x->state = ACC_CC_ST_DISCON b2f99145fa7f4088c80dd3e759372445f93f5492 cfgt: reworked test on dest.s for freeing a059af04ac47fd31238ca4f22ad868529e035c43 sst: fix condition on sst_min_se for sst_check_min() bc544daea2ee4bb568cf0314f6d32b8aa0c81ecc async: use _async_timer_exec_last_slot = UINT_MAX for initial value 1217c9098bc8790e659959a7df97e441e84b54ff ims_usrloc_scscf: docs - type int for hash_size parameter bc82f8938a779dc5835079e0477b5970287c49e9 modules: readme files regenerated - ims_usrloc_scscf ... [skip ci] 57d583978fbfda1add035ee394ff93d95bfdc2fa db_redis: Adding SSL support fabd4b7bbd0b4b5ee312685ba8ffaa660e05ad1c ndb_redis: Adding SSL support 49248b2af764bc0bf7e6205b3b913bf833e9f26b db_redis: Review comments. c37644fda7344f9af4dd8817e7b662d48f42ed15 ndb_redis: Review comments 7eefd245a6d6c765ecad85fe0ff6189df21f585d ndb_redis: Fixing indentation d98f4e7d8b6da77cc12aed45ce5a33f900e24043 db_redis: Adding SSL documentation. a0a7f62501ec6802af75107988e93a4c9db5e53a ndb_redis: Adding SSL documentation 3c55963fa77ada0d03a3b11f40266c802a918ba6 db_redis: Replacing SSL references by TLS 3732a1820009392799532e682f4c5d69524538e5 ndb_redis: Replacing SSL references by TLS f26595a0801b0ad23d1da61605552c5f64bf7d34 db_redis: Adding WITH_SSL flag 38a10b9dec0c217404354a4a1134ff0c23be56ac ndb_redis: Adding WITH_SSL flag 9b813ca265ae559452c9465d15dc6e4738c1dd30 db_redis: Adding reference to authors documentation 300a79108b7478ccbb9d11b92ec4b5d96492d737 ndb_redis: Adding reference to authors documentation 21875f46adfbca3cb7af2b8a0dd95c8406971ed0 Merge branch 'master' of https://github.com/joelbax/kamailio
@henningw I finally got some time to work on this and used a similar approach of the one used in the Lua module. The problem is that hiredis is built with a Makefile flag and no macro is defined, so, I'm checking for SSL library existance and populate a WITH_SSL flag.
Unfortunately, after so much time, some indentation was fixed in this module and my fork had conflicts. Trying to fix them seems that screwed github's commit history. I'll cancel this, re-fork and re-apply my changes.
I'm really sorry for all the nuisance.
Closed #3345.