RFR 8023197: Pre-configured command line options for keytool and jarsigner
Xuelei Fan
xuelei.fan at oracle.com
Tue Jun 10 06:01:52 UTC 2014
On 6/10/2014 12:37 PM, Wang Weijun wrote:
>
> On Jun 6, 2014, at 20:22, Xuelei Fan <xuelei.fan at oracle.com> wrote:
>
>> src/share/classes/sun/security/tools/KeyStoreUtil.java
>> ======================================================
>> 224 throw new IOException("Cannot have both " + c1 + " and " + c2);
>> "Cannot have both pre-configured options ..."?
>
> This means you cannot define both "keytool.genkeypair" and "keytool.genkey". -genkey is an obsolete command name but we still support it secretly.
>
I mean you may want to mention that this exception occurs in
"pre-configured options".
>>
>> 176 st.whitespaceChars(0x00, 0x20);
>> 177 st.wordChars(0x21, 0xFF);
>> I'm not sure of the code above, would you like have to test for
>> none-ASCII characters?
>
> I cannot find any spec on this, but the source has
>
> ctype = c < 256 ? ct[c] : CT_ALPHA;
>
> which means every non-ASCII is a word char (no support for wide numerals).
>
> StreamTokenizer only allows you to categorize the ASCII chars.
>
I'm not sure too. If "0x01 0x05" is a character, does the above code
treat the "0x01" and "0x05" as white space?
Here is a Unicode table:
http://www.tamasoft.co.jp/en/general-info/unicode.html
>>
>> 194 * @param c1 the name of the command, must not be null
>> 195 * @param c2 the alternative command name, null if none.
>> Mention that c1 and c2 need to come with leading '-'?
>
> I'll add "with the "-" prefix".
>
>>
>> src/share/classes/sun/security/tools/jarsigner/Main.java
>> ========================================================
>> 293 for (n=0; n < args.length; n++) {
>> Break after the found of the target options?
>
> I'm looking for both -conf and -verify (and their last appearances). It will be complex to maintain two flags.
>
One int flag (0, 1, 2) should be enough, and simple.
>>
>> 313 System.out.println("Command line args: " +
>> Define a new resource?
>
> I suppose it's not necessary to localize debug outputs. The -debug option is also not documented.
>
OK, please add a comment line.
>>
>> src/share/classes/sun/security/tools/keytool/Main.java
>> 404 for (i=0; i < args.length; i++) {
>> Break after the found of the target options? Or loop from the end of
>> the array?
>
> Same reason as above.
>
See above.
>>
>> 429 System.out.println("Command line args: " +
>> Define a new resource?
>
> Same reason as above.
>
See above.
Xuelei
> Thanks
> Max
>
>>
>> Otherwise, looks fine to me.
>>
>> Thanks,
>> Xuelei
>>
>> On 6/6/2014 3:27 PM, Wang Weijun wrote:
>>> Please review the code changes in
>>>
>>> http://cr.openjdk.java.net/~weijun/8023197/webrev.02
>>>
>>> This enhancement allows you to put frequently used keytool/jarsigner options into a property file and use -conf to load it. Like this:
>>>
>>> # A Pre-configured options file
>>> keytool.all = -storepass:env PASS -keypass:env PASS -keystore ${user.dir}/.p12 -storetype pkcs12
>>> keytool.genkeypair = -keyalg rsa -keysize 2048 -sigalg SHA256withRSA -validity 365
>>>
>>> Thanks
>>> Max
>>>
>>
>
More information about the security-dev
mailing list