You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by bo...@apache.org on 2018/09/28 16:23:50 UTC
[1/2] ant git commit: BZ 62534 add support for -provider* args of
keytool
Repository: ant
Updated Branches:
refs/heads/1.9.x a746e1366 -> d100b9003
BZ 62534 add support for -provider* args of keytool
Project: http://git-wip-us.apache.org/repos/asf/ant/repo
Commit: http://git-wip-us.apache.org/repos/asf/ant/commit/a5796b5d
Tree: http://git-wip-us.apache.org/repos/asf/ant/tree/a5796b5d
Diff: http://git-wip-us.apache.org/repos/asf/ant/diff/a5796b5d
Branch: refs/heads/1.9.x
Commit: a5796b5db00092b41dfcad273230451973d38b4e
Parents: a746e13
Author: Stefan Bodewig <bo...@apache.org>
Authored: Fri Sep 28 18:07:16 2018 +0200
Committer: Stefan Bodewig <bo...@apache.org>
Committed: Fri Sep 28 18:20:30 2018 +0200
----------------------------------------------------------------------
WHATSNEW | 4 ++
manual/Tasks/signjar.html | 23 +++++++++
manual/Tasks/verifyjar.html | 23 +++++++++
.../ant/taskdefs/AbstractJarSignerTask.java | 54 ++++++++++++++++++++
4 files changed, 104 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ant/blob/a5796b5d/WHATSNEW
----------------------------------------------------------------------
diff --git a/WHATSNEW b/WHATSNEW
index 9d96ca5..6085274 100644
--- a/WHATSNEW
+++ b/WHATSNEW
@@ -24,6 +24,10 @@ Other changes:
* the <modified> selector has a new built-in algorithm 'lastmodified'
which computes a value based upon the lastmodified time of the file.
+ * signjar and verifyjar now support the -providerName, -providerClass
+ and -providerArg command line options of keytool via new attributes.
+ Bugzilla Report 65234
+
Changes from Ant 1.9.12 TO Ant 1.9.13
=====================================
http://git-wip-us.apache.org/repos/asf/ant/blob/a5796b5d/manual/Tasks/signjar.html
----------------------------------------------------------------------
diff --git a/manual/Tasks/signjar.html b/manual/Tasks/signjar.html
index 32315c1..f6a7a37 100644
--- a/manual/Tasks/signjar.html
+++ b/manual/Tasks/signjar.html
@@ -186,6 +186,29 @@ block</td>
<td valign="top">name of digest algorithm</td>
<td valign="top" align="center">No</td>
</tr>
+ <tr>
+ <td valign="top">providername</td>
+ <td valign="top">name of a cryptographic service provider's name
+ when listed in the security properties file.
+ <em>since Ant 1.9.14</em>.</td>
+ <td valign="top" align="center">No</td>
+ </tr>
+ <tr>
+ <td valign="top">providerclass</td>
+ <td valign="top">name of a cryptographic service provider's master
+ class file when the service provider is not listed in the security
+ properties file.
+ <em>since Ant 1.9.14</em>.</td>
+ <td valign="top" align="center">No</td>
+ </tr>
+ <tr>
+ <td valign="top">providerarg</td>
+ <td valign="top">Represents an optional string input argument for
+ the constructor of provider_class_name. Ignored
+ if <code>providerclass</code> is not set.
+ <em>since Ant 1.9.14</em>.</td>
+ <td valign="top" align="center">No</td>
+ </tr>
</table>
<h3>Parameters as nested elements</h3>
<table border="1" cellpadding="2" cellspacing="0">
http://git-wip-us.apache.org/repos/asf/ant/blob/a5796b5d/manual/Tasks/verifyjar.html
----------------------------------------------------------------------
diff --git a/manual/Tasks/verifyjar.html b/manual/Tasks/verifyjar.html
index 886075a..bf442b7 100644
--- a/manual/Tasks/verifyjar.html
+++ b/manual/Tasks/verifyjar.html
@@ -105,6 +105,29 @@ supported
<em>since Ant 1.8.0</em>.</td>
<td align="center" valign="top">No</td>
</tr>
+ <tr>
+ <td valign="top">providername</td>
+ <td valign="top">name of a cryptographic service provider's name
+ when listed in the security properties file.
+ <em>since Ant 1.9.14</em>.</td>
+ <td valign="top" align="center">No</td>
+ </tr>
+ <tr>
+ <td valign="top">providerclass</td>
+ <td valign="top">name of a cryptographic service provider's master
+ class file when the service provider is not listed in the security
+ properties file.
+ <em>since Ant 1.9.14</em>.</td>
+ <td valign="top" align="center">No</td>
+ </tr>
+ <tr>
+ <td valign="top">providerarg</td>
+ <td valign="top">Represents an optional string input argument for
+ the constructor of provider_class_name. Ignored
+ if <code>providerclass</code> is not set.
+ <em>since Ant 1.9.14</em>.</td>
+ <td valign="top" align="center">No</td>
+ </tr>
</table>
<h3>Parameters as nested elements</h3>
<table border="1" cellpadding="2" cellspacing="0">
http://git-wip-us.apache.org/repos/asf/ant/blob/a5796b5d/src/main/org/apache/tools/ant/taskdefs/AbstractJarSignerTask.java
----------------------------------------------------------------------
diff --git a/src/main/org/apache/tools/ant/taskdefs/AbstractJarSignerTask.java b/src/main/org/apache/tools/ant/taskdefs/AbstractJarSignerTask.java
index b2fe8d4..b15d2bc 100644
--- a/src/main/org/apache/tools/ant/taskdefs/AbstractJarSignerTask.java
+++ b/src/main/org/apache/tools/ant/taskdefs/AbstractJarSignerTask.java
@@ -117,6 +117,13 @@ public abstract class AbstractJarSignerTask extends Task {
private String executable;
/**
+ * Values for the providerName, providerClass, and providerArg options.
+ *
+ * @since Ant 1.9.14
+ */
+ private String providerName, providerClass, providerArg;
+
+ /**
* Set the maximum memory to be used by the jarsigner process
*
* @param max a string indicating the maximum memory according to the JVM
@@ -231,6 +238,39 @@ public abstract class AbstractJarSignerTask extends Task {
}
/**
+ * Sets the value for the -providerName command line argument.
+ *
+ * @param providerName the value for the -providerName command line argument
+ *
+ * @since Ant 1.9.14
+ */
+ public void setProviderName(String providerName) {
+ this.providerName = providerName;
+ }
+
+ /**
+ * Sets the value for the -providerClass command line argument.
+ *
+ * @param providerClass the value for the -providerClass command line argument
+ *
+ * @since Ant 1.9.14
+ */
+ public void setProviderClass(String providerClass) {
+ this.providerClass = providerClass;
+ }
+
+ /**
+ * Sets the value for the -providerArg command line argument.
+ *
+ * @param providerArg the value for the -providerArg command line argument
+ *
+ * @since Ant 1.9.14
+ */
+ public void setProviderArg(String providerArg) {
+ this.providerArg = providerArg;
+ }
+
+ /**
* init processing logic; this is retained through our execution(s)
*/
protected void beginExecution() {
@@ -347,6 +387,20 @@ public abstract class AbstractJarSignerTask extends Task {
addValue(cmd, "-storetype");
addValue(cmd, storetype);
}
+ if (null != providerName) {
+ addValue(cmd, "-providerName");
+ addValue(cmd, providerName);
+ }
+ if (null != providerClass) {
+ addValue(cmd, "-providerClass");
+ addValue(cmd, providerClass);
+ if (null != providerArg) {
+ addValue(cmd, "-providerArg");
+ addValue(cmd, providerArg);
+ }
+ } else if (null != providerArg) {
+ log("Ignoring providerArg as providerClass has not been set");
+ }
}
/**
[2/2] ant git commit: add nested to signjar and verifyjar
Posted by bo...@apache.org.
add nested <args> to signjar and verifyjar
Project: http://git-wip-us.apache.org/repos/asf/ant/repo
Commit: http://git-wip-us.apache.org/repos/asf/ant/commit/d100b900
Tree: http://git-wip-us.apache.org/repos/asf/ant/tree/d100b900
Diff: http://git-wip-us.apache.org/repos/asf/ant/diff/d100b900
Branch: refs/heads/1.9.x
Commit: d100b900324ad91f3de6e8c323720e1676bbb28d
Parents: a5796b5
Author: Stefan Bodewig <bo...@apache.org>
Authored: Fri Sep 28 18:23:25 2018 +0200
Committer: Stefan Bodewig <bo...@apache.org>
Committed: Fri Sep 28 18:23:25 2018 +0200
----------------------------------------------------------------------
WHATSNEW | 4 +++
manual/Tasks/signjar.html | 10 ++++++-
manual/Tasks/verifyjar.html | 10 ++++++-
.../ant/taskdefs/AbstractJarSignerTask.java | 28 ++++++++++++++++++++
.../org/apache/tools/ant/types/Commandline.java | 11 ++++++++
5 files changed, 61 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ant/blob/d100b900/WHATSNEW
----------------------------------------------------------------------
diff --git a/WHATSNEW b/WHATSNEW
index 6085274..6cd11da 100644
--- a/WHATSNEW
+++ b/WHATSNEW
@@ -28,6 +28,10 @@ Other changes:
and -providerArg command line options of keytool via new attributes.
Bugzilla Report 65234
+ * signjar and verifyjar now supported nested <arg> elements for
+ command line arguments that are not supported explicitly by the
+ tasks via attributes.
+
Changes from Ant 1.9.12 TO Ant 1.9.13
=====================================
http://git-wip-us.apache.org/repos/asf/ant/blob/d100b900/manual/Tasks/signjar.html
----------------------------------------------------------------------
diff --git a/manual/Tasks/signjar.html b/manual/Tasks/signjar.html
index f6a7a37..88bdb43 100644
--- a/manual/Tasks/signjar.html
+++ b/manual/Tasks/signjar.html
@@ -238,7 +238,15 @@ block</td>
<a href="exec.html#env">environment variables</a> </td>
<td valign="top" align="center">No, and only one can be supplied</td>
</tr>
- </table>
+ <tr>
+ <td valign="top">arg</td>
+ <td valign="top">Use this to specify a <code>keytool</code>
+ <a href="../using.html#arg">command line argument</a> not
+ explicitly supported via an attribute.
+ <em>since Ant 1.9.14</em>.</td>
+ <td valign="top" align="center">No</td>
+ </tr>
+</table>
<h3>Examples</h3>
http://git-wip-us.apache.org/repos/asf/ant/blob/d100b900/manual/Tasks/verifyjar.html
----------------------------------------------------------------------
diff --git a/manual/Tasks/verifyjar.html b/manual/Tasks/verifyjar.html
index bf442b7..b2df426 100644
--- a/manual/Tasks/verifyjar.html
+++ b/manual/Tasks/verifyjar.html
@@ -152,7 +152,15 @@ supported
<a href="exec.html#env">environment variables</a> </td>
<td valign="top" align="center">No, and only one can be supplied</td>
</tr>
- </table>
+ <tr>
+ <td valign="top">arg</td>
+ <td valign="top">Use this to specify a <code>keytool</code>
+ <a href="../using.html#arg">command line argument</a> not
+ explicitly supported via an attribute.
+ <em>since Ant 1.9.14</em>.</td>
+ <td valign="top" align="center">No</td>
+ </tr>
+</table>
<h3>Examples</h3>
http://git-wip-us.apache.org/repos/asf/ant/blob/d100b900/src/main/org/apache/tools/ant/taskdefs/AbstractJarSignerTask.java
----------------------------------------------------------------------
diff --git a/src/main/org/apache/tools/ant/taskdefs/AbstractJarSignerTask.java b/src/main/org/apache/tools/ant/taskdefs/AbstractJarSignerTask.java
index b15d2bc..b811797 100644
--- a/src/main/org/apache/tools/ant/taskdefs/AbstractJarSignerTask.java
+++ b/src/main/org/apache/tools/ant/taskdefs/AbstractJarSignerTask.java
@@ -19,11 +19,14 @@
package org.apache.tools.ant.taskdefs;
import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
import java.util.Vector;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Task;
import org.apache.tools.ant.filters.LineContainsRegExp;
+import org.apache.tools.ant.types.Commandline;
import org.apache.tools.ant.types.Environment;
import org.apache.tools.ant.types.FileSet;
import org.apache.tools.ant.types.Path;
@@ -123,6 +126,8 @@ public abstract class AbstractJarSignerTask extends Task {
*/
private String providerName, providerClass, providerArg;
+ private List<Commandline.Argument> additionalArgs = new ArrayList();
+
/**
* Set the maximum memory to be used by the jarsigner process
*
@@ -271,6 +276,16 @@ public abstract class AbstractJarSignerTask extends Task {
}
/**
+ * Adds a nested <arg> element that can be used to specify
+ * command line arguments not supported via specific attributes.
+ *
+ * @since Ant 1.9.14
+ */
+ public void addArg(Commandline.Argument arg) {
+ additionalArgs.add(arg);
+ }
+
+ /**
* init processing logic; this is retained through our execution(s)
*/
protected void beginExecution() {
@@ -351,6 +366,10 @@ public abstract class AbstractJarSignerTask extends Task {
for (Environment.Variable variable : sysProperties.getVariablesVector()) {
declareSysProperty(cmd, variable);
}
+
+ for (Commandline.Argument arg : additionalArgs) {
+ addArgument(cmd, arg);
+ }
}
/**
@@ -473,4 +492,13 @@ public abstract class AbstractJarSignerTask extends Task {
protected void addValue(final ExecTask cmd, String value) {
cmd.createArg().setValue(value);
}
+
+ /**
+ * add an argument to a command
+ * @param cmd command to manipulate
+ * @param arg argument to add
+ */
+ protected void addArgument(final ExecTask cmd, Commandline.Argument arg) {
+ cmd.createArg().copyFrom(arg);
+ }
}
http://git-wip-us.apache.org/repos/asf/ant/blob/d100b900/src/main/org/apache/tools/ant/types/Commandline.java
----------------------------------------------------------------------
diff --git a/src/main/org/apache/tools/ant/types/Commandline.java b/src/main/org/apache/tools/ant/types/Commandline.java
index a1859ba..77d953b 100644
--- a/src/main/org/apache/tools/ant/types/Commandline.java
+++ b/src/main/org/apache/tools/ant/types/Commandline.java
@@ -183,6 +183,17 @@ public class Commandline implements Cloneable {
}
/**
+ * Copies settings from a different argument.
+ *
+ * @since Ant 1.9.14
+ */
+ public void copyFrom(Argument other) {
+ this.parts = other.parts;
+ this.prefix = other.prefix;
+ this.suffix = other.suffix;
+ }
+
+ /**
* Return the constituent parts of this Argument.
* @return an array of strings.
*/