get the full hostname, often it is just the short version.
authorJoni Hahkala <joni.hahkala@cern.ch>
Thu, 9 Feb 2012 23:03:33 +0000 (23:03 +0000)
committerJoni Hahkala <joni.hahkala@cern.ch>
Thu, 9 Feb 2012 23:03:33 +0000 (23:03 +0000)
bin/generate-test-certificates.sh

index efea56f..9f723cb 100755 (executable)
@@ -422,7 +422,7 @@ function create_some {
     fi
     
     # generating host certificate
-    create_cert $CERT_DIR/${catype}_host "$HOSTNAME" server $DAYS
+    create_cert $CERT_DIR/${catype}_host $hostname_full server $DAYS
 
     # generating CRL
     openssl ca -gencrl -crldays 5000 -out $CA_DIR/${catype}.crl -config $REQ_CONFIG_FILE
@@ -514,7 +514,7 @@ function add_ca_grid_sec {
     if [ ! -d 'grid-security/certificates-slashwithoutnamespaces' ]; then
         mkdir -p 'grid-security/certificates-slashwithoutnamespaces'
     fi
-    hash=$(openssl x509 -hash -noout -in $1-ca/$1.cert)
+    hash=$(openssl x509 -subject_hash_old -noout -in $1-ca/$1.cert)
     cp $1-ca/$1.cert grid-security/certificates/${hash}.0
     cp $1-ca/$1.crl grid-security/certificates/${hash}.r0
     # generating a signing_policy file
@@ -934,13 +934,13 @@ function create_all {
        create_cert_proxy_proxy $CERT_DIR/${catype}_${TYPE} "$catype ${CTYPE}" proxy_exp "proxy" -1 proxy_exp
        
        TYPE="host"
-       CTYPE="$HOSTNAME"
+       CTYPE=$hostname_full
        TYPE2="server"
        
        create_cert $CERT_DIR/${catype}_${TYPE} "${CTYPE}" ${TYPE2} $DAYS
        
        TYPE="host_rev"
-       CTYPE="CN=revoked, $HOSTNAME"
+       CTYPE="CN=revoked, $hostname_full"
        TYPE2="server"
        
        create_cert $CERT_DIR/${catype}_${TYPE} "${CTYPE}" ${TYPE2} $DAYS
@@ -948,19 +948,19 @@ function create_all {
        
        
        TYPE="host_exp"
-       CTYPE="$HOSTNAME, emailAddress=expired@expired.foo"
+       CTYPE="$hostname_full, emailAddress=expired@expired.foo"
        TYPE2="server"
 
        create_cert $CERT_DIR/${catype}_${TYPE} "${CTYPE}" ${TYPE2} -1
        
        TYPE="host_baddn"
-       CTYPE="$HOSTNAME"
+       CTYPE=$hostname_full
        TYPE2="hostbaddn"
        
        create_cert $CERT_DIR/${catype}_${TYPE} "${CTYPE}" ${TYPE2} $DAYS
        
        TYPE="host_email"
-       CTYPE="$HOSTNAME"
+       CTYPE=$hostname_full
        TYPE2="hostemail"
        
        create_cert $CERT_DIR/${catype}_${TYPE} "${CTYPE}" ${TYPE2} $DAYS
@@ -985,7 +985,7 @@ function create_all {
        TYPE="altname2"
        CTYPE="altname"
        
-       create_cert $CERT_DIR/${catype}_${TYPE}_2 "$catype altname cont hostname/CN=$HOSTNAME" ${TYPE} $DAYS
+       create_cert $CERT_DIR/${catype}_${TYPE}_2 "$catype altname cont hostname/CN=$hostname_full" ${TYPE} $DAYS
        
        TYPE="altname3"
        CTYPE="altname"
@@ -995,7 +995,7 @@ function create_all {
        TYPE="altname3"
        CTYPE="altname"
        
-       create_cert $CERT_DIR/${catype}_${TYPE}_2 "$catype altname without hosname/CN=$HOSTNAME" ${TYPE} $DAYS
+       create_cert $CERT_DIR/${catype}_${TYPE}_2 "$catype altname without hosname/CN=$hostname_full" ${TYPE} $DAYS
        
        TYPE="server"
        CTYPE="server2"
@@ -1170,8 +1170,6 @@ VOMS='no'
 # if we only show environmental settings
 ONLYENV='no'
 
-export DNS_HOSTNAME=DNS:$HOSTNAME
-
 while true; do
     case "$1" in
         -a|--all)
@@ -1220,6 +1218,15 @@ echo openssl command and version:
 which openssl
 openssl version
 
+#get full hostname
+hostname_space=`hostname -A`
+#remove trailing space
+hostname_full=`echo $hostname_space`
+echo host name is [$hostname_full]
+
+export DNS_HOSTNAME=DNS:$hostname_full
+echo dns hostname string is [$DNS_HOSTNAME]
+
 #define all used dirs    
 TARGETDIR=$1
 CONFIGDIR=$(cd $(dirname $0)/..; echo $PWD)/test