Link against ncursesw

Stanislav Ochotnicky <[email protected]> Fri, 22 Jul 2011 14:30:51 +0200
Newsgroups gmane.comp.encryption.gpg.gpa.devel
Message-ID <[email protected]>
--===============1333150047==
Content-Transfer-Encoding: 8bit
Content-Type: multipart/signed; boundary="=-1311337859-470141-26073-3663-4-=";
	protocol="application/pgp-signature"


--=-1311337859-470141-26073-3663-4-=
Content-Type: multipart/mixed; boundary="=-1311337851-890326-26073-2739-3-="


--=-1311337851-890326-26073-2739-3-=
Content-Type: text/plain; charset=UTF-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Fedora recently received a valid bugreport [1] showing problems with
pinentry-curses and  UTF-8 descriptions (most visible when someone has
UTF-8 in their gnupg names). Most simple reproducer is:

$ pinentry-curses
OK Your orders please
option lc-ctype=3Dpl_PL.UTF-8
OK
setdesc =C4=85=C4=87=C4=99=C5=82=C5=84=C3=B3=C5=9B=C5=BA=C5=BC=C4=84=C4=86=
=C4=98=C5=81=C5=83=C3=93=C5=9A=C5=B9=C5=BB
OK
getpin
[pinentry shows garbled text in curses]

I prepared a patch that fixes this (attached), but I am not entirely
convinced it's the proper fix. That's mainly because I just replaced
ncurses linking with ncursesw. This is fine for most desktop systems
that have wide-char ncurses, but I assume there might be systems you
want to support without ncursesw.

Proper way to deal with this would probably be to fallback like this:
ncursesw -> ncurses -> curses

Apart from this does adding setlocale(LC_CTYPE, "") call seem
sensible?


[1] https://bugzilla.redhat.com/show_bug.cgi?id=3D704495

--
Stanislav Ochotnicky <[email protected]>
Software Engineer - Base Operating Systems Brno

PGP: 7B087241
Red Hat Inc.                               http://cz.redhat.com

--=-1311337851-890326-26073-2739-3-=
Content-Disposition: attachment;
	filename="0001-Link-against-ncursesw-and-fix-display-of-wide-charac.patch"
Content-Type: application/octet-stream;
	name="0001-Link-against-ncursesw-and-fix-display-of-wide-charac.patch"
Content-Transfer-Encoding: base64

