Disallowing the dynamic loading of agents by default (revised)

2017-04-05 Thread mark . reinhold
Thanks to everyone for the quick feedback on this topic, and especially to Andrew for the constructive dialogue. Here's a revised proposal: - Define a new VM option, `-XX:+EnableDynamicAgentLoading`, that's on by default in JDK 9 but off by default in JDK 10. This will allow launch scr

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-05 Thread David M. Lloyd
On 04/05/2017 11:15 AM, mark.reinh...@oracle.com wrote: Thanks to everyone for the quick feedback on this topic, and especially to Andrew for the constructive dialogue. Here's a revised proposal: - Define a new VM option, `-XX:+EnableDynamicAgentLoading`, that's on by default in JDK 9 but

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-05 Thread Michael Rasmussen
On 5 April 2017 at 19:15, wrote: > - Enhance the `-jar` launcher option so that if the JAR file being > launched contains a `Premain-Class` attribute then it's launched > as both an application and as an agent for that application. > > This will allow `java -jar foo.jar` to be used

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-05 Thread mark . reinhold
2017/4/5 10:00:13 -0700, michael.rasmus...@zeroturnaround.com: > On 5 April 2017 at 19:15, wrote: >> ... >> >> - Enhance the `-jar` launcher option so that if the JAR file being >>launched contains a `Premain-Class` attribute then it's launched >>as both an application and as an agent f

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-06 Thread Alan Bateman
On 05/04/2017 17:55, David M. Lloyd wrote: This is just plain weird from a security perspective, to say that unrelated processes have more privilege to control the current process than processes that are closely related. Anyway this is yet another case where arbitrary artificial hurdles are

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-06 Thread Remi Forax
- Mail original - > De: "mark reinhold" > À: jigsaw-dev@openjdk.java.net > Envoyé: Mercredi 5 Avril 2017 18:15:20 > Objet: Disallowing the dynamic loading of agents by default (revised) > Thanks to everyone for the quick feedback on this topic, and espec

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-06 Thread Michael Rasmussen
On 6 April 2017 at 02:34, wrote: > Interesting. Perhaps we need a `Self-Premain-Class` attribute, or some > such. > > Out of curiosity, would it do any harm in your `java -jar` case if the > agent is activated? As it is right now, yes, that would cause the execution to potentially fail. Should

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-06 Thread Andrew Dinn
On 05/04/17 17:15, mark.reinh...@oracle.com wrote: > Thanks to everyone for the quick feedback on this topic, and especially > to Andrew for the constructive dialogue. > > Here's a revised proposal: > > - Define a new VM option, `-XX:+EnableDynamicAgentLoading`, that's > on by default in JD

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-06 Thread David M. Lloyd
On 04/06/2017 02:56 AM, Alan Bateman wrote: On 05/04/2017 17:55, David M. Lloyd wrote: This is just plain weird from a security perspective, to say that unrelated processes have more privilege to control the current process than processes that are closely related. Anyway this is yet another c

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-06 Thread Andrew Dinn
On 06/04/17 13:56, David M. Lloyd wrote: > On 04/06/2017 02:56 AM, Alan Bateman wrote: >> On 05/04/2017 17:55, David M. Lloyd wrote: >> >>> >>> This is just plain weird from a security perspective, to say that >>> unrelated processes have more privilege to control the current process >>> than proce

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-06 Thread Alan Bateman
On 06/04/2017 13:56, David M. Lloyd wrote: I know, I'm giving examples of how such a library could circumvent this restriction. Another example is to start a child process and a grandchild process, and then have the child process exit. The examples in your first mail aren't a problem. Yes, t

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-06 Thread Alasdair Nottingham
Mark, I much prefer this proposal and it covers my use case which is fantastic Some comments below: > On Apr 5, 2017, at 12:15 PM, mark.reinh...@oracle.com wrote: > > Thanks to everyone for the quick feedback on this topic, and especially > to Andrew for the constructive dialogue. > > Here's

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-07 Thread Andrew Dinn
On 06/04/17 18:48, Alasdair Nottingham wrote: > I think giving more time to react to the change is good, but I think this just > provides more notice that dynamic attach will go away, it doesn’t ultimately > provide a solution for the problems that are currently solved using dynamic > attach of age

