44 lines
1.3 KiB
Bash
Executable File
44 lines
1.3 KiB
Bash
Executable File
#!/bin/sh
|
||
|
||
# Copyright (c) 2022–2023 Emma Tebibyte <emma@tebibyte.media>
|
||
# SPDX-License-Identifier: AGPL-3.0-or-later
|
||
#
|
||
# This program is free software: you can redistribute it and/or modify it under
|
||
# the terms of the GNU Affero General Public License as published by the Free
|
||
# Software Foundation, either version 3 of the License, or (at your option) any
|
||
# later version.
|
||
#
|
||
# This program is distributed in the hope that it will be useful, but WITHOUT
|
||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||
# FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
|
||
# details.
|
||
#
|
||
# You should have received a copy of the GNU Affero General Public License along
|
||
# with this program. If not, see https://www.gnu.org/licenses/.
|
||
|
||
|
||
argv0="$0"
|
||
|
||
if ! command -v curl > /dev/null; then
|
||
printf "%s: Missing dependency: curl(1)\n" "$0" 1>&2
|
||
exit 69 # sysexits(3) EX_UNAVAILABLE
|
||
fi
|
||
|
||
if test -z "$1"; then
|
||
printf "Usage: %s [ProtonMail address...]\n" "$argv0" 1>&2
|
||
exit 64 # syexits(3) EX_USAGE
|
||
fi
|
||
|
||
while test -n "$1"; do
|
||
URL="https://api.protonmail.ch/pks/lookup?op=get&search=$1"
|
||
RESPONSE="$(curl -s "$URL")"
|
||
|
||
if [ "$RESPONSE" = 'No key found' ]; then
|
||
printf "%s: %s: %s\n" "$argv0" "$1" "$RESPONSE" 1>&2
|
||
exit 76 # sysexits(3) EX_PROTOCOL
|
||
else
|
||
printf "%s\n" "$RESPONSE"
|
||
fi
|
||
shift
|
||
done
|