From f6db249c92e8fd25c1cb52872d3a647be034b626 Mon Sep 17 00:00:00 2001 From: fiaxh Date: Sun, 28 Jan 2018 20:56:27 +0100 Subject: Only display transferred images, display file names, open in system viewer, include and use pgp embedded file names --- plugins/gpgme-vala/src/gpgme_helper.vala | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'plugins/gpgme-vala/src') diff --git a/plugins/gpgme-vala/src/gpgme_helper.vala b/plugins/gpgme-vala/src/gpgme_helper.vala index cc013164..c0121842 100644 --- a/plugins/gpgme-vala/src/gpgme_helper.vala +++ b/plugins/gpgme-vala/src/gpgme_helper.vala @@ -19,11 +19,12 @@ public static string encrypt_armor(string plain, Key[] keys, EncryptFlags flags) } } -public static uint8[] encrypt_file(string uri, Key[] keys, EncryptFlags flags) throws GLib.Error { +public static uint8[] encrypt_file(string uri, Key[] keys, EncryptFlags flags, string file_name) throws GLib.Error { global_mutex.lock(); try { initialize(); Data plain_data = Data.create_from_file(uri); + plain_data.set_file_name(file_name); Context context = Context.create(); context.set_armor(true); Data enc_data = context.op_encrypt(keys, flags, plain_data); @@ -46,14 +47,20 @@ public static string decrypt(string encr) throws GLib.Error { } } -public static uint8[] decrypt_data(uint8[] data) throws GLib.Error { +public class DecryptedData { + public uint8[] data { get; set; } + public string filename { get; set; } +} + +public static DecryptedData decrypt_data(uint8[] data) throws GLib.Error { global_mutex.lock(); try { initialize(); Data enc_data = Data.create_from_memory(data, false); Context context = Context.create(); Data dec_data = context.op_decrypt(enc_data); - return get_uint8_from_data(dec_data); + DecryptResult* dec_res = context.op_decrypt_result(); + return new DecryptedData() { data=get_uint8_from_data(dec_data), filename=dec_res->file_name}; } finally { global_mutex.unlock(); } -- cgit v1.2.3-54-g00ecf