diff -cr freetds-0.63.orig/src/tds/encodings.h freetds-0.63/src/tds/encodings.h *** freetds-0.63.orig/src/tds/encodings.h 2005-03-30 09:35:18.000000000 +0900 --- freetds-0.63/src/tds/encodings.h 2006-05-29 16:33:29.000000000 +0900 *************** *** 106,111 **** --- 106,112 ---- { "UTF-32LE", 4, 4}, /* 100 */ { "UTF-7", 1, 4}, /* 101 */ { "VISCII", 1, 1}, /* 102 */ + { "EUCJP-MS", 1, 1}, /* 103 */ {"", 0, 0} }; *************** *** 213,219 **** TDS_CHARSET_UTF_32LE = 100, TDS_CHARSET_UTF_7 = 101, TDS_CHARSET_VISCII = 102, ! TDS_NUM_CHARSETS = 103 }; static const CHARACTER_SET_ALIAS iconv_aliases[] = { --- 214,221 ---- TDS_CHARSET_UTF_32LE = 100, TDS_CHARSET_UTF_7 = 101, TDS_CHARSET_VISCII = 102, ! TDS_CHARSET_EUC_JP_MS = 103, ! TDS_NUM_CHARSETS = 104 }; static const CHARACTER_SET_ALIAS iconv_aliases[] = { *************** *** 590,595 **** --- 592,598 ---- { "ucs2", 86 }, { "ucs4", 89 }, { "utf8", 1 }, + { "EUCJP-MS", 103 }, {NULL, 0} }; diff -cr freetds-0.63.orig/src/tds/write.c freetds-0.63/src/tds/write.c *** freetds-0.63.orig/src/tds/write.c 2004-07-29 19:22:42.000000000 +0900 --- freetds-0.63/src/tds/write.c 2006-05-29 16:33:52.000000000 +0900 *************** *** 124,130 **** tds_put_string(TDSSOCKET * tds, const char *s, int len) { TDS_ENCODING *client, *server; ! char outbuf[256], *poutbuf; size_t inbytesleft, outbytesleft, bytes_out = 0; client = &tds->char_convs[client2ucs2]->client_charset; --- 124,130 ---- tds_put_string(TDSSOCKET * tds, const char *s, int len) { TDS_ENCODING *client, *server; ! char outbuf[100000], *poutbuf; size_t inbytesleft, outbytesleft, bytes_out = 0; client = &tds->char_convs[client2ucs2]->client_charset;