chiark / gitweb /
gnupg2 (2.1.17-3) unstable; urgency=medium
[gnupg2.git] / tests / migrations / extended-pkf.scm
1 #!/usr/bin/env gpgscm
2
3 ;; Copyright (C) 2016 g10 Code GmbH
4 ;;
5 ;; This file is part of GnuPG.
6 ;;
7 ;; GnuPG is free software; you can redistribute it and/or modify
8 ;; it under the terms of the GNU General Public License as published by
9 ;; the Free Software Foundation; either version 3 of the License, or
10 ;; (at your option) any later version.
11 ;;
12 ;; GnuPG is distributed in the hope that it will be useful,
13 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 ;; GNU General Public License for more details.
16 ;;
17 ;; You should have received a copy of the GNU General Public License
18 ;; along with this program; if not, see <http://www.gnu.org/licenses/>.
19
20 (load (with-path "common.scm"))
21
22 (catch (skip "gpgtar not built")
23        (call-check `(,GPGTAR --help)))
24
25 (define src-tarball (in-srcdir "extended-pkf.tar.asc"))
26
27 (define (setup)
28   (untar-armored src-tarball)
29   (setenv "GNUPGHOME" (getcwd) #t))
30
31 (define (trigger-migration)
32   (call-check `(,@GPG --list-secret-keys)))
33
34 (define (assert-keys-usable)
35   (for-each
36    (lambda (keyid)
37      (catch (error "Key not found:" keyid)
38             (call-check `(,@GPG --list-secret-keys ,keyid))))
39    '("C40FDECF" "ECABF51D")))
40
41 (info "Testing the extended private key format ...")
42 (with-temporary-working-directory
43  (setup)
44  (assert-keys-usable))
45
46 ;; XXX try changing a key, and check that the format is not changed.