mirror of
git://git.gnupg.org/gnupg.git
synced 2024-12-22 10:19:57 +01:00
a479804c86
* g10/gpg.c (oRecipientFile, oHiddenRecipientFile): New. (opts): Add options --recipient-file and --hidden-recipient-file. (main): Implement them. Also remove duplicate code from similar options. * g10/keydb.h (PK_LIST_FROM_FILE): New. (PK_LIST_SHIFT): Bump up. * g10/pkclist.c (expand_group): Take care of PK_LIST_FROM_FILE. (find_and_check_key): Add and implement arg FROM_FILE. (build_pk_list): Pass new value for new arg. * g10/getkey.c (get_pubkey_fromfile): New. * g10/gpgv.c (read_key_from_file): New stub. * g10/test-stubs.c (read_key_from_file): New stub. * g10/server.c (cmd_recipient): Add flag --file. * g10/import.c (read_key_from_file): New. * tests/openpgp/defs.scm (key-file1): New. (key-file2): New. * tests/openpgp/setup.scm: Add their private keys and import the key-file1. * tests/openpgp/encrypt.scm: Add new test. -- Signed-off-by: Werner Koch <wk@gnupg.org>
61 lines
1.8 KiB
Scheme
Executable File
61 lines
1.8 KiB
Scheme
Executable File
#!/usr/bin/env gpgscm
|
|
|
|
;; Copyright (C) 2016 g10 Code GmbH
|
|
;;
|
|
;; This file is part of GnuPG.
|
|
;;
|
|
;; GnuPG is free software; you can redistribute it and/or modify
|
|
;; it under the terms of the GNU General Public License as published by
|
|
;; the Free Software Foundation; either version 3 of the License, or
|
|
;; (at your option) any later version.
|
|
;;
|
|
;; GnuPG 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 General Public License for more details.
|
|
;;
|
|
;; You should have received a copy of the GNU General Public License
|
|
;; along with this program; if not, see <http://www.gnu.org/licenses/>.
|
|
|
|
(load (with-path "defs.scm"))
|
|
|
|
(for-each-p
|
|
"Checking encryption"
|
|
(lambda (source)
|
|
(tr:do
|
|
(tr:open source)
|
|
(tr:gpg "" `(--yes --encrypt --recipient ,usrname2))
|
|
(tr:gpg "" '(--yes))
|
|
(tr:assert-identity source)))
|
|
(append plain-files data-files))
|
|
|
|
(for-each-p
|
|
"Checking encryption using a specific cipher algorithm"
|
|
(lambda (cipher)
|
|
(for-each-p
|
|
""
|
|
(lambda (source)
|
|
(tr:do
|
|
(tr:open source)
|
|
(tr:gpg "" `(--yes --encrypt --recipient ,usrname2
|
|
--cipher-algo ,cipher))
|
|
(tr:gpg "" '(--yes))
|
|
(tr:assert-identity source)))
|
|
(append plain-files data-files)))
|
|
all-cipher-algos)
|
|
|
|
|
|
;; We encrypt to two keys and we have also put the first key into our
|
|
;; pubring, so that decryption will work.
|
|
(for-each-p
|
|
"Checking encryption using a key from file"
|
|
(lambda (source)
|
|
(tr:do
|
|
(tr:open source)
|
|
(tr:gpg "" `(--yes -v --no-keyring --encrypt
|
|
--recipient-file ,(in-srcdir key-file1)
|
|
--hidden-recipient-file ,(in-srcdir key-file2)))
|
|
(tr:gpg "" '(--yes))
|
|
(tr:assert-identity source)))
|
|
plain-files)
|