+ char *p;
+
+ if (!name)
+ return name;
+
+ /* Many need no remapping, but they are listed here so you
+ * can see what output to expect, and modify for your needs
+ * as necessary. */
+ if (!strcmp(name, "UTF-8"))
+ return "UTF-8";
+ if (!strcmp(name, "EUC-JP"))
+ return "EUC-JP";
+ if (!strcmp(name, "EUC-KR"))
+ return "EUC-KR";
+ if (!strcmp(name, "EUC-TW"))
+ return "EUC-TW";
+ if (!strcmp(name, "KOI8-R"))
+ return "KOI8-R";
+ if (!strcmp(name, "KOI8-U"))
+ return "KOI8-U";
+ if (!strcmp(name, "GBK"))
+ return "GBK";
+ if (!strcmp(name, "GB2312"))
+ return "GB2312";
+ if (!strcmp(name, "GB18030"))
+ return "GB18030";
+ if (!strcmp(name, "VSCII"))
+ return "VSCII";
+
+ /* ASCII comes in many names */
+ if (!strcmp(name, "ASCII") ||
+ !strcmp(name, "US-ASCII") ||
+ !strcmp(name, "ANSI_X3.4-1968") ||
+ !strcmp(name, "646") ||
+ !strcmp(name, "ISO646") ||
+ !strcmp(name, "ISO_646.IRV"))
+ return "US-ASCII";