Package: kuvert Version: 2.1.0 Severity: important Tags: patch -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512
kuvert failed to start for me today (i.e. at the first start after upgrading to 2.1.0) with Wide character in syswrite at /usr/lib/x86_64-linux-gnu/perl/5.24/Sys/Syslog.pm line 544. Some digging around shows that this happens while reading the keys and weeding out revoked keys, when "syslog" is turned on in the config, and the message passed to the logit() function contains (in this case [0]) cyrillic characters. The same happens when writing to a logfile (after enabling the option in the config): Wide character in print at /usr/bin/kuvert line 1357. So it looks like the messages need to be encoded again before being passed to Sys::Sylog or written to a local file. The attached patch seems to fix to problem for me and might serve as an inspiration. Cheers, gregor [0] % gpg --list-key --list-options show-unusable-uids 0xEA12A906DE0E1C1B gpg: please do a --check-trustdb pub dsa1024/0xEA12A906DE0E1C1B 2008-09-22 [SCA] Key fingerprint = 655A 86EB 653C 6D6C BB16 2550 EA12 A906 DE0E 1C1B uid [ unknown] Roman V. Nikolaev <rsha...@rambler.ru> uid [ revoked] Николаев Роман <rsha...@rambler.ru> uid [ revoked] Николаев Роман <nikolaev.ro...@rbscorp.ru> uid [ revoked] Николаев Роман (РБС) <nikolae...@rbscorp.ru> uid [ unknown] [jpeg image of size 4915] uid [ unknown] Roman V. Nikolaev <ru...@rshadow.ru> uid [ revoked] Николаев Роман (РБС) <nikolaev.ro...@rbscorp.ru> uid [ unknown] Roman V. Nikolaev <rshadowa...@gmail.com> uid [ unknown] Roman V. Nikolaev (http://search.cpan.org/~rshadow/) <rsha...@cpan.org> sub elg2048/0xDBC0C083950A7796 2008-09-22 [E] -----BEGIN PGP SIGNATURE----- iQKTBAEBCgB9FiEE0eExbpOnYKgQTYX6uzpoAYZJqgYFAljpfNNfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEQx RTEzMTZFOTNBNzYwQTgxMDREODVGQUJCM0E2ODAxODY0OUFBMDYACgkQuzpoAYZJ qgb95RAAilg5KJGvAgyqoCO1kbC4mwqfmebt9CarumqVn56WjG/fniqCeHrQMSz9 5KWgybAh5qWHRYAn4R22/CLSS80FTxg1vSUzL6kaqk9f9b9gklwHNacEKYRQV+h+ Bm0Abgwau5p8syA5EBEBui8HA+5GDjGT1I4WW7L0eeqMj0k1GXkz/1+HOAHtphsb dOxqoRMuJYh/HxE35I/MvW6zhwWCRCTp+HvVxbqNDi4oj8Entykf0k/zVXhdk2xA NnYMVZxRFcnGAs8f8Ud9X1Hptyh3euURg80h5YPFSaMCPf57lv11oNv5Nz+lJLvT shSVE+cz9K5OyGXBzz4fnYNeU51mlCt/eU4xd3dwL0JKKnier98k/ydCz8CyJtnQ e/wAJX23eKT82xTLwVY6bTOrC/lKZbXBatB6vg7miDqTDkwTjmZjox/NZAB1MQqr DQjMAsI3e3RgbDs2MYaWEhJjNZ9oeaq4ftV9VWyvdLnDpNYVej2KX9II9GdINeSe sA46VkdJ2sEkesV4wfo1G4ffVwtw2ufO2p3ho9wSXSNUBsXgARH9VzbLmKmtzXU3 4jKlRBZxCzKwAMmEbt28ez/4Roacj+BINjCtH8OYjBROkneC9XsVhcfEiXuFfUs8 EvvpCADYchimFgxgToNE0QyJJrOaezCN43eLnVHWNY1GdFa+DbM= =MVBI -----END PGP SIGNATURE-----
--- a/usr/bin/kuvert 2017-04-01 15:36:39.000000000 +0200 +++ b/usr/bin/kuvert 2017-04-09 02:11:25.412361947 +0200 @@ -1344,6 +1344,7 @@ { my (@msgs)=@_; + my @umsgs = map {Encode::encode('utf-8', $_, Encode::FB_WARN)} @msgs; if ($config{logfile}) # our own logfile? { if (!$config{logfh}) # not open yet? @@ -1354,14 +1355,14 @@ $config{logfh}->autoflush(1); } - print { $config{logfh} } scalar(localtime)." ".join("\n\t",@msgs)."\n"; + print { $config{logfh} } scalar(localtime)." ".join("\n\t",@umsgs)."\n"; } if ($config{syslog}) { setlogsock('unix'); openlog($progname,"pid,cons",$config{syslog}); - syslog("notice",join("\n",@msgs)); + syslog("notice",join("\n",@umsgs)); closelog; } }