[sr-dev] [kamailio/kamailio] core: cfg.lex support for undefned env vars (PR #2969)

Ben Kaufman notifications at github.com
Thu Dec 9 20:46:25 CET 2021


<!-- Kamailio Pull Request Template -->


#### 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] New feature (non-breaking change which adds new 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 #2967 

#### Description
Add new preprocessor keywords `trydefenv` and `trydefenvs` that work like `defenv` and `defenvs` respectively, with the difference that if the environmental variable is not defined, then the value in Kamailio will not be defined.

For example:
```
#!KAMAILIO

loadmodule "xlog"
loadmodule "pv"

#!trydefenv EXTRALOG

request_route {
    #!ifdef EXTRALOG
       xlog("L_I", "Some Extra Logging here\n");
    #!endif
    forward ();
}
```
If the environmental variable `$EXTRALOG` is defined, the log line will be written.  If the environmental variable is not set, then in Kamailio `EXTRALOG` will not be defined and the `#!ifdef` section will not be loaded.




You can view, comment on, or merge this pull request online at:

  https://github.com/kamailio/kamailio/pull/2969

-- Commit Summary --

  * core: cfg.lex support for undefned env vars

-- File Changes --

    M src/core/cfg.lex (56)
    M src/core/ppcfg.h (8)

-- Patch Links --

https://github.com/kamailio/kamailio/pull/2969.patch
https://github.com/kamailio/kamailio/pull/2969.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/2969
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-dev/attachments/20211209/2d016bb5/attachment.htm>


More information about the sr-dev mailing list