<?xml version="1.0"?>
<!--

    Licensed to the Apache Software Foundation (ASF) under one or more
    contributor license agreements.  See the NOTICE file distributed with
    this work for additional information regarding copyright ownership.
    The ASF licenses this file to You under the Apache License, Version 2.0
    (the "License"); you may not use this file except in compliance with
    the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

-->

<project default="run" name="create keystores et al">

  <!-- first create our properties -->
  <condition property="is.ibm.jdk">
    <available classname="com.ibm.crypto.tools.KeyTool"/>
  </condition>
  <condition property="is.sun.jdk" value="sun.security.tools.KeyTool">
    <available classname="sun.security.tools.KeyTool"/>
  </condition>
  <condition property="is.sun.jdk" value="sun.security.tools.keytool.Main">
    <available classname="sun.security.tools.keytool.Main"/> <!-- java 8 -->
  </condition>

  <property name="server.alias" value="serveralias"/>
  <property name="server.keypass" value="serverPassword"/>
  <property name="server.keystore" value="${basedir}/target/serverStore.jks"/>
  <property name="server.storepass" value="keystorePass"/>
  <property name="server.dname" value="'cn=serveralias'"/>
  <property name="server.file" value="${basedir}/target/serverKey.rsa"/>

  <property name="client.alias" value="clientalias"/>
  <property name="client.keypass" value="clientPassword"/>
  <property name="client.keystore" value="${basedir}/target/test-classes/META-INF/clientStore.jks"/>
  <property name="client.storepass" value="keystorePass"/>
  <property name="client.dname" value="'cn=clientalias'"/>
  <property name="client.file" value="${basedir}/target/test-classes/META-INF/clientKey.rsa"/>

  <property name="keyalg" value="RSA"/>

  <!-- now create our JDK specific targets -->
  <target name="do.ibm.jdk" if="is.ibm.jdk">
    <echo message="*** Running on an IBM JDK ***"/>
    <echo message="generate server keys"/>
    <java classname="com.ibm.crypto.tools.KeyTool" fork="true">
      <arg line="-genkey"/>
      <arg line="-alias ${server.alias}"/>
      <arg line="-keypass ${server.keypass}"/>
      <arg line="-keystore ${server.keystore}"/>
      <arg line="-storepass ${server.storepass}"/>
      <arg line="-dname ${server.dname}"/>
      <arg line="-keyalg ${keyalg}"/>
    </java>
    <java classname="com.ibm.crypto.tools.KeyTool" fork="true">
      <arg line="-selfcert"/>
      <arg line="-alias ${server.alias}"/>
      <arg line="-keystore ${server.keystore}"/>
      <arg line="-storepass ${server.storepass}"/>
      <arg line="-keypass ${server.keypass}"/>
    </java>
    <java classname="com.ibm.crypto.tools.KeyTool" fork="true">
      <arg line="-export"/>
      <arg line="-alias ${server.alias}"/>
      <arg line="-file ${server.file}"/>
      <arg line="-keystore ${server.keystore}"/>
      <arg line="-storepass ${server.storepass}"/>
    </java>

    <echo message="generate client keys"/>

    <java classname="com.ibm.crypto.tools.KeyTool" fork="true">
      <arg line="-genkey"/>
      <arg line="-alias ${client.alias}"/>
      <arg line="-keypass ${client.keypass}"/>
      <arg line="-keystore ${client.keystore}"/>
      <arg line="-storepass ${client.storepass}"/>
      <arg line="-dname ${client.dname}"/>
      <arg line="-keyalg ${keyalg}"/>
    </java>
    <java classname="com.ibm.crypto.tools.KeyTool" fork="true">
      <arg line="-selfcert"/>
      <arg line="-alias ${client.alias}"/>
      <arg line="-keystore ${client.keystore}"/>
      <arg line="-storepass ${client.storepass}"/>
      <arg line="-keypass ${client.keypass}"/>
    </java>
    <java classname="com.ibm.crypto.tools.KeyTool" fork="true">
      <arg line="-export"/>
      <arg line="-alias ${client.alias}"/>
      <arg line="-file ${client.file}"/>
      <arg line="-keystore ${client.keystore}"/>
      <arg line="-storepass ${client.storepass}"/>
    </java>

    <echo message="import client/server public keys in client/server keystores"/>
    <java classname="com.ibm.crypto.tools.KeyTool" fork="true">
      <arg line="-import"/>
      <arg line="-alias ${server.alias}"/>
      <arg line="-file ${server.file}"/>
      <arg line="-keystore ${client.keystore}"/>
      <arg line="-storepass ${client.storepass}"/>
      <arg line="-noprompt"/>
    </java>
    <java classname="com.ibm.crypto.tools.KeyTool" fork="true">
      <arg line="-import"/>
      <arg line="-alias ${client.alias}"/>
      <arg line="-file ${client.file}"/>
      <arg line="-keystore ${server.keystore}"/>
      <arg line="-storepass ${server.storepass}"/>
      <arg line="-noprompt"/>
    </java>
  </target>

  <target name="do.sun.jdk" if="is.sun.jdk">
    <echo message="*** Running on a Sun JDK ***"/>
    <echo message="generate server keys"/>
    <java classname="${is.sun.jdk}" fork="true">
      <arg line="-genkey"/>
      <arg line="-storetype JKS"/>
      <arg line="-alias ${server.alias}"/>
      <arg line="-keypass ${server.keypass}"/>
      <arg line="-keystore ${server.keystore}"/>
      <arg line="-storepass ${server.storepass}"/>
      <arg line="-dname ${server.dname}"/>
      <arg line="-keyalg ${keyalg}"/>
    </java>
    <java classname="${is.sun.jdk}" fork="true">
      <arg line="-selfcert"/>
      <arg line="-storetype JKS"/>
      <arg line="-alias ${server.alias}"/>
      <arg line="-keystore ${server.keystore}"/>
      <arg line="-storepass ${server.storepass}"/>
      <arg line="-keypass ${server.keypass}"/>
    </java>
    <java classname="${is.sun.jdk}" fork="true">
      <arg line="-export"/>
      <arg line="-storetype JKS"/>
      <arg line="-alias ${server.alias}"/>
      <arg line="-file ${server.file}"/>
      <arg line="-keystore ${server.keystore}"/>
      <arg line="-storepass ${server.storepass}"/>
    </java>

    <echo message="generate client keys"/>

    <java classname="${is.sun.jdk}" fork="true">
      <arg line="-genkey"/>
      <arg line="-storetype JKS"/>
      <arg line="-alias ${client.alias}"/>
      <arg line="-keypass ${client.keypass}"/>
      <arg line="-keystore ${client.keystore}"/>
      <arg line="-storepass ${client.storepass}"/>
      <arg line="-dname ${client.dname}"/>
      <arg line="-keyalg ${keyalg}"/>
    </java>
    <java classname="${is.sun.jdk}" fork="true">
      <arg line="-selfcert"/>
      <arg line="-storetype JKS"/>
      <arg line="-alias ${client.alias}"/>
      <arg line="-keystore ${client.keystore}"/>
      <arg line="-storepass ${client.storepass}"/>
      <arg line="-keypass ${client.keypass}"/>
    </java>
    <java classname="${is.sun.jdk}" fork="true">
      <arg line="-export"/>
      <arg line="-storetype JKS"/>
      <arg line="-alias ${client.alias}"/>
      <arg line="-file ${client.file}"/>
      <arg line="-keystore ${client.keystore}"/>
      <arg line="-storepass ${client.storepass}"/>
    </java>

    <echo message="import client/server public keys in client/server keystores"/>
    <java classname="${is.sun.jdk}" fork="true">
      <arg line="-import"/>
      <arg line="-storetype JKS"/>
      <arg line="-alias ${server.alias}"/>
      <arg line="-file ${server.file}"/>
      <arg line="-keystore ${client.keystore}"/>
      <arg line="-storepass ${client.storepass}"/>
      <arg line="-noprompt"/>
    </java>
    <java classname="${is.sun.jdk}" fork="true">
      <arg line="-import"/>
      <arg line="-storetype JKS"/>
      <arg line="-alias ${client.alias}"/>
      <arg line="-file ${client.file}"/>
      <arg line="-keystore ${server.keystore}"/>
      <arg line="-storepass ${server.storepass}"/>
      <arg line="-noprompt"/>
    </java>
  </target>

  <!-- run everything from our main target -->
  <!-- the other targets will only be run when their properties are true -->
  <target name="run" depends="do.sun.jdk, do.ibm.jdk">
    <echo message="Running JDK specific keystore creation target"/>
  </target>

</project>

