summaryrefslogtreecommitdiff
path: root/ssh.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2016-12-12 13:57:10 +1100
committerDamien Miller <djm@mindrot.org>2016-12-12 13:58:59 +1100
commitdda78a03af32e7994f132d923c2046e98b7c56c8 (patch)
tree589e87350c833aada6358afc719b7e08f7b64b75 /ssh.c
parentc35995048f41239fc8895aadc3374c5f75180554 (diff)
Force Turkish locales back to C/POSIX; bz#2643
Turkish locales are unique in their handling of the letters 'i' and 'I' (yes, they are different letters) and OpenSSH isn't remotely prepared to deal with that. For now, the best we can do is to force OpenSSH to use the C/POSIX locale and try to preserve the UTF-8 encoding if possible. ok dtucker@
Diffstat (limited to 'ssh.c')
-rw-r--r--ssh.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ssh.c b/ssh.c
index 8aa8daae..ee0b16dc 100644
--- a/ssh.c
+++ b/ssh.c
@@ -109,6 +109,7 @@
#include "version.h"
#include "ssherr.h"
#include "myproposal.h"
+#include "utf8.h"
#ifdef ENABLE_PKCS11
#include "ssh-pkcs11.h"
@@ -589,7 +590,7 @@ main(int ac, char **av)
*/
umask(022);
- setlocale(LC_CTYPE, "");
+ msetlocale();
/*
* Initialize option structure to indicate that no values have been