// code_convert("gb2312","utf-8",inbuf,outbuf,outlen);
static int code_convert(const char *from_charset,const char *to_charset,
char *inbuf, char *outbuf, const size_t ol )
{
iconv_t cd;
char **pin = &inbuf;
char **pout = &outbuf;
size_t inlen = strlen(inbuf) + 1;
size_t outlen = ol;
cd = iconv_open(to_charset, from_charset);
if (cd == (iconv_t)-1)
return -1;
if (iconv(cd, pin, &inlen, pout, &outlen) == -1)
return -1;
iconv_close(cd);
return 0;
}