Merged
Conversation
ca26496 to
c209bd0
Compare
c209bd0 to
2a89cec
Compare
arogge
reviewed
Sep 12, 2022
Member
arogge
left a comment
There was a problem hiding this comment.
Looks pretty good, I just have some stylistic comments.
816ddfc to
4cde69a
Compare
f51ca98 to
b45cd76
Compare
This avoids freeing the resource table while the tls psk callback still needs to access it.
previously my_config was destroyed before the backups of the resource table. As the dtor if the resource tables needs the configparser this lead to a use-after-free.
the recently added functions BackupResourceTable(), RestoreResourceTable() and GetResourceTable() turned out to be badly named as they handle a shared_ptr<ConfigResourcesContainer> and there already is a type named ResourceTable. This commit renames the functions to BackupResourcesContainer(), RestoreResourcesContainer() and GetResoucesContainer().
b45cd76 to
e6a180c
Compare
arogge
approved these changes
Oct 7, 2022
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The director reload logic was not aware of the fact that the tls-psk mechanism's callback also accesses the configuration resources.
The tls_openssl_private objects now also have a shared_ptr to the configuration resources to make sure that these are not freed between the tls-psk callback is setup and the callback is really called.
The following patch can be used to trigger the problem when built with sanitizers:
kill -HUP $(pidof bareos_dir-reload)Please check
If you have any questions or problems, please give a comment in the PR.
Helpful documentation and best practices
Checklist for the reviewer of the PR (will be processed by the Bareos team)
General
Source code quality
bareos-check-sources --since-mergedoes not report any problemsgit statusshould not report modifications in the source tree after building and testing