#!/bin/bash -x

usage() {
   echo "$0 [-h] [ < module_name > ]"
}

if [ $# -eq 0 ]; then
   usage
   exit 1
fi

if [ "$1" = "-h" ] || [ "$1" = "--help" ]; then
   usage
   exit 0
fi

echo "generating HMAC file"
hmac_path="/etc/fips/macsec/libHmac"
if [ ! -d "$hmac_path" ]; then
   mkdir -m 0755 -p "$hmac_path"
fi

fips_lib_path="/usr/lib"
if [ "$(getconf LONG_BIT)" == "64" ]; then
   fips_lib_path="/usr/lib64"
fi

hmac_file="$hmac_path/$1"
fips_lib="$fips_lib_path/libFipsModule$1.so"

openssl dgst -sha256 -hmac "AristaNetworksInc" "$fips_lib" | cut -d ' ' -f 2 > "$hmac_file"
chmod 0644 "$hmac_file"
sync "$hmac_file"
