summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Cady <d@jerkface.net>2019-10-21 20:43:54 -0400
committerAndrew Cady <d@jerkface.net>2019-10-21 20:45:19 -0400
commit0013a8b47a1cf2cdd4f50bba81c786155162825c (patch)
treee60adb7e334a40d2e95cf605464689d692763c8b
parent10e5efaa69c9f0c254db13a84d3312ebaebde5dc (diff)
add commands kiki-import-stdin & kiki-export-stdout
-rw-r--r--Makefile2
-rwxr-xr-xsrc/kiki-export-stdout35
-rwxr-xr-xsrc/kiki-import-stdin7
3 files changed, 43 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 97bb23d..e16a464 100644
--- a/Makefile
+++ b/Makefile
@@ -19,7 +19,7 @@ samizdat-pinentry: src/samizdat-pinentry.c
19wait_for_files: src/wait_for_files.c 19wait_for_files: src/wait_for_files.c
20 $(CC) $(CFLAGS) $< -o $@ 20 $(CC) $(CFLAGS) $< -o $@
21 21
22bin_programs=$(addprefix src/, xorriso-usb.sh btrfs-functions.sh btrfs-receive-root.sh btrfs-send-root.sh var.sh grub-efi.sh keygen.sh initrd.sh qemu.sh dnsmasq-dhcp-script.sh samizdat-password-agent samizdat-gpg-agent publish-ip.sh selfstrap samizdat-daily-snapshot-root samizdat-diff-root) samizdat-paths.sh ${cc_files} ${btrfs_utils} 22bin_programs=$(addprefix src/, xorriso-usb.sh btrfs-functions.sh btrfs-receive-root.sh btrfs-send-root.sh var.sh grub-efi.sh keygen.sh initrd.sh qemu.sh dnsmasq-dhcp-script.sh samizdat-password-agent samizdat-gpg-agent publish-ip.sh selfstrap samizdat-daily-snapshot-root samizdat-diff-root kiki-export-stdout kiki-import-stdin) samizdat-paths.sh ${cc_files} ${btrfs_utils}
23 23
24btrfs_utils=$(addprefix src/btrfs-utils/, btarfs btrfs-shrink with-btrfs-seed) 24btrfs_utils=$(addprefix src/btrfs-utils/, btarfs btrfs-shrink with-btrfs-seed)
25 25
diff --git a/src/kiki-export-stdout b/src/kiki-export-stdout
new file mode 100755
index 0000000..e508a61
--- /dev/null
+++ b/src/kiki-export-stdout
@@ -0,0 +1,35 @@
1#!/bin/sh
2tempd=$(mktemp -d) || exit
3: ${sudo:=sudo}
4
5if [ "$USE_KIKI" ]
6then
7 USE_GPG=
8else
9 USE_GPG=y
10fi
11
12touch "$tempd"/ring.gpg
13key=$($sudo kiki | sed -n -e 's/^master-key \([A-Fa-f0-9]*\) -/\1/p')
14
15if [ "$USE_GPG" ]
16then
17 $sudo gpg --export "$key"
18else
19 $sudo kiki merge \
20 --flow=spill,match="$key" \
21 --home \
22 --flow=fill \
23 --type=keyring --access=public \
24 "$tempd"/ring.gpg
25fi
26r=$?
27
28if [ $r = 0 ]
29then
30 cat "$tempd"/ring.gpg || r=$?
31fi
32
33rm -rf "$tempd"
34exit $r
35
diff --git a/src/kiki-import-stdin b/src/kiki-import-stdin
new file mode 100755
index 0000000..2fd25d6
--- /dev/null
+++ b/src/kiki-import-stdin
@@ -0,0 +1,7 @@
1#!/bin/sh
2tempd=$(mktemp -d) || exit
3cat > "$tempd"/ring.gpg
4kiki import-public --import --autosign --import-if-authentic --keyrings "$tempd"/ring.gpg
5r=$?
6rm -rf "$tempd"
7exit $r