#!/bin/bash

if [[ $# -ne 3 ]]; then
    echo "Usage: ${0##*/} <certfile> <keyfile> <outputfile>"
    exit 2
fi

if ! type dos2unix > /dev/null; then
    echo "Need dos2unix"
    exit 1
fi

set -e

certfile=$1
keyfile=$2
outputfile=$3
keymodulus=$(openssl rsa -noout -modulus -in "$keyfile")
certmodulus=$(openssl x509 -noout -modulus -in "$certfile")
if [[ $keymodulus != $certmodulus ]]; then
    echo 'keyfile and certfile do not match!'
    exit 1
fi
if [[ -f $outputfile ]]; then
    mv -f "$outputfile"{,.bak}
fi
(dos2unix < "$certfile"; echo; dos2unix < "$keyfile") > "$outputfile"
chmod 0600 "$outputfile"

