Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Signal safety #3

Open
i80and opened this issue Nov 14, 2014 · 0 comments
Open

Signal safety #3

i80and opened this issue Nov 14, 2014 · 0 comments
Labels

Comments

@i80and
Copy link
Member

i80and commented Nov 14, 2014

Only select functions can be safely called within a signal handler. Currently we are doing literally nothing asynchronous-safe.

The solution will probably involve setting an exit flag on SIGINT/SIGTERM, and testing somehow inside the FUSE main loop. We should also be handling SIGSEGV to at least wipe memory, but as specified in POSIX, doing anything after the SIGSEGV handler is undefined behavior. In that case, perhaps it would be best to simply wipe any private info and terminate (abort()) but not remove any locks or flush any buffers.

@i80and i80and added the bug label Nov 14, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant