#!/bin/sh
set -e
#set -x

###
#
# Make subressource integrity value 
#
###
clear

RACINE="$(dirname $(readlink -f -- "$0"))"

#algo="sha512"
set -A algos sha512 sha384 sha256
file="$1"

if [ -f "${file}" ]; then
    for algo in "${algos[@]}"; do
        value="$(cat "${file}" | openssl dgst -${algo} -binary | openssl enc -base64 -A)"
        if [ -n "${value}" ]; then
		    printf '%s-%s ' "${algo}" "${value}"
    	else 
	    	printf '[ \\33[1;31m%s\\33[0;39m ] %s \n' "KO" "Il semble qu'il y ait eu un problème de génération de la valeur 'integrity' !"
    	fi
    done
    printf '\n' ""
else
    printf '[ \\33[1;31m%s\\33[0;39m ] %s \n' "KO" "L'argument ${file} n'est pas un fichier, ou n'est pas lisible !"
fi
