You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Greetings! Thanks for this great library, we've incorporated it into a fork of the 'jsonpath' library where we swapped the unsafe static-eval backend w/ v8-sandbox to safely process arbitrary user-specified expression.
In the application which uses jsonpath-sandbox we capture process-terminating signals and gracefully shutdown operations, restoring data to a consistent state before terminating. Part of this invokes the v8-sandbox shutdown method to cleanup operations here. The problem is that v8-sandbox utilizes the onExit function in the signal-exit module to catch error / exceptions on its own and invokes shutdown locally. Thus if the client process receives a signal while processing expressions that operation will not have the chance to gracefully terminate, handle the results and data could enter an inconsistent state.
Would it be possible to add a Sandbox constructor option to skip over the 'onExit' call and disable internal signal handling? If this is acceptable and it's just a matter of implementing it I'd be happy to send a PR.
Thank you for your consideration
The text was updated successfully, but these errors were encountered:
Greetings! Thanks for this great library, we've incorporated it into a fork of the 'jsonpath' library where we swapped the unsafe static-eval backend w/ v8-sandbox to safely process arbitrary user-specified expression.
In the application which uses jsonpath-sandbox we capture process-terminating signals and gracefully shutdown operations, restoring data to a consistent state before terminating. Part of this invokes the v8-sandbox shutdown method to cleanup operations here. The problem is that v8-sandbox utilizes the onExit function in the signal-exit module to catch error / exceptions on its own and invokes shutdown locally. Thus if the client process receives a signal while processing expressions that operation will not have the chance to gracefully terminate, handle the results and data could enter an inconsistent state.
Would it be possible to add a Sandbox constructor option to skip over the 'onExit' call and disable internal signal handling? If this is acceptable and it's just a matter of implementing it I'd be happy to send a PR.
Thank you for your consideration
The text was updated successfully, but these errors were encountered: