X-Git-Url: https://zdv2.bktei.com/gitweb/EVA-2020-02.git/blobdiff_plain/3395ae224838d372dbb3422c0f3870b005cb494b..ff22a93f33c2a95ac5bff59793b2b02e7576dca3:/exec/bkgpslog diff --git a/exec/bkgpslog b/exec/bkgpslog index 19f95f2..97231f8 100755 --- a/exec/bkgpslog +++ b/exec/bkgpslog @@ -14,7 +14,11 @@ DIR_TMP_DEFAULT="/dev/shm"; # Default parent of working directory SCRIPT_TIME_START=$(date +%Y%m%dT%H%M%S.%N); PATH="$HOME/.local/bin:$PATH"; # Add "$(systemd-path user-binaries)" path in case apps saved there SCRIPT_HOSTNAME=$(hostname); # Save hostname of system running this script. -SCRIPT_VERSION="bkgpslog 0.2.0"; # Define version of script. +SCRIPT_VERSION="0.2.2"; # Define version of script. +SCRIPT_NAME="bkgpslog"; # Define basename of script file. +SCRIPT_URL="https://gitlab.com/baltakatei/ninfacyzga-01"; # Define wesite hosting this script. +AGE_VERSION="1.0.0-beta2"; # Define version of age (encryption program) +AGE_URL="https://github.com/FiloSottile/age/releases/tag/v1.0.0-beta2"; # Define website hosting age. declare -Ag appRollCall # Associative array for storing app status declare -Ag fileRollCall # Associative array for storing file status @@ -712,14 +716,36 @@ appendArgTar(){ magicWriteVersion() { # Desc: Appends time-stamped VERSION to PATHOUT_TAR # Usage: magicWriteVersion + # Version: 0.1.0 # Input: CONTENT_VERSION, FILEOUT_VERSION, PATHOUT_TAR, DIR_TMP + # Input: SCRIPT_VERSION, SCRIPT_URL, AGE_VERSION, AGE_URL, SCRIPT_HOSTNAME + # Output: appends tar PATHOUT_TAR # Depends: dateTimeShort, appendArgTar + local CONTENT_VERSION pubKeyIndex - # Generate VERSION file in BashVar + # Set VERSION file name FILEOUT_VERSION="$(dateTimeShort)..VERSION"; - CONTENT_VERSION="$(dateTimeShort):$(basename "$0")"" Version:""$SCRIPT_VERSION"; - # Create BashVar as file FILEOUT_VERSION and write-append to PATHOUT_TAR + + # Gather VERSION data in CONTENT_VERSION + CONTENT_VERSION="SCRIPT_VERSION=$SCRIPT_VERSION"; + #CONTENT_VERSION="$CONTENT_VERSION""\n"; + CONTENT_VERSION="$CONTENT_VERSION""\n""SCRIPT_NAME=$SCRIPT_NAME"; + CONTENT_VERSION="$CONTENT_VERSION""\n""SCRIPT_URL=$SCRIPT_URL"; + CONTENT_VERSION="$CONTENT_VERSION""\n""AGE_VERSION=$AGE_VERSION"; + CONTENT_VERSION="$CONTENT_VERSION""\n""AGE_URL=$AGE_URL"; + CONTENT_VERSION="$CONTENT_VERSION""\n""DATE=$(date --iso-8601=seconds)"; + CONTENT_VERSION="$CONTENT_VERSION""\n""HOSTNAME=$SCRIPT_HOSTNAME"; + ## Add list of recipient pubkeys + for pubkey in "${recPubKeysValid[@]}"; do + ((pubKeyIndex++)) + CONTENT_VERSION="$CONTENT_VERSION""\n""PUBKEY_$pubKeyIndex=$pubkey"; + done + ## Process newline escapes + CONTENT_VERSION="$(echo -e "$CONTENT_VERSION")" + + # Write CONTENT_VERSION as file FILEOUT_VERSION and write-append to PATHOUT_TAR appendArgTar "$CONTENT_VERSION" "$FILEOUT_VERSION" "$PATHOUT_TAR" "$DIR_TMP"; + } # bkgpslog: write version data to PATHOUT_TAR via appendArgTar() magicWriteBuffer() { # Desc: bkgpslog-specific meta function for writing data to DIR_TMP then appending each file to PATHOUT_TAR @@ -777,16 +803,19 @@ main() { for pubkey in "${recPubKeys[@]}"; do # Validate recipient pubkey strings by forming test message vbm "DEBUG:Testing pubkey string:$pubkey" if echo "butts" | age -a -r "$pubkey" 1>/dev/null; then - # Form age recipient string + #### Form age recipient string recipients="$recipients""-r $pubkey "; vbm "STATUS:Added pubkey for forming age recipient string:""$pubkey"; vbm "DEBUG:recipients:""$recipients"; + #### Add validated pubkey to recPubKeysValid array + recPubKeysValid+=("$pubkey") && vbm "DEBUG:recPubkeysValid:pubkey added:$pubkey"; else yell "ERROR:Exit code ""$?"". Invalid recipient pubkey string. Exiting."; exit 1; fi done vbm "DEBUG:Finished processing recPubKeys array"; - # Form age command string + + ## Form age command string CMD_ENCRYPT="age ""$recipients "; CMD_ENCRYPT_SUFFIX=".age"; else