RnJvbSBhYWI1NGVlM2Q2M2NmZTlhNmZkMzRiYTlkYWY5ZjJkNzZjNDNhZGJl
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBTdGFuaXNsYXYgT2No
b3RuaWNreSA8c29jaG90bmlja3lAcmVkaGF0LmNvbT4KRGF0ZTogRnJpLCAy
MiBKdWwgMjAxMSAxMTo0NToyNCArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIExp
bmsgYWdhaW5zdCBuY3Vyc2VzdyBhbmQgZml4IGRpc3BsYXkgb2Ygd2lkZSBj
aGFyYWN0ZXJzIG9uCiBjb25zb2xlCgpBcyBwZXIgaHR0cHM6Ly9idWd6aWxs
YS5yZWRoYXQuY29tL3Nob3dfYnVnLmNnaT9pZD03MDQ0OTUgdXNlciB3YXMK
dW5hYmxlIHRvIHByb3Blcmx5IGRpc3BsYXkgd2lkZSBjaGFyYWN0ZXJzIHBy
b3Blcmx5IGV2ZW4gdGhvdWdoCmVudmlyb25tZW50IHdhcyBzZXQgZm9yIFVU
Ri04LiBUaGlzIGNvbW1pdCBpbml0aWFsaXplcyBMQ19DVFlQRSBzbwp0aGF0
IG5jcnVzZXMgc2V0dXAgd29ya3MgY29ycmVjdGx5LgotLS0KIG00L2N1cnNl
cy5tNCAgICAgICAgICAgICAgIHwgICAgMiArLQogcGluZW50cnkvcGluZW50
cnktY3Vyc2VzLmMgfCAgICAxICsKIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNl
cnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL200L2N1
cnNlcy5tNCBiL200L2N1cnNlcy5tNAppbmRleCAxZTFjYjRmLi5iYzE3Mjlm
IDEwMDY0NAotLS0gYS9tNC9jdXJzZXMubTQKKysrIGIvbTQvY3Vyc2VzLm00
CkBAIC0yOCw3ICsyOCw3IEBAIEFDX0RFRlVOKFtJVV9MSUJfTkNVUlNFU10s
IFsKICAgQUNfQVJHX0VOQUJMRShuY3Vyc2VzLCAgICBbICAtLWRpc2FibGUt
bmN1cnNlcyAgICAgICBkb24ndCBwcmVmZXIgLWxuY3Vyc2VzIG92ZXIgLWxj
dXJzZXNdLAogICAgICAgICAgICAgICAsIGVuYWJsZV9uY3Vyc2VzPXllcykK
ICAgaWYgdGVzdCAiJGVuYWJsZV9uY3Vyc2VzIiA9IHllczsgdGhlbgotICAg
IEFDX0NIRUNLX0xJQihuY3Vyc2VzLCBpbml0c2NyLCBMSUJOQ1VSU0VTPSIt
bG5jdXJzZXMiKQorICAgIEFDX0NIRUNLX0xJQihuY3Vyc2VzdywgaW5pdHNj
ciwgTElCTkNVUlNFUz0iLWxuY3Vyc2VzdyIpCiAgICAgaWYgdGVzdCAiJExJ
Qk5DVVJTRVMiOyB0aGVuCiAgICAgICAjIFVzZSBuY3Vyc2VzIGhlYWRlciBm
aWxlcyBpbnN0ZWFkIG9mIHRoZSBvcmRpbmFyeSBvbmVzLCBpZiBwb3NzaWJs
ZTsKICAgICAgICMgaXMgdGhlcmUgYSBiZXR0ZXIgd2F5IG9mIGRvaW5nIHRo
aXMsIHRoYXQgYXZvaWRzIGxvb2tpbmcgaW4gc3BlY2lmaWMKZGlmZiAtLWdp
dCBhL3BpbmVudHJ5L3BpbmVudHJ5LWN1cnNlcy5jIGIvcGluZW50cnkvcGlu
ZW50cnktY3Vyc2VzLmMKaW5kZXggNzZkZGJkZC4uNTBmOTdmNSAxMDA2NDQK
LS0tIGEvcGluZW50cnkvcGluZW50cnktY3Vyc2VzLmMKKysrIGIvcGluZW50
cnkvcGluZW50cnktY3Vyc2VzLmMKQEAgLTY1Myw2ICs2NTMsNyBAQCBkaWFs
b2dfcnVuIChwaW5lbnRyeV90IHBpbmVudHJ5LCBjb25zdCBjaGFyICp0dHlf
bmFtZSwgY29uc3QgY2hhciAqdHR5X3R5cGUpCiAgICAgewogICAgICAgaWYg
KCFpbml0X3NjcmVlbikKIAl7CisJICBzZXRsb2NhbGUoTENfQ1RZUEUsICIi
KTsKIAkgIGluaXRfc2NyZWVuID0gMTsKIAkgIGluaXRzY3IgKCk7CiAJfQot
LSAKMS43LjYKCg==

--=-1311337851-890326-26073-2739-3-=--

--=-1311337859-470141-26073-3663-4-=
Content-Disposition: attachment; filename="signature.asc"
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (GNU/Linux)

iQIcBAEBCgAGBQJOKW2DAAoJELy9dS57CHJB6i4QAMnCmonqevNvWQuF+hKhKH/J
zwsvl8R6nvEbKYVKCmDou8yUcpwWgCsW0KtbgdXDW9UJt0jypR2+jhs2vdS7ZURY
COv1fE7XujSgT320BvYFtq3Sydma2zJzRoQJFdSuVJtsfXe3P8EO0rlG2ff5A1qR
dNx8rwlyeJQlshOb8fgmuQEDN9Gq4UPLsHij82i6yCB/7pGqF6rtUjgi7/BVpaG7
519KgqFiGw7/v2ZsgIKkBct73Ey9ZW7dG7K0sGE41qrGrMZsNfEwZo+D/D1cYcFd
OgTH7WIvReCClZq0TS45araLjkJ9kj4w5ns/Ag0wRRPma3Nuyh5KozEpq+7WRXH+
4Nnw5GKcD02kSdGoVAvC0mVKfsp/TRmPyYSReXSiR7UhxvZnOTvrP3NMnUu1aVPa
Kc77JcSmeC0+CGpEQU0qpG7SH8LvIf9XF3Zk+uLUYzJGxnmmLSc8qxHIZ3ehLzDu
uNedctFgFgGLXgk2ffMxq0HhI5EoWjAOaXh8f8k0ztjLExZhx4dUfGuIus4DI2i+
DMIhNrveB7AD1Gewi/4Gq0oiJtABp8gdQG03UWtT6KIMVFRcKiFhSrmyvGRxGlhr
XkkzhohpYgJl4q8D3DcFJt1rb5DN1KvcForHTkmVnbQmIK+B2TjXwnAEu5jcOlvS
d4N8wYhm1oquwxP3rs/+
=nDe5
-----END PGP SIGNATURE-----

--=-1311337859-470141-26073-3663-4-=--


--===============1333150047==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Gpa-dev mailing list
[email protected]
http://lists.gnupg.org/mailman/listinfo/gpa-dev

--===============1333150047==--