Make PGP encoding configurable
python-gnupg uses latin1 as default encoding because GPG itself uses latin1 as default. We should not override this default with getpreferredencoding, because getpreferredencoding maybe returns something else than what GPG is configured on that system. Example: On Windows GPG is run in default mode with 'latin1' getpreferredencoding returns 'cp1252' The approach would be now to default to latin1 as it is GPGs default. And if the User sets a different ecoding for GPG he has to set it in Gajim aswell.
This commit is contained in:
parent
a2785ba396
commit
78b562f7a5
2 changed files with 6 additions and 2 deletions
|
@ -315,6 +315,7 @@ class Config:
|
||||||
'positive_184_ack': [ opt_bool, False, _('If enabled, Gajim will show an icon to show that sent message has been received by your contact')],
|
'positive_184_ack': [ opt_bool, False, _('If enabled, Gajim will show an icon to show that sent message has been received by your contact')],
|
||||||
'show_avatar_in_tabs': [ opt_bool, False, _('Show a mini avatar in chat window tabs and in window icon')],
|
'show_avatar_in_tabs': [ opt_bool, False, _('Show a mini avatar in chat window tabs and in window icon')],
|
||||||
'use_keyring': [opt_bool, True, _('If True, Gajim will use the Systems Keyring to store account passwords.')],
|
'use_keyring': [opt_bool, True, _('If True, Gajim will use the Systems Keyring to store account passwords.')],
|
||||||
|
'pgp_encoding': [ opt_str, '', _('Sets the encoding used by python-gnupg'), True],
|
||||||
}, {})
|
}, {})
|
||||||
|
|
||||||
__options_per_key = {
|
__options_per_key = {
|
||||||
|
|
|
@ -22,9 +22,10 @@
|
||||||
## along with Gajim. If not, see <http://www.gnu.org/licenses/>.
|
## along with Gajim. If not, see <http://www.gnu.org/licenses/>.
|
||||||
##
|
##
|
||||||
|
|
||||||
from common.gajim import HAVE_GPG, GPG_BINARY
|
|
||||||
import os
|
import os
|
||||||
import logging
|
import logging
|
||||||
|
from common import gajim
|
||||||
|
from common.gajim import HAVE_GPG, GPG_BINARY
|
||||||
|
|
||||||
if HAVE_GPG:
|
if HAVE_GPG:
|
||||||
import gnupg
|
import gnupg
|
||||||
|
@ -33,7 +34,9 @@ if HAVE_GPG:
|
||||||
class GnuPG(gnupg.GPG):
|
class GnuPG(gnupg.GPG):
|
||||||
def __init__(self, use_agent=False):
|
def __init__(self, use_agent=False):
|
||||||
gnupg.GPG.__init__(self, gpgbinary=GPG_BINARY)
|
gnupg.GPG.__init__(self, gpgbinary=GPG_BINARY)
|
||||||
self.encoding = 'utf-8'
|
encoding = gajim.config.get('pgp_encoding')
|
||||||
|
if encoding:
|
||||||
|
self.encoding = encoding
|
||||||
self.decode_errors = 'replace'
|
self.decode_errors = 'replace'
|
||||||
self.passphrase = None
|
self.passphrase = None
|
||||||
self.use_agent = use_agent
|
self.use_agent = use_agent
|
||||||
|
|
Loading…
Add table
Reference in a new issue