On 11/12/24 3:33 PM, Serguei Spitsyn wrote:
On Thu, 7 Nov 2024 04:48:28 GMT, Serguei Spitsyn <sspit...@openjdk.org> wrote:

Larry Cable has updated the pull request incrementally with one additional 
commit since the last revision:

   JDK-8342449: fixed missing param in throws msg and renamed local var
src/jdk.attach/linux/classes/sun/tools/attach/VirtualMachineImpl.java line 268:

266:          * however we can also check the target pid's signal masks to see 
if it catches SIGQUIT and only do so if in
267:          * fact it does ... this reduces the risk of killing an innocent 
process in the current ns as opposed to
268:          * attaching to the actual target JVM ... c.f: 
checkCatchesAndSendQuitTo() below.
This still looks pretty risky and dangerous. I'm thinking if it'd make sense to 
check that the target process is a VM process. At least, we know how VM 
processes can use the signal mask. Another concern is that the target VM 
process might be not exactly the same VM the client was expecting to attach. I 
don't know what can be done to ensure this correctness.
It should be okay to file a bug/rfe on this.

it is not feasible to introspect on the target process to determine if it is a JVM or not, this is the best case not to send SIGQUIT to a process that is neither catching nor blocking it, where the default is to terminate it!

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/21688#discussion_r1838967163

Reply via email to