[gnutls-devel] GnuTLS | includes: define cleanup functions for the use with __attribute__((cleanup)) (!1662)
Read-only notification of GnuTLS library development activities
gnutls-devel at lists.gnutls.org
Wed Oct 26 07:22:58 CEST 2022
Daiki Ueno created a merge request: https://gitlab.com/gnutls/gnutls/-/merge_requests/1662
Project:Branches: dueno/gnutls:wip/dueno/pointer-cleanup to gnutls/gnutls:master
Author: Daiki Ueno
This introduces `GNUTLS_DEFINE_POINTER_CLEANUP_FUNC` macro and definine
wrapper functions around `gnutls_*_deinit`, to be used with the cleanup
attribute supported by modern C compilers.
That enables automatic cleanup of resources inside a function;
applications could initialize pointers like the following:
```c
__attribute__((cleanup(gnutls_deinitp)))
gnutls_session_t session = NULL;
if (err)
return err;
```
Then `gnutls_deinit` is automatically called on session when the
function returns error.
## Checklist
* [x] Commits have `Signed-off-by:` with name/author being identical to the commit author
* [ ] Code modified for feature
* [ ] Test suite updated with functionality tests
* [ ] Test suite updated with negative tests
* [ ] Documentation updated / NEWS entry present (for non-trivial changes)
* [ ] CI timeout is 2h or higher (see Settings/CICD/General pipelines/Timeout)
## Reviewer's checklist:
* [ ] Any issues marked for closing are addressed
* [ ] There is a test suite reasonably covering new functionality or modifications
* [ ] Function naming, parameters, return values, types, etc., are consistent and according to `CONTRIBUTION.md`
* [ ] This feature/change has adequate documentation added
* [ ] No obvious mistakes in the code
--
Reply to this email directly or view it on GitLab: https://gitlab.com/gnutls/gnutls/-/merge_requests/1662
You're receiving this email because of your account on gitlab.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.gnupg.org/pipermail/gnutls-devel/attachments/20221026/ce6098df/attachment.html>
More information about the Gnutls-devel
mailing list