### Description
When calling inline functions using `app_python3s_exec()`, setting the level to critical using either `KSR.xlog.xcrit("foo\n")` or using `KSR.xlog.xlog("L_CRIT", "foo\n")` Do not set the level on the log line in a manner consistent with other log levels.
#### Reproduction
Kamailio code:
```
request_route {
app_python3s_exec("log_test");
. . .
}
```
Python code to contrast how info level logging and critical level logging differ:
```
def log_test():
KSR.xlog.xinfo("This line log level: xinfo = INFO\n");
KSR.xlog.xcrit("This line log level: xcrit = CRITICAL\n");
KSR.xlog.xlog("L_INFO", "This line log level: xlog = L_INFO\n");
KSR.xlog.xlog("L_CRIT", "This line log level: xlog = L_CRIT\n");
```
#### Log Messages
Log output. Note how the info level lines begin with INFO, but the critical level lines begin with an empty string:
```
2(8) INFO: <script>: This line log level: xinfo = INFO
2(8) : <script>: This line log level: xcrit = CRITICAL
2(8) INFO: <script>: This line log level: xlog = L_INFO
2(8) : <script>: This line log level: xlog = L_CRIT
```
### Possible Solutions
The critical level lines should begin with `CRITICAL` - this is what happens if the xlog function is called in Kamailio script. The output should look like this:
```
2(8) INFO: <script>: This line log level: xinfo = INFO
2(8) CRITICAL: <script>: This line log level: xcrit = CRITICAL
2(8) INFO: <script>: This line log level: xlog = L_INFO
2(8) CRITICAL: <script>: This line log level: xlog = L_CRIT
```
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
version: kamailio 5.8.4 (x86_64/linux)
flags: USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MMAP, PKG_MALLOC, MEM_JOIN_FREE, Q_MALLOC, F_MALLOC, TLSF_MALLOC, DBG_SR_MEMORY, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLOCKLIST, HAVE_RESOLV_RES, TLS_PTHREAD_MUTEX_SHARED
ADAPTIVE_WAIT_LOOPS 1024, MAX_RECV_BUFFER_SIZE 262144, MAX_SEND_BUFFER_SIZE 262144, MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 8MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: unknown
compiled on 15:03:24 Nov 18 2024 with gcc 13.2.1
```
* **Operating System**:
Tested in docker on Windows 11 (WSL2) using alpine linux as a base. `/etc/os-releas`:
```
NAME="Alpine Linux"
ID=alpine
VERSION_ID=3.20.2
PRETTY_NAME="Alpine Linux v3.20"
HOME_URL="https://alpinelinux.org/"
BUG_REPORT_URL="https://gitlab.alpinelinux.org/alpine/aports/-/issues"
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4048
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/4048(a)github.com>
Module: kamailio
Branch: master
Commit: 299db405e54741e4dc1ec04e6658d6bc99901edf
URL: https://github.com/kamailio/kamailio/commit/299db405e54741e4dc1ec04e6658d6b…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-12-02T18:00:18+01:00
src/Makefiles: filter out CMakeLists.txt from modules discovery
---
Modified: src/Makefile
---
Diff: https://github.com/kamailio/kamailio/commit/299db405e54741e4dc1ec04e6658d6b…
Patch: https://github.com/kamailio/kamailio/commit/299db405e54741e4dc1ec04e6658d6b…
---
diff --git a/src/Makefile b/src/Makefile
index 28106b06852..4ba662535bb 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -118,10 +118,10 @@ endif
endif
else # config.mak doesn't need to be used
ifneq (,$(filter cfg config cfg-defs,$(word 1,$(MAKECMDGOALS))))
-# needed here to avoid starting a config submake
-# (e.g. rm -f config.mak; make config.mak), which would either require
+# needed here to avoid starting a config submake
+# (e.g. rm -f config.mak; make config.mak), which would either require
# double Makefile.defs defines execution (suboptimal), would loose
-# $(value ...) expansion or would cause some warning (if Makefile.defs exec.
+# $(value ...) expansion or would cause some warning (if Makefile.defs exec.
# is skipped in the "main" makefile invocation).
$(shell rm -rf config.mak)
config_mak=0
@@ -154,12 +154,13 @@ export extra_defs
# When group_include is used, we want: include_modules (based on group_include)
# - exclude_modules
-ifneq ($(modules_configured),1)
+ifneq ($(modules_configured),1)
#modules_all=$(filter-out modules/CVS,$(wildcard modules/*))
# create modules*_all vars
$(foreach mods,$(modules_dirs),$(eval \
- $(mods)_all=$$(filter-out $(mods)/CVS,$$(wildcard $(mods)/*))))
+ $(mods)_all=$$(filter-out $(mods)/CVS $(mods)/CMakeLists.txt, \
+ $$(wildcard $(mods)/*))))
#debugging
#$(foreach mods,$(modules_dirs),$(info "$(mods)_all=$($(mods)_all)"))
@@ -168,7 +169,7 @@ $(foreach mods,$(modules_dirs),$(eval \
$(mods)=$$(filter-out $$(addprefix $(mods)/, \
$$(exclude_modules) $$(static_modules)), \
$$(addprefix $(mods)/, $$(include_modules) )) ))
-else
+else
# Standard, old resultant set
$(foreach mods,$(modules_dirs),$(eval \
$(mods)_noinc=$$(filter-out $$(addprefix $(mods)/, \
@@ -214,14 +215,14 @@ C_INSTALL_UTILS= ../utils/kamctl
else
C_INSTALL_UTILS=
endif
-# list of scripts that should be installed along the core
+# list of scripts that should be installed along the core
# (here a script is something that doesn't have a Makefile)
C_INSTALL_SCRIPTS=
# list of extra configs that should be installed along the core
# Note: all the paths of the form /usr/*lib/$(CFG_NAME)/<module_dir>
# will be updated to the directory where the modules will be installed.
C_INSTALL_CFGS=
-# list of files that should be installed in the arch-independent
+# list of files that should be installed in the arch-independent
# directory (by default /usr/local/share/$(MAIN_NAME)))
C_INSTALL_SHARE=
@@ -237,11 +238,11 @@ tar_extra_args+=$(addprefix --exclude=$(notdir $(CURDIR))/, \
ifeq ($(CORE_TLS), 1)
tar_extra_args+=
else
- tar_extra_args+=--exclude=$(notdir $(CURDIR))/tls/*
+ tar_extra_args+=--exclude=$(notdir $(CURDIR))/tls/*
endif
ifneq ($(nodeb),)
- tar_extra_args+=--exclude=$(notdir $(CURDIR))/debian
+ tar_extra_args+=--exclude=$(notdir $(CURDIR))/debian
tar_name:=$(tar_name)_nodeb
endif
@@ -513,7 +514,7 @@ $(foreach mods,$(modules_dirs),$(eval $(call MODULES_RULES_template,$(mods))))
modules-all every-module: $(modules_dirs)
$(extra_objs):
- @echo "Extra objs: $(extra_objs)"
+ @echo "Extra objs: $(extra_objs)"
@for r in $(static_modules_path) "" ; do \
if [ -n "$$r" -a -r "$$r/Makefile" ]; then \
$(call oecho, "" ;) \
@@ -670,10 +671,10 @@ mk-install_dirs: $(cfg_prefix)/$(cfg_dir) $(bin_prefix)/$(bin_dir) \
$(modules_prefix)/$(modules_dir)$(mods) \
$(doc_prefix)/$(doc_dir)$(mods) )
-$(cfg_prefix)/$(cfg_dir):
+$(cfg_prefix)/$(cfg_dir):
mkdir -p $(cfg_prefix)/$(cfg_dir)
-$(run_prefix)/$(run_dir):
+$(run_prefix)/$(run_dir):
mkdir -p $(run_prefix)/$(run_dir)
$(bin_prefix)/$(bin_dir):
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### 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
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [x] 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
<!-- Describe your changes in detail -->
This PR adds initial support for building kamailio with CMake.
See [docs](https://github.com/kamailio/kamailio-wiki/pull/63) for more information on how to build and use CMake.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/4043
-- Commit Summary --
* core/resovle: Fix compile if DNS_USE_CACHE not defined
* core/forward: Define ret even if USE_TCP is not defined
* Add build folder to ignore
* Add CMake support
* Core compiles and runs successfully on Linux
* Add some notes regarding definitions
* Add missing definitions
* CMake: Clean up and minor fixes
* CMake: Add install targets for binary,cfg,kamctl and kamdbctl
* CMake: Install utils (kamctl,kamdbctl and required) with sed changes
* CMake: Move notes out of pkg
* CMake: Add uninstall target
* CMake: FIx core building and installing
* CMake: Add lib support
* CMake: Add initial module support
* CMake: Fix formating
* Update gitignore/Add cmake-format file
* Add aarch64 options
* Make cross-compile available
* Format CMakeLists with cmake-format
* Add build docs support
* cmake: add github action
* cmake: Remove windows from matrix
* cmake: Add aarch64 cross-compile
* cmake: rename arm to aarch64 arch
* cmake: Add clang support
* cmake: Remove duplicate definition
* cmake: Upgrade warning to errors to match clang
* cmake: Add target host definition
* cmake: Allow only by trigger
* cmake: Add cmake to most (all) modules
* cmake: declare dproto
* cmake: Add MOD_NAMEID definitions to modules
* cmake: modify build_rpath
* Change rpath
* cmake: Move kamailio to root folder
* cmake: Modify run path of modules
* cmake: var/run path change
* cmake: make it abs path
* cmake: Add option to select groups
* cmake: Add all modules group
* cmake: Default group set to default modules
* cmake: groups update, fixup me
* cmake: Add Find MariaDB and MySQL cmake
* cmake: Add absolute path for /var/run (fixup with other commit)
* cmake: Only search for mariadb
* cmake: Update mysql cmake
* cmake: Remove app_mono
* cmake: modify FindMariaDBCLient.cmake
* cmake: Add description to use_mcast option
* cmake: Fix format
* cmake: Add config files to uninstall target
* cmake: Add FindRadius to discover radius client
* cmake: Modify dependencies so parser c files are generated when needed
* cmake: Policy to link against targets defined in other CMakelists.
* cmake: Define MOD_NAME for all modules
* cmake: Remove RPath from module's Cmake and use PRIVATE on all
* cmake: Add support to exclude modules
* cmake: Modules with external deps ready
* cmake: Add srdb2 CMakeLists.txt
* cmake: Add various Find[Module] for cmake
* cmake: Add FindXXX to dedicated folder
* cmake: Add CPack for packaging (experimental)
* camke: Clean up some commented sections
* cmake/modules: Add NETSNMP
* cmake/libs: Modify targets with lib_ and add more libs
* cmake/modules: Update ALL modules CMakeLists.txt
-- File Changes --
A .github/workflows/cmake_build.yml (84)
M .gitignore (2)
A CMakeLists.txt (61)
A CMakelists.notes (54)
A cmake/aarch64-toolchain.cmake (28)
A cmake/cmake-format.py (240)
A cmake/cmake_uninstall.cmake.in (32)
A cmake/modules/FindBerkeleyDB.cmake (182)
A cmake/modules/FindErlang.cmake (151)
A cmake/modules/FindLdap.cmake (119)
A cmake/modules/FindLibev.cmake (60)
A cmake/modules/FindMariaDBClient.cmake (68)
A cmake/modules/FindMySQL.cmake (964)
A cmake/modules/FindNETSNMP.cmake (76)
A cmake/modules/FindOracle.cmake (115)
A cmake/modules/FindRadius.cmake (51)
A cmake/modules_docs.cmake (74)
A src/CMakeLists.txt (164)
A src/compiler-specific.cmake (55)
A src/core/CMakeLists.txt (57)
A src/core/autover.h.in (6)
M src/core/forward.h (6)
M src/core/resolve.c (8)
A src/defs.cmake (318)
A src/lib/CMakeLists.txt (30)
A src/lib/ims/CMakeLists.txt (22)
A src/lib/print/CMakeLists.txt (18)
A src/lib/srdb1/CMakeLists.txt (17)
A src/lib/srdb2/CMakeLists.txt (15)
A src/lib/trie/CMakeLists.txt (16)
A src/modules/CMakeLists.txt (143)
A src/modules/acc/CMakeLists.txt (10)
A src/modules/acc_diameter/CMakeLists.txt (8)
A src/modules/acc_json/CMakeLists.txt (12)
A src/modules/acc_radius/CMakeLists.txt (11)
A src/modules/alias_db/CMakeLists.txt (10)
A src/modules/app_java/CMakeLists.txt (14)
A src/modules/app_jsdt/CMakeLists.txt (8)
A src/modules/app_lua/CMakeLists.txt (22)
A src/modules/app_perl/CMakeLists.txt (14)
A src/modules/app_python/CMakeLists.txt (11)
A src/modules/app_python3/CMakeLists.txt (10)
A src/modules/app_python3s/CMakeLists.txt (10)
A src/modules/app_ruby/CMakeLists.txt (10)
A src/modules/app_ruby_proc/CMakeLists.txt (12)
A src/modules/async/CMakeLists.txt (8)
A src/modules/auth/CMakeLists.txt (9)
A src/modules/auth_db/CMakeLists.txt (10)
A src/modules/auth_diameter/CMakeLists.txt (8)
A src/modules/auth_ephemeral/CMakeLists.txt (8)
A src/modules/auth_radius/CMakeLists.txt (11)
A src/modules/auth_xkeys/CMakeLists.txt (8)
A src/modules/avp/CMakeLists.txt (8)
A src/modules/avpops/CMakeLists.txt (10)
A src/modules/benchmark/CMakeLists.txt (8)
A src/modules/blst/CMakeLists.txt (8)
A src/modules/call_control/CMakeLists.txt (8)
A src/modules/call_obj/CMakeLists.txt (8)
A src/modules/carrierroute/CMakeLists.txt (11)
A src/modules/cdp/CMakeLists.txt (10)
A src/modules/cdp_avp/CMakeLists.txt (8)
A src/modules/cfg_db/CMakeLists.txt (10)
A src/modules/cfg_rpc/CMakeLists.txt (10)
A src/modules/cfgt/CMakeLists.txt (8)
A src/modules/cfgutils/CMakeLists.txt (8)
A src/modules/cnxcc/CMakeLists.txt (18)
A src/modules/corex/CMakeLists.txt (8)
A src/modules/counters/CMakeLists.txt (10)
A src/modules/cplc/CMakeLists.txt (12)
A src/modules/crypto/CMakeLists.txt (10)
A src/modules/ctl/CMakeLists.txt (12)
A src/modules/db2_ldap/CMakeLists.txt (22)
A src/modules/db2_ops/CMakeLists.txt (10)
A src/modules/db_berkeley/CMakeLists.txt (12)
A src/modules/db_cluster/CMakeLists.txt (10)
A src/modules/db_flatstore/CMakeLists.txt (10)
A src/modules/db_mongodb/CMakeLists.txt (17)
A src/modules/db_mysql/CMakeLists.txt (19)
A src/modules/db_oracle/CMakeLists.txt (16)
A src/modules/db_perlvdb/CMakeLists.txt (13)
A src/modules/db_postgres/CMakeLists.txt (14)
A src/modules/db_redis/CMakeLists.txt (21)
A src/modules/db_sqlite/CMakeLists.txt (12)
A src/modules/db_text/CMakeLists.txt (10)
A src/modules/db_unixodbc/CMakeLists.txt (13)
A src/modules/debugger/CMakeLists.txt (8)
A src/modules/dialog/CMakeLists.txt (10)
A src/modules/dialplan/CMakeLists.txt (10)
A src/modules/dispatcher/CMakeLists.txt (10)
A src/modules/diversion/CMakeLists.txt (8)
A src/modules/dlgs/CMakeLists.txt (8)
A src/modules/dmq/CMakeLists.txt (10)
A src/modules/dmq_usrloc/CMakeLists.txt (8)
A src/modules/dnssec/CMakeLists.txt (19)
A src/modules/domain/CMakeLists.txt (10)
A src/modules/domainpolicy/CMakeLists.txt (10)
A src/modules/drouting/CMakeLists.txt (10)
A src/modules/enum/CMakeLists.txt (8)
A src/modules/erlang/CMakeLists.txt (11)
A src/modules/evapi/CMakeLists.txt (10)
A src/modules/evrexec/CMakeLists.txt (8)
A src/modules/exec/CMakeLists.txt (8)
A src/modules/file_out/CMakeLists.txt (8)
A src/modules/gcrypt/CMakeLists.txt (12)
A src/modules/geoip/CMakeLists.txt (12)
A src/modules/geoip2/CMakeLists.txt (13)
A src/modules/group/CMakeLists.txt (10)
A src/modules/groups.cmake (686)
A src/modules/gzcompress/CMakeLists.txt (12)
A src/modules/h350/CMakeLists.txt (8)
A src/modules/htable/CMakeLists.txt (10)
A src/modules/http_async_client/CMakeLists.txt (16)
A src/modules/http_client/CMakeLists.txt (10)
A src/modules/imc/CMakeLists.txt (10)
A src/modules/ims_auth/CMakeLists.txt (10)
A src/modules/ims_charging/CMakeLists.txt (10)
A src/modules/ims_dialog/CMakeLists.txt (10)
A src/modules/ims_diameter_server/CMakeLists.txt (10)
A src/modules/ims_icscf/CMakeLists.txt (12)
A src/modules/ims_ipsec_pcscf/CMakeLists.txt (14)
A src/modules/ims_isc/CMakeLists.txt (11)
A src/modules/ims_ocs/CMakeLists.txt (10)
A src/modules/ims_qos/CMakeLists.txt (10)
A src/modules/ims_qos_npn/CMakeLists.txt (10)
A src/modules/ims_registrar_pcscf/CMakeLists.txt (10)
A src/modules/ims_registrar_scscf/CMakeLists.txt (10)
A src/modules/ims_usrloc_pcscf/CMakeLists.txt (10)
A src/modules/ims_usrloc_scscf/CMakeLists.txt (10)
A src/modules/influxdbc/CMakeLists.txt (8)
A src/modules/ipops/CMakeLists.txt (8)
A src/modules/jansson/CMakeLists.txt (12)
A src/modules/janssonrpcc/CMakeLists.txt (16)
A src/modules/json/CMakeLists.txt (16)
A src/modules/jsonrpcc/CMakeLists.txt (16)
A src/modules/jsonrpcs/CMakeLists.txt (8)
A src/modules/jwt/CMakeLists.txt (16)
A src/modules/kafka/CMakeLists.txt (16)
A src/modules/kazoo/CMakeLists.txt (33)
A src/modules/keepalive/CMakeLists.txt (10)
A src/modules/kemix/CMakeLists.txt (8)
A src/modules/kex/CMakeLists.txt (8)
A src/modules/lcr/CMakeLists.txt (19)
A src/modules/ldap/CMakeLists.txt (10)
A src/modules/log_custom/CMakeLists.txt (8)
A src/modules/log_systemd/CMakeLists.txt (12)
A src/modules/lost/CMakeLists.txt (11)
A src/modules/lrkproxy/CMakeLists.txt (8)
A src/modules/lwsc/CMakeLists.txt (12)
A src/modules/mangler/CMakeLists.txt (8)
A src/modules/math/CMakeLists.txt (8)
A src/modules/matrix/CMakeLists.txt (10)
A src/modules/maxfwd/CMakeLists.txt (8)
A src/modules/mediaproxy/CMakeLists.txt (8)
A src/modules/memcached/CMakeLists.txt (12)
A src/modules/microhttpd/CMakeLists.txt (13)
A src/modules/misc_radius/CMakeLists.txt (12)
A src/modules/misctest/CMakeLists.txt (8)
A src/modules/mohqueue/CMakeLists.txt (10)
A src/modules/mqtt/CMakeLists.txt (14)
A src/modules/mqueue/CMakeLists.txt (10)
A src/modules/msilo/CMakeLists.txt (10)
A src/modules/msrp/CMakeLists.txt (8)
A src/modules/mtree/CMakeLists.txt (10)
A src/modules/nat_traversal/CMakeLists.txt (8)
A src/modules/nathelper/CMakeLists.txt (8)
A src/modules/nats/CMakeLists.txt (12)
A src/modules/ndb_cassandra/CMakeLists.txt (12)
A src/modules/ndb_mongodb/CMakeLists.txt (12)
A src/modules/ndb_redis/CMakeLists.txt (12)
A src/modules/nghttp2/CMakeLists.txt (20)
A src/modules/nosip/CMakeLists.txt (8)
A src/modules/nsq/CMakeLists.txt (29)
A src/modules/outbound/CMakeLists.txt (10)
A src/modules/p_usrloc/CMakeLists.txt (10)
A src/modules/path/CMakeLists.txt (8)
A src/modules/pdb/CMakeLists.txt (8)
A src/modules/pdt/CMakeLists.txt (10)
A src/modules/peering/CMakeLists.txt (11)
A src/modules/permissions/CMakeLists.txt (10)
A src/modules/phonenum/CMakeLists.txt (49)
A src/modules/pike/CMakeLists.txt (8)
A src/modules/pipelimit/CMakeLists.txt (10)
A src/modules/posops/CMakeLists.txt (8)
A src/modules/prefix_route/CMakeLists.txt (10)
A src/modules/presence/CMakeLists.txt (14)
A src/modules/presence_conference/CMakeLists.txt (10)
A src/modules/presence_dialoginfo/CMakeLists.txt (10)
A src/modules/presence_mwi/CMakeLists.txt (8)
A src/modules/presence_profile/CMakeLists.txt (8)
A src/modules/presence_reginfo/CMakeLists.txt (10)
A src/modules/presence_xml/CMakeLists.txt (13)
A src/modules/print/CMakeLists.txt (8)
A src/modules/print_lib/CMakeLists.txt (11)
A src/modules/pua/CMakeLists.txt (12)
A src/modules/pua_bla/CMakeLists.txt (10)
A src/modules/pua_dialoginfo/CMakeLists.txt (10)
A src/modules/pua_json/CMakeLists.txt (16)
A src/modules/pua_reginfo/CMakeLists.txt (10)
A src/modules/pua_rpc/CMakeLists.txt (9)
A src/modules/pua_usrloc/CMakeLists.txt (10)
A src/modules/pua_xmpp/CMakeLists.txt (10)
A src/modules/pv/CMakeLists.txt (9)
A src/modules/pv_headers/CMakeLists.txt (8)
A src/modules/pvtpl/CMakeLists.txt (8)
A src/modules/qos/CMakeLists.txt (8)
A src/modules/rabbitmq/CMakeLists.txt (26)
A src/modules/ratelimit/CMakeLists.txt (8)
A src/modules/regex/CMakeLists.txt (17)
A src/modules/registrar/CMakeLists.txt (9)
A src/modules/rls/CMakeLists.txt (15)
A src/modules/rr/CMakeLists.txt (8)
A src/modules/rtimer/CMakeLists.txt (8)
A src/modules/rtjson/CMakeLists.txt (8)
A src/modules/rtp_media_server/CMakeLists.txt (24)
A src/modules/rtpengine/CMakeLists.txt (10)
A src/modules/rtpproxy/CMakeLists.txt (10)
A src/modules/ruxc/CMakeLists.txt (18)
A src/modules/sanity/CMakeLists.txt (8)
A src/modules/sca/CMakeLists.txt (10)
A src/modules/sctp/CMakeLists.txt (11)
A src/modules/sdpops/CMakeLists.txt (8)
A src/modules/seas/CMakeLists.txt (8)
A src/modules/secfilter/CMakeLists.txt (10)
A src/modules/secsipid/CMakeLists.txt (8)
A src/modules/secsipid_proc/CMakeLists.txt (21)
A src/modules/sipcapture/CMakeLists.txt (10)
A src/modules/sipdump/CMakeLists.txt (8)
A src/modules/sipjson/CMakeLists.txt (8)
A src/modules/siprepo/CMakeLists.txt (8)
A src/modules/sipt/CMakeLists.txt (8)
A src/modules/siptrace/CMakeLists.txt (10)
A src/modules/siputils/CMakeLists.txt (10)
A src/modules/sl/CMakeLists.txt (8)
A src/modules/slack/CMakeLists.txt (10)
A src/modules/sms/CMakeLists.txt (8)
A src/modules/smsops/CMakeLists.txt (8)
A src/modules/snmpstats/CMakeLists.txt (23)
A src/modules/speeddial/CMakeLists.txt (10)
A src/modules/sqlops/CMakeLists.txt (10)
A src/modules/ss7ops/CMakeLists.txt (8)
A src/modules/sst/CMakeLists.txt (8)
A src/modules/statistics/CMakeLists.txt (8)
A src/modules/statsc/CMakeLists.txt (8)
A src/modules/statsd/CMakeLists.txt (8)
A src/modules/stirshaken/CMakeLists.txt (12)
A src/modules/stun/CMakeLists.txt (8)
A src/modules/sworker/CMakeLists.txt (8)
A src/modules/systemdops/CMakeLists.txt (12)
A src/modules/tcpops/CMakeLists.txt (8)
A src/modules/textops/CMakeLists.txt (8)
A src/modules/textopsx/CMakeLists.txt (8)
A src/modules/timer/CMakeLists.txt (8)
A src/modules/tls/CMakeLists.txt (46)
A src/modules/tls_wolfssl/CMakeLists.txt (15)
A src/modules/tlsa/CMakeLists.txt (35)
A src/modules/tm/CMakeLists.txt (12)
A src/modules/tmrec/CMakeLists.txt (8)
A src/modules/tmx/CMakeLists.txt (9)
A src/modules/topoh/CMakeLists.txt (8)
A src/modules/topos/CMakeLists.txt (10)
A src/modules/topos_redis/CMakeLists.txt (12)
A src/modules/tsilo/CMakeLists.txt (12)
A src/modules/uac/CMakeLists.txt (10)
A src/modules/uac_redirect/CMakeLists.txt (8)
A src/modules/uid_auth_db/CMakeLists.txt (9)
A src/modules/uid_avp_db/CMakeLists.txt (9)
A src/modules/uid_domain/CMakeLists.txt (10)
A src/modules/uid_gflags/CMakeLists.txt (10)
A src/modules/uid_uri_db/CMakeLists.txt (10)
A src/modules/uri_db/CMakeLists.txt (10)
A src/modules/userblocklist/CMakeLists.txt (10)
A src/modules/usrloc/CMakeLists.txt (10)
A src/modules/utils/CMakeLists.txt (12)
A src/modules/uuid/CMakeLists.txt (12)
A src/modules/websocket/CMakeLists.txt (17)
A src/modules/xcap_client/CMakeLists.txt (12)
A src/modules/xcap_server/CMakeLists.txt (12)
A src/modules/xhttp/CMakeLists.txt (8)
A src/modules/xhttp_pi/CMakeLists.txt (12)
A src/modules/xhttp_prom/CMakeLists.txt (8)
A src/modules/xhttp_rpc/CMakeLists.txt (8)
A src/modules/xlog/CMakeLists.txt (8)
A src/modules/xmlops/CMakeLists.txt (10)
A src/modules/xmlrpc/CMakeLists.txt (12)
A src/modules/xmpp/CMakeLists.txt (13)
A src/modules/xprint/CMakeLists.txt (8)
A src/os-specific.cmake (97)
A utils/kamctl/CMakeLists.txt (196)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/4043.patchhttps://github.com/kamailio/kamailio/pull/4043.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/4043
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/4043(a)github.com>
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### 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
- [x] Related to issue #3814
#### Description
<!-- Describe your changes in detail -->
When the fixup is done in main using fix_rls function (fixing the route lists in cfg file), all the children inherit the memory allocated as a copy that needs separate management.
The function responsible for the fixup (fix_actions) is also used to call the free_fixup function with an added argument.
Then on main, we call the free_rls ( as fix_rls) on two separate occasions. Once in cleanup() function for the main process and once in the sig_usr() function for each of the children.
This seems to work fine and after debugging with `file_out` fixups, I can no longer see memory leaks due to the malloced memory in one of the fixups.
- main.c: Call free_rls() in cleanup() function to clean route lists and fixed up parameters in main process.
- main.c: Call free_rls() in sig_usr() function to clean route lists and fixed up parameters in child processes.
My question is, after a parameter is fixed, is it saved somewhere else, therefore we can immediately free the fix-up resources and not on shutdown?
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/4023
-- Commit Summary --
* core: Add fix_actions function parameter in fix_actions to free fixed up resources
-- File Changes --
M src/core/route.c (61)
M src/core/route.h (3)
M src/core/rvalue.c (2)
M src/core/switch.c (4)
M src/main.c (4)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/4023.patchhttps://github.com/kamailio/kamailio/pull/4023.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/4023
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/4023(a)github.com>
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### 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
#### Description
While working on an IMS setup, I and @lynxis encountered some cases where it was unclear why some of the related modules would not load. They just did not without printing any messages as to why. I have identified a few cases where logging was missing and added it, in the hope that it might be helpful.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/4035
-- Commit Summary --
* ims_scscf: Add more logging to ipsec_create()
* ims_ipsec_pcscf: Add error logging
-- File Changes --
M src/modules/ims_ipsec_pcscf/cmd.c (14)
M src/modules/ims_ipsec_pcscf/ims_ipsec_pcscf_mod.c (9)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/4035.patchhttps://github.com/kamailio/kamailio/pull/4035.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/4035
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/4035(a)github.com>