ソースを参照

improved mpass

master
mort 8年前
コミット
390c5305af
1個のファイルの変更43行の追加12行の削除
  1. 43
    12
      bin/mpass

+ 43
- 12
bin/mpass ファイルの表示

rm "$TMP_OUT" 2>&1 > /dev/null rm "$TMP_OUT" 2>&1 > /dev/null
} }


function getpass
{
echo -n $(cat ~/.mpassword)
}

function tryerr
{
if [ "$?" != "0" ]; then
merror "An error occurred."
cleanup
exit 1
fi

if [ "$1" != "" ]; then
if [ "$1" != "0" ]; then
merror "An error occurred." "$1"
cleanup
exit 1
fi
fi
}

# Create password: mpass create <name> [chars] # Create password: mpass create <name> [chars]
if [ "$1" = "create" ]; then if [ "$1" = "create" ]; then
if [ "$2" = "" ]; then if [ "$2" = "" ]; then
echo "$chars" > "$TMP_IN" echo "$chars" > "$TMP_IN"
echo "$chars" | mclip echo "$chars" | mclip


openssl enc -aes-256-cbc -salt -a -in "$TMP_IN" -out "$TMP_OUT" -pass "file:$HOME/.mpassword"
getpass | openssl enc -aes-256-cbc -a -in "$TMP_IN" -out "$TMP_OUT" -pass stdin
tryerr


enc=$(cat "$TMP_OUT") enc=$(cat "$TMP_OUT")


passsum=$(shasum -a 512 < ~/.mpassword | cut -d ' ' -f 1)
passsum=$(getpass | shasum -a 512 | cut -d ' ' -f 1)


code=$(curl -s -X POST -d "$enc" "http://pass.mort.coffee/put/$2/$passsum") code=$(curl -s -X POST -d "$enc" "http://pass.mort.coffee/put/$2/$passsum")

if [ "$code" != "200" ]; then
echo "Error: $code"
cleanup
exit 1
fi
tryerr "$code"


echo "$chars" echo "$chars"


mnotify "Password created" "$2"

# Get password: mpass get <name> # Get password: mpass get <name>
elif [ "$1" = "get" ]; then elif [ "$1" = "get" ]; then
if [ "$2" = "" ]; then if [ "$2" = "" ]; then
exit 1 exit 1
fi fi


curl -s "http://pass.mort.coffee/get/$2" > $TMP_IN
curl -s "http://pass.mort.coffee/get/$2" > "$TMP_IN"
tryerr
if [ ! -s "$TMP_IN" ]; then
tryerr "Pasword doesn't exist."
fi

echo -n "$enc" >> "$TMP_IN"

getpass | openssl enc -aes-256-cbc -a -d -in "$TMP_IN" -out "$TMP_OUT" -pass stdin
tryerr


openssl enc -aes-256-cbc -d -a -in "$TMP_IN" -out "$TMP_OUT" -pass "file:$HOME/.mpassword"
chars=$(cat "$TMP_OUT")

echo -n "$chars" | mclip
echo "$chars"


echo $(cat "$TMP_OUT") | mclip
echo $(cat "$TMP_OUT")
mnotify "Password received" "$2"
fi fi


cleanup cleanup

読み込み中…
キャンセル
保存