summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/client/clitar.c3
-rw-r--r--source3/include/proto.h1
-rw-r--r--source3/lib/charset.c49
3 files changed, 50 insertions, 3 deletions
diff --git a/source3/client/clitar.c b/source3/client/clitar.c
index f70e639e90..d5bca8c5bb 100644
--- a/source3/client/clitar.c
+++ b/source3/client/clitar.c
@@ -376,8 +376,7 @@ Compare two strings in a slash insensitive way, allowing s1 to match s2
if s1 is an "initial" string (up to directory marker). Thus, if s2 is
a file in any subdirectory of s1, declare a match.
***************************************************************************/
-static
-int strslashcmp(char *s1, char *s2)
+static int strslashcmp(char *s1, char *s2)
{
char *s1_0=s1;
diff --git a/source3/include/proto.h b/source3/include/proto.h
index 8faa3201dc..65287ff595 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -51,7 +51,6 @@ char *smb_errstr(char *inbuf);
/*The following definitions come from clitar.c */
-int strslashcmp(char *s1, char *s2);
int padit(char *buf, int bufsize, int padsize);
void cmd_block(void);
void cmd_tarmode(void);
diff --git a/source3/lib/charset.c b/source3/lib/charset.c
index 0bbf99e29f..c1945cb1ef 100644
--- a/source3/lib/charset.c
+++ b/source3/lib/charset.c
@@ -96,6 +96,52 @@ unsigned char cp_850[][4] = {
{0,0,0,0}
};
+/* lower->upper mapping for IBM Code Page 852 - MS-DOS Latin 2 */
+/* Donated by Leos Bitto <bitto@altec.cz> */
+unsigned char cp_852[][4] = {
+{0x81,0x9A,1,1},
+{0x82,0x90,1,1},
+{0x83,0xB6,1,1},
+{0x84,0x8E,1,1},
+{0x85,0xDE,1,1},
+{0x86,0x8F,1,1},
+{0x87,0x80,1,1},
+{0x88,0x9D,1,1},
+{0x89,0xD3,1,1},
+{0x8B,0x8A,1,1},
+{0x8C,0xD7,1,1},
+{0x92,0x91,1,1},
+{0x93,0xE2,1,1},
+{0x94,0x99,1,1},
+{0x96,0x95,1,1},
+{0x98,0x97,1,1},
+{0x9C,0x9B,1,1},
+{0x9F,0xAC,1,1},
+{0xA0,0xB5,1,1},
+{0xA1,0xD6,1,1},
+{0xA2,0xE0,1,1},
+{0xA3,0xE9,1,1},
+{0xA5,0xA4,1,1},
+{0xA7,0xA6,1,1},
+{0xA9,0xA8,1,1},
+{0xAB,0x8D,1,1},
+{0xAD,0xB8,1,1},
+{0xBE,0xBD,1,1},
+{0xC7,0xC6,1,1},
+{0xD0,0xD1,1,1},
+{0xD4,0xD2,1,1},
+{0xD8,0xB7,1,1},
+{0xE4,0xE3,1,1},
+{0xE5,0xD5,1,1},
+{0xE7,0xE6,1,1},
+{0xEA,0xE8,1,1},
+{0xEC,0xED,1,1},
+{0xEE,0xDD,1,1},
+{0xFB,0xEB,1,1},
+{0xFD,0xFC,1,1},
+{0,0,0,0}
+};
+
/* lower->upper mapping for IBM Code Page 437 - MS-DOS Latin US */
unsigned char cp_437[][4] = {
/* 135 08/07 207 87 c cedilla */
@@ -257,6 +303,9 @@ void codepage_initialise(int client_codepage)
case 850:
cp = cp_850;
break;
+ case 852:
+ cp = cp_852;
+ break;
case 437:
cp = cp_437;
break;