RE: Disallowing the dynamic loading of agents by default (revised)

2017-04-07 Thread Stephen Felts
day, April 5, 2017 12:15 PM To: jigsaw-dev@openjdk.java.net Subject: Disallowing the dynamic loading of agents by default (revised) Thanks to everyone for the quick feedback on this topic, and especially to Andrew for the constructive dialogue. Here's a revised proposal: - Define a new VM op

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-07 Thread Martijn Verburg
[mailto:jigsaw-dev-boun...@openjdk.java.net] On Behalf > Of mark.reinh...@oracle.com > Sent: Wednesday, April 5, 2017 12:15 PM > To: jigsaw-dev@openjdk.java.net > Subject: Disallowing the dynamic loading of agents by default (revised) > > Thanks to everyone f

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-09 Thread mark . reinhold
2017/4/6 2:07:27 -0700, michael.rasmus...@zeroturnaround.com: > On 6 April 2017 at 02:34, wrote: >> Interesting. Perhaps we need a `Self-Premain-Class` attribute, or some >> such. >> >> Out of curiosity, would it do any harm in your `java -jar` case if the >> agent is activated? > > As it is r

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-09 Thread mark . reinhold
2017/4/6 3:09:49 -0700, Andrew Dinn : > On 05/04/17 17:15, mark.reinh...@oracle.com wrote: >> Thanks to everyone for the quick feedback on this topic, and especially >> to Andrew for the constructive dialogue. >> >> Here's a revised proposal: >> >> - Define a new VM option, `-XX:+EnableDynamicAg

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-09 Thread mark . reinhold
2017/4/6 10:48:12 -0700, alasdair.notting...@gmail.com: > On Apr 5, 2017, at 12:15 PM, mark.reinh...@oracle.com wrote: >> >> Thanks to everyone for the quick feedback on this topic, and especially >> to Andrew for the constructive dialogue. >> >> Here's a revised proposal: >> >> - Define a new V

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-10 Thread Michael Rasmussen
On 10 April 2017 at 00:04, wrote: > Okay, so how about this revised proposal: > > - Define a new JAR-file manifest attribute, `Launcher-Agent-Class`. > If this attribute is present in the manifest of an executable JAR > file then the `agentmain` method of the specified class will be >

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-10 Thread Gregg Wonderly
gt;> It seems to me that it's late in Phase 2 of ramp-down of JDK 9 and this >> feature is not baked or well received. IMO no changes should be done in >> this area for JDK 9. >> >> >> -Original Message- >> From: jigsaw-dev [mailto:jigsaw-dev-bo

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-10 Thread Alan Bateman
The Jigsaw EA builds [1] have been refreshed to include some of the pieces in this proposal, specifically: - If an executable JAR contains a java agent then it will be started by `java -jar` when the main manifest has the `Launcher-Agent-Class` attribute. The entry point that is invoked is the

RE: Disallowing the dynamic loading of agents by default (revised)

2017-04-10 Thread Stephen Felts
isallowing the dynamic loading of agents by default (revised) The Jigsaw EA builds [1] have been refreshed to include some of the pieces in this proposal, specifically: - If an executable JAR contains a java agent then it will be started by `java -jar` when the main manifest has the `Launcher-A

Re: Disallowing the dynamic loading of agents by default (revised)

2017-04-11 Thread Alan Bateman
On 11/04/2017 05:31, Stephen Felts wrote: The description below leaves out the " ancestor of the current process". Which way is it - do we need to start two processes or one to work around this? The thread moved one from the original proposal. The only requirement now is that the tool and targ

RE: Disallowing the dynamic loading of agents by default (revised)

2017-04-17 Thread Stephen Felts
---Original Message- From: Alan Bateman Sent: Tuesday, April 11, 2017 3:01 AM To: Stephen Felts; jigsaw-dev@openjdk.java.net Subject: Re: Disallowing the dynamic loading of agents by default (revised) On 11/04/2017 05:31, Stephen Felts wrote: > The description below leaves out