Recognize nl_langinfo(CODESET) return values "646" and "" as aliases
authorschwarze <schwarze@openbsd.org>
Mon, 17 Apr 2017 14:31:23 +0000 (14:31 +0000)
committerschwarze <schwarze@openbsd.org>
Mon, 17 Apr 2017 14:31:23 +0000 (14:31 +0000)
for "US-ASCII", useful for different versions of NetBSD and Solaris.
Found by dtucker@ and by Tom G. Christensen <tgc at jupiterrise dot com>.
OK dtucker@ deraadt@

usr.bin/ssh/utf8.c

index 5172bcc..e14fbd5 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: utf8.c,v 1.5 2017/02/19 00:10:57 djm Exp $ */
+/* $OpenBSD: utf8.c,v 1.6 2017/04/17 14:31:23 schwarze Exp $ */
 /*
  * Copyright (c) 2016 Ingo Schwarze <schwarze@openbsd.org>
  *
@@ -52,7 +52,8 @@ dangerous_locale(void) {
 
        loc = nl_langinfo(CODESET);
        return strcmp(loc, "US-ASCII") != 0 && strcmp(loc, "UTF-8") != 0 &&
-           strcmp(loc, "ANSI_X3.4-1968") != 0;
+           strcmp(loc, "ANSI_X3.4-1968") != 0 && strcmp(loc, "646") != 0 &&
+           strcmp(loc, "") != 0;
 }
 
 static int