#!/usr/bin/env bash
# CloudShare checksum helper — verifies a file against SHA256SUMS
set -euo pipefail
FILE=${1:-}
SUMS=${2:-SHA256SUMS}
if [[ -z "$FILE" || ! -f "$FILE" ]]; then
  echo "usage: $0 <file> [SHA256SUMS]" >&2
  exit 2
fi
if command -v sha256sum >/dev/null 2>&1; then
  HASH=$(sha256sum "$FILE" | awk '{print $1}')
elif command -v shasum >/dev/null 2>&1; then
  HASH=$(shasum -a 256 "$FILE" | awk '{print $1}')
else
  echo "need sha256sum or shasum" >&2
  exit 3
fi
echo "file  : $FILE"
echo "sha256: $HASH"
if [[ -f "$SUMS" ]]; then
  if grep -qi "$HASH" "$SUMS"; then
    echo "status: MATCH in $SUMS"
    exit 0
  fi
  echo "status: NOT FOUND in $SUMS"
  exit 1
fi
