examples: multi-key selection operations ben/docs/2018-03
authorBen McGinnes <ben@adversary.org>
Wed, 21 Mar 2018 19:19:36 +0000 (06:19 +1100)
committerBen McGinnes <ben@adversary.org>
Wed, 21 Mar 2018 19:19:36 +0000 (06:19 +1100)
* Temporarily removing multi-key selection based examples.
* There are a few issues with getting the key selections to play
  nicely with gpg.Context().keylist object types.
* Will troubleshoot them separately and restore them when that's
  worked out, but I don't want these more complicated examples to
  delay merging the HOWTO with master.

lang/python/examples/howto/group-encrypt-sign-file.py [deleted file]
lang/python/examples/howto/group-key-selection.py [deleted file]
lang/python/examples/howto/key-selection.py [deleted file]

diff --git a/lang/python/examples/howto/group-encrypt-sign-file.py b/lang/python/examples/howto/group-encrypt-sign-file.py
deleted file mode 100755 (executable)
index da73e4c..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-
-from __future__ import absolute_import, division, unicode_literals
-
-# Copyright (C) 2018 Ben McGinnes <ben@gnupg.org>
-#
-# This program 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 2 of the License, or (at your option) any later
-# version.
-#
-# This program is free software; you can redistribute it and/or modify it under
-# the terms of the GNU Lesser General Public License as published by the Free
-# Software Foundation; either version 2.1 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 General Public License and the GNU
-# Lesser General Public Licensefor more details.
-#
-# You should have received a copy of the GNU General Public License and the GNU
-# Lesser General Public along with this program; if not, see
-# <http://www.gnu.org/licenses/>.
-
-import gpg
-import sys
-
-from groups import group_lists
-
-"""
-Signs and encrypts a file to a specified group of keys.  If entering both the
-group and the filename on the command line, the group must be entered first.
-
-Signs with and also encrypts to the default key of the user invoking the
-script.  Will treat all recipients as trusted to permit encryption.
-
-Will produce both an ASCII armoured and GPG binary format copy of the signed
-and encrypted file.
-"""
-
-if len(sys.argv) > 3:
-    group = sys.argv[1]
-    filename = " ".join(sys.argv[2:])
-elif len(sys.argv) == 3:
-    group = sys.argv[1]
-    filename = sys.argv[2]
-elif len(sys.argv) == 2:
-    group = sys.argv[1]
-    filename = input("Enter the path and filename to encrypt: ")
-else:
-    group = input("Enter the name of the group to select keys for: ")
-    filename = input("Enter the path and filename to encrypt: ")
-
-keys = []
-a = []
-
-for i in range(len(group_lists)):
-    a.append(group_lists[i][0])
-
-b = a.index(group)
-
-for i in range(len(group_lists[b][1])):
-    logrus = group_lists[b][1][i]
-    keys.append(list(gpg.Context().keylist(pattern=logrus)))
-
-with open(filename, "rb") as f:
-    text = f.read()
-
-with gpg.Context(armor=True) as ca:
-    ciphertext, result, sign_result = ca.encrypt(text, recipients=keys,
-                                                 always_trust=True,
-                                                     add_encrypt_to=True)
-    with open("{0}.asc".format(filename), "wb") as fa:
-        fa.write(ciphertext)
-
-with gpg.Context() as cg:
-    ciphertext, result, sign_result = cg.encrypt(text, recipients=keys,
-                                                 always_trust=True,
-                                                     add_encrypt_to=True)
-    with open("{0}.gpg".format(filename), "wb") as fg:
-        fg.write(ciphertext)
diff --git a/lang/python/examples/howto/group-key-selection.py b/lang/python/examples/howto/group-key-selection.py
deleted file mode 100755 (executable)
index 2e3d2eb..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-
-from __future__ import absolute_import, division, unicode_literals
-
-# Copyright (C) 2018 Ben McGinnes <ben@gnupg.org>
-#
-# This program 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 2 of the License, or (at your option) any later
-# version.
-#
-# This program is free software; you can redistribute it and/or modify it under
-# the terms of the GNU Lesser General Public License as published by the Free
-# Software Foundation; either version 2.1 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 General Public License and the GNU
-# Lesser General Public Licensefor more details.
-#
-# You should have received a copy of the GNU General Public License and the GNU
-# Lesser General Public along with this program; if not, see
-# <http://www.gnu.org/licenses/>.
-
-import gpg
-import sys
-
-from groups import group_lists
-
-"""
-Takes an existing group specified as a command line parameter and converts it
-to a list object 'keys' as expected by the gpg module.
-
-Requires the groups module in this directory.
-"""
-
-if len(sys.argv) == 2:
-    group = sys.argv[1]
-elif len(sys.argv) == 1:
-    group = input("Enter the name of the group to select keys for: ")
-else:
-    group = input("Enter the name of the group to select keys for: ")
-
-keys = []
-a = []
-
-for i in range(len(group_lists)):
-    a.append(group_lists[i][0])
-
-b = a.index(group)
-
-for i in range(len(group_lists[b][1])):
-    logrus = group_lists[b][1][i]
-    keys.append(gpg.Context().keylist(pattern=logrus))
diff --git a/lang/python/examples/howto/key-selection.py b/lang/python/examples/howto/key-selection.py
deleted file mode 100755 (executable)
index a007219..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-
-from __future__ import absolute_import, division, unicode_literals
-
-# Copyright (C) 2018 Ben McGinnes <ben@gnupg.org>
-#
-# This program 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 2 of the License, or (at your option) any later
-# version.
-#
-# This program is free software; you can redistribute it and/or modify it under
-# the terms of the GNU Lesser General Public License as published by the Free
-# Software Foundation; either version 2.1 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 General Public License and the GNU
-# Lesser General Public Licensefor more details.
-#
-# You should have received a copy of the GNU General Public License and the GNU
-# Lesser General Public along with this program; if not, see
-# <http://www.gnu.org/licenses/>.
-
-import gpg
-import sys
-
-"""
-Uses key IDs, fingerprints or other patterns as space separated input and
-creates a keylist object for use by the gpg module.
-
-Similar to the group-key-selection.py script, but does not require an existing
-group in the gpg.conf file.
-"""
-
-if len(sys.argv) < 2:
-    key_ids_str = sys.argv[1:]
-elif len(sys.argv) == 2:
-    key_ids_str = sys.argv[1]
-elif len(sys.argv) == 1:
-    key_ids_str = input("Enter the keys to select by key ID or fingerprint: ")
-else:
-    key_ids_str = input("Enter the keys to select by key ID or fingerprint: ")
-
-key_ids = key_ids_str.split()
-keys = []
-for i in range(len(key_ids)):
-    logrus = key_ids[i]
-    keys.append(gpg.Context().keylist(pattern=logrus))