sekrit: remove -f flag for sekrit_add
Not only it parsed the wrong character 2 commits ago, it's also completely broken: file can't be overwritten, because of `chmod 400`.
This commit is contained in:
parent
f500903cba
commit
19631627d6
2 changed files with 7 additions and 24 deletions
|
@ -29,7 +29,7 @@ usage()
|
|||
{
|
||||
cat - <<. >&2
|
||||
Usage:
|
||||
${0##*/} add [-f] key [value ...]
|
||||
${0##*/} add key [value ...]
|
||||
${0##*/} cp [-k] key
|
||||
${0##*/} gen [-l length] [chars]
|
||||
${0##*/} get key
|
||||
|
@ -73,34 +73,20 @@ _sekrit_decrypt()
|
|||
|
||||
sekrit_add()
|
||||
{
|
||||
force=no
|
||||
OPTIND=1
|
||||
while getopts f flag; do
|
||||
case "$flag" in
|
||||
f) force=yes ;;
|
||||
*) usage ;;
|
||||
esac
|
||||
done
|
||||
shift $((OPTIND - 1))
|
||||
|
||||
[ $# -ge 1 ] && [ -n "$1" ] || usage
|
||||
key=$1
|
||||
shift
|
||||
path=$(make_key_path "$key")
|
||||
|
||||
if [ -f "$path" ] && [ $force = no ]; then
|
||||
err "key $key already exists"
|
||||
fi
|
||||
|
||||
path=$SEKRIT_DIR/$key.gpg
|
||||
mkdir -p "${path%/*}"
|
||||
|
||||
[ ! -f "$path" ] || err "key $key already exists"
|
||||
|
||||
if [ $# -gt 0 ]; then
|
||||
# use all additional parameters as a single string
|
||||
printf "%s\n" "$*"
|
||||
else
|
||||
cat -
|
||||
fi | gpg2 -qae -r "$SEKRIT_GPG_ID" >|"$path"
|
||||
fi | gpg2 -qae -r "$SEKRIT_GPG_ID" >"$path"
|
||||
# make it read-only
|
||||
chmod -- 400 "$path"
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue