Magellan Linux

Annotation of /alx-src/trunk/alx-web/signing-jars.sh

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2804 - (hide annotations) (download) (as text)
Mon Aug 29 20:22:21 2011 UTC (12 years, 8 months ago) by niro
File MIME type: application/x-sh
File size: 1467 byte(s)
-merged branch alx-web-0_6_0 into trunk
1 niro 1650 #!/bin/bash
2    
3     die()
4     {
5     echo "$@"
6     exit 1
7     }
8    
9     if [[ -z ${JAVA_HOME} ]]
10     then
11     die "No JAVA_HOME in environment defined. Please install sun-jdk!"
12     fi
13    
14     COMMON_NAME="ESA"
15     KEY_ALIAS="alx-web"
16     KEY_EXPIRATION_TIME="365"
17    
18     JAR_FILES="vncviewer.jar mindterm.jar"
19    
20     echo -n "Please enter the keystore password: "
21     stty -echo
22     read STOREPASS
23     stty echo
24     echo
25     [[ -z ${STOREPASS} ]] && die "Keystore password is empty, aborting!"
26    
27     echo -n "Please enter the certificate key password: "
28     stty -echo
29     read KEYPASS
30     stty echo
31     echo
32     [[ -z ${KEYPASS} ]] && die "Certificate key password is empty, aborting!"
33    
34     # check if key-alias was already generated
35     ALREADY_EXIST=$(keytool -list -storepass "${STOREPASS}" | grep "^${KEY_ALIAS},")
36     if [[ -z ${ALREADY_EXIST} ]]
37     then
38     echo "Generating signing key ..."
39     keytool -dname "cn=${COMMON_NAME}" -validity "${KEY_EXPIRATION_TIME}" -genkey -storepass "${STOREPASS}" -keypass "${KEYPASS}" -alias "${KEY_ALIAS}"
40     fi
41    
42     for jar in ${JAR_FILES}
43     do
44     echo "Removing old signing certificates from jar file ${jar} ..."
45     TEMP="$(mktemp -d)"
46     WWWDIR="$(pwd)"
47     pushd "${TEMP}"
48     jar -xf "${WWWDIR}"/"${jar}"
49     mv -f "${WWWDIR}"/"${jar}" "${WWWDIR}"/"${jar}".old
50     rm -f META-INF/*.SF META-INF/*.DSA
51     jar -cf "${WWWDIR}"/"${jar}" .
52     popd
53    
54     echo "Signing jar file ${jar} ..."
55     jarsigner -storepass "${STOREPASS}" -keypass "${KEYPASS}" "${jar}" "${KEY_ALIAS}"
56    
57     echo "Verifing jar file ${jar} ..."
58     jarsigner -storepass "${STOREPASS}" -keypass "${KEYPASS}" -verify "${jar}"
59     done