[gnome-keysign: 2/16] Add import signature function
- From: Tobias Mueller <tobiasmue src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-keysign: 2/16] Add import signature function
- Date: Wed, 7 Aug 2019 09:49:08 +0000 (UTC)
commit aee2eedad4972873002034bf512fce384e375cc6
Author: RyuzakiKK <aasonykk gmail com>
Date: Wed Nov 14 16:23:18 2018 +0100
Add import signature function
keysign/gpgmeh.py | 11 +++++++++++
keysign/send.py | 5 +++++
2 files changed, 16 insertions(+)
---
diff --git a/keysign/gpgmeh.py b/keysign/gpgmeh.py
index 904dd01..a15a0e4 100755
--- a/keysign/gpgmeh.py
+++ b/keysign/gpgmeh.py
@@ -471,3 +471,14 @@ def sign_keydata_and_encrypt(keydata, error_cb=None, homedir=None):
always_trust=True,
sign=False)
yield (UID.from_gpgme(uid), ciphertext)
+
+
+def import_signature(filename, homedir=None):
+ # ctx = gpg.Context()
+ ctx = DirectoryContext(homedir)
+ with open(filename, "rb") as fh:
+ decrypted = ctx.decrypt(fh)
+ ctx.op_import(decrypted[0])
+ result = ctx.op_import_result()
+ if len(result.imports) < 0:
+ raise gpg.errors.GPGMEError
diff --git a/keysign/send.py b/keysign/send.py
index 36c045c..036d7d4 100644
--- a/keysign/send.py
+++ b/keysign/send.py
@@ -9,6 +9,7 @@ gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
from gi.repository import GLib
from gi.repository import Gdk
+from gpg import errors
from wormhole.errors import ServerConnectionError, LonelyError, WrongPasswordError
if __name__ == "__main__":
from twisted.internet import gtk3reactor
@@ -107,6 +108,10 @@ class SendApp:
filename = data.get_text()
filename = filename[7:].strip('\r\n\x00') # remove file://, \r\n and NULL
log.info("Received file: %s" % filename)
+ try:
+ gpgmh.import_signature(filename)
+ except errors.GPGMEError as e:
+ log.error(e)
@inlineCallbacks
def on_key_activated(self, widget, key):
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]