diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2013-10-18 17:03:40 -0300 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2013-10-18 17:03:40 -0300 |
commit | 72f6db37961e30117818c1d030a7c69869928028 (patch) | |
tree | 713c32a61aaf3961cf842f113e8ecd711e10f555 /lib/keyringer/actions/append | |
parent | d402c7b9acd03c9bf8cb4ac9fc4581839cc540b0 (diff) | |
download | keyringer-72f6db37961e30117818c1d030a7c69869928028.tar.gz keyringer-72f6db37961e30117818c1d030a7c69869928028.tar.bz2 |
FHS compliance (closes #18)
Diffstat (limited to 'lib/keyringer/actions/append')
-rwxr-xr-x | lib/keyringer/actions/append | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/lib/keyringer/actions/append b/lib/keyringer/actions/append new file mode 100755 index 0000000..30c2d5b --- /dev/null +++ b/lib/keyringer/actions/append @@ -0,0 +1,41 @@ +#!/bin/bash +# +# Append information into encrypted files. +# + +# Load functions +LIB="`dirname $0`/../functions" +source "$LIB" || exit 1 + +# Get file +keyringer_get_file "$2" + +OLDIFS="$IFS" +IFS=$'\n' + +CONTENT=($(keyringer_exec decrypt "$BASEDIR" "$FILE")) + +if [ "$BASENAME" == "append" ]; then + # only display directions if we're running append, not append-batch + printf "\n%s currently has %d lines\n\n" "$FILE" "${#CONTENT[@]}" + printf "Now please write the content to be appended on %s, finnishing with Ctrl-D:\n" "$FILE" +fi + +# FIXME: dkg doesn't know how to check that this does proper escaping +# (2010-11-16) + +APPEND=($(cat -)) + +NEW=( ${CONTENT[@]} ${APPEND[@]} ) + +for element in $(seq 0 $((${#NEW[@]} - 1))); do + echo ${NEW[$element]} +done | keyringer_exec encrypt-batch $BASEDIR $FILE + +err="$?" + +if [ "$err" != "0" ]; then + exit "$err" +fi + +IFS="$OLDIFS" |