annotate lib/charset-conv.c @ 988:63555c9744c2

remote charset should be specified by each bookmark entry.
author Yoshiki Yazawa <yaz@honeyplanet.jp>
date Fri, 14 Aug 2009 07:54:55 +0900
parents c7d7a081cd9c
children c99b134c6185
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
950
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
1 /*****************************************************************************/
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
2 /* charset-conv.c - contains functions for performing conversions between */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
3 /* character sets. */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
4 /* Copyright (C) 1998-2008 Brian Masney <masneyb@gftp.org> */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
5 /* */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
6 /* This program is free software; you can redistribute it and/or modify */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
7 /* it under the terms of the GNU General Public License as published by */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
8 /* the Free Software Foundation; either version 2 of the License, or */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
9 /* (at your option) any later version. */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
10 /* */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
11 /* This program is distributed in the hope that it will be useful, */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
12 /* but WITHOUT ANY WARRANTY; without even the implied warranty of */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
13 /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
14 /* GNU General Public License for more details. */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
15 /* */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
16 /* You should have received a copy of the GNU General Public License */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
17 /* along with this program; if not, write to the Free Software */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
18 /* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
19 /*****************************************************************************/
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
20
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
21 #include "gftp.h"
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
22 static const char cvsid[] = "$Id: protocols.c 952 2008-01-24 23:31:26Z masneyb $";
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
23
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
24 #if GLIB_MAJOR_VERSION > 1
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
25
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
26 static /*@null@*/ char *
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
27 _gftp_get_next_charset (char **curpos)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
28 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
29 char *ret, *endpos;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
30 size_t len, retlen;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
31
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
32 if (**curpos == '\0')
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
33 return (NULL);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
34
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
35 for (; **curpos == ' ' || **curpos == '\t'; (*curpos)++);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
36
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
37 if ((endpos = strchr (*curpos, ',')) == NULL)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
38 len = strlen (*curpos) - 1; /* the trailing ',' should be omitted */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
39 else
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
40 len = endpos - *curpos;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
41
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
42 for (retlen = len - 1;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
43 (*curpos)[retlen - 1] == ' ' || (*curpos)[retlen - 1] == '\t';
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
44 retlen--);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
45
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
46 retlen++; /* Needed due to the len - 1 above... */
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
47 ret = g_malloc0 (retlen + 1);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
48 memcpy (ret, *curpos, retlen);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
49
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
50 for (*curpos += len; **curpos == ','; (*curpos)++);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
51
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
52 return (ret);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
53 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
54
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
55
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
56 static void
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
57 _do_show_iconv_error (const char *str, char *charset, int from_utf8,
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
58 GError * error)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
59 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
60 const char *fromset, *toset;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
61
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
62 if (from_utf8)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
63 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
64 fromset = "UTF-8";
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
65 toset = charset;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
66 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
67 else
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
68 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
69 fromset = charset;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
70 toset = "UTF-8";
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
71 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
72
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
73 printf (_("Error converting string '%s' from character set %s to character set %s: %s\n"),
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
74 str, fromset, toset, error->message);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
75 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
76
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
77 /*@null@*/ static char *
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
78 _do_convert_string (gftp_request * request, int is_filename, int force_local,
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
79 const char *str, size_t *dest_len, int from_utf8)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
80 {
988
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
81 char *remote_charset = NULL, *default_charset = NULL, *ret, *fromset,
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
82 *toset, *stpos, *cur_charset;
950
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
83 GError * error;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
84 gsize bread;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
85
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
86 if (request == NULL)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
87 return (NULL);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
88
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
89 if (g_utf8_validate (str, -1, NULL) != from_utf8)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
90 return (NULL);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
91
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
92 error = NULL;
988
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
93 // gftp_lookup_request_option (request, "remote_charset", &remote_charset);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
94 remote_charset = request->remote_charset;
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
95 gftp_lookup_global_option ("default_charset", &default_charset);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
96 if(!remote_charset)
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
97 remote_charset = (default_charset && *default_charset != '\0')
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
98 ? default_charset : "UTF8";
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
99
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
100 if (*remote_charset == '\0' || request->use_local_encoding ||
950
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
101 force_local == 1)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
102 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
103 if (from_utf8)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
104 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
105 if (is_filename)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
106 ret = g_filename_from_utf8 (str, -1, &bread, dest_len, &error);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
107 else
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
108 ret = g_locale_from_utf8 (str, -1, &bread, dest_len, &error);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
109 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
110 else
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
111 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
112 if (is_filename)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
113 ret = g_filename_to_utf8 (str, -1, &bread, dest_len, &error);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
114 else
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
115 ret = g_locale_to_utf8 (str, -1, &bread, dest_len, &error);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
116 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
117
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
118 if (ret == NULL)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
119 _do_show_iconv_error (str, request->iconv_charset, from_utf8, error);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
120
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
121 return (ret);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
122 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
123
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
124 if (from_utf8)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
125 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
126 if (request->iconv_from_initialized)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
127 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
128 ret = g_convert_with_iconv (str, -1, request->iconv_from, &bread, dest_len,
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
129 &error);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
130 if (ret == NULL)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
131 _do_show_iconv_error (str, request->iconv_charset, from_utf8, error);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
132
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
133 return (ret);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
134 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
135 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
136 else
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
137 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
138 if (request->iconv_to_initialized)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
139 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
140 ret = g_convert_with_iconv (str, -1, request->iconv_to, &bread, dest_len,
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
141 &error);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
142 if (ret == NULL)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
143 _do_show_iconv_error (str, request->iconv_charset, from_utf8, error);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
144
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
145 return (ret);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
146 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
147 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
148
988
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
149 stpos = remote_charset;
950
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
150 while ((cur_charset = _gftp_get_next_charset (&stpos)) != NULL)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
151 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
152 if (from_utf8)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
153 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
154 fromset = "UTF-8";
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
155 toset = cur_charset;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
156 if ((request->iconv_from = g_iconv_open (toset, fromset)) == (GIConv) -1)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
157 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
158 g_free (cur_charset);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
159 continue;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
160 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
161
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
162 error = NULL;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
163 if ((ret = g_convert_with_iconv (str, -1, request->iconv_from, &bread,
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
164 dest_len, &error)) == NULL)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
165 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
166 g_iconv_close (request->iconv_from);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
167 request->iconv_from = NULL;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
168 _do_show_iconv_error (str, cur_charset, from_utf8, error);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
169 g_free (cur_charset);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
170 continue;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
171 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
172
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
173 request->iconv_from_initialized = 1;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
174 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
175 else
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
176 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
177 fromset = cur_charset;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
178 toset = "UTF-8";
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
179 if ((request->iconv_to = g_iconv_open (toset, fromset)) == (GIConv) -1)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
180 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
181 g_free (cur_charset);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
182 continue;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
183 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
184
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
185 error = NULL;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
186 if ((ret = g_convert_with_iconv (str, -1, request->iconv_to, &bread,
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
187 dest_len, &error)) == NULL)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
188 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
189 g_iconv_close (request->iconv_to);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
190 request->iconv_to = NULL;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
191 _do_show_iconv_error (str, cur_charset, from_utf8, error);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
192 g_free (cur_charset);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
193 continue;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
194 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
195
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
196 request->iconv_to_initialized = 1;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
197 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
198
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
199 request->iconv_charset = cur_charset;
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
200 return (ret);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
201 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
202
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
203 return (NULL);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
204 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
205
988
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
206
950
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
207 char *
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
208 gftp_string_to_utf8 (gftp_request * request, const char *str, size_t *dest_len)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
209 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
210 return (_do_convert_string (request, 0, 0, str, dest_len, 0));
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
211 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
212
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
213
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
214 char *
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
215 gftp_string_from_utf8 (gftp_request * request, int force_local, const char *str,
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
216 size_t *dest_len)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
217 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
218 return (_do_convert_string (request, 0, force_local, str, dest_len, 1));
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
219 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
220
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
221
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
222 char *
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
223 gftp_filename_to_utf8 (gftp_request * request, const char *str,
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
224 size_t *dest_len)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
225 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
226 return (_do_convert_string (request, 1, 0, str, dest_len, 0));
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
227 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
228
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
229
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
230 char *
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
231 gftp_filename_from_utf8 (gftp_request * request, const char *str,
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
232 size_t *dest_len)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
233 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
234 return (_do_convert_string (request, 1, 0, str, dest_len, 1));
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
235 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
236
988
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
237
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
238 char *
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
239 gftp_remote_filename_to_utf8 (gftp_request * request, const char *str,
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
240 size_t *dest_len)
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
241 {
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
242 char *remote_charset = NULL, *default_charset = NULL;
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
243 GError *error = NULL;
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
244 gchar *ret = NULL;
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
245
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
246 if(request == NULL)
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
247 return (NULL);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
248
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
249 /* get remote_charset */
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
250 // gftp_lookup_request_option (request, "remote_charset", &remote_charset);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
251 remote_charset = request->remote_charset;
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
252 gftp_lookup_global_option ("default_charset", &default_charset);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
253 if(!remote_charset)
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
254 remote_charset = (default_charset && *default_charset != '\0')
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
255 ? default_charset : "UTF8";
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
256
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
257 ret = g_convert(str, -1, "UTF8", remote_charset, NULL, dest_len, error);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
258 return ret;
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
259 }
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
260
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
261
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
262 char *
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
263 gftp_remote_filename_from_utf8 (gftp_request *request, const char *str,
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
264 size_t *dest_len)
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
265 {
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
266 char *remote_charset = NULL, *default_charset = NULL;
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
267 GError *error = NULL;
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
268 gchar *ret = NULL;
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
269
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
270 if(request == NULL)
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
271 return (NULL);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
272
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
273 if(!g_utf8_validate (str, -1, NULL))
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
274 return (NULL);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
275
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
276 /* get remote_charset */
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
277 // gftp_lookup_request_option (request, "remote_charset", &remote_charset);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
278 remote_charset = request->remote_charset;
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
279 gftp_lookup_global_option ("default_charset", &default_charset);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
280 if(!remote_charset)
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
281 remote_charset = (default_charset && *default_charset != '\0')
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
282 ? default_charset : "UTF8";
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
283
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
284 ret = g_convert(str, -1, remote_charset, "UTF8", NULL, dest_len, error);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
285 return ret;
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
286 }
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
287
950
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
288 #else
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
289
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
290 char *
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
291 gftp_string_to_utf8 (gftp_request * request, const char *str, size_t dest_len)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
292 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
293 return (NULL);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
294 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
295
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
296
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
297 char *
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
298 gftp_string_from_utf8 (gftp_request * request, int force_local, const char *str,
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
299 size_t dest_len)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
300 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
301 return (NULL);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
302 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
303
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
304
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
305 char *
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
306 gftp_filename_to_utf8 (gftp_request * request, const char *str, size_t dest_len)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
307 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
308 return (NULL);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
309 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
310
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
311
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
312 char *
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
313 gftp_filename_from_utf8 (gftp_request * request, int force_local,
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
314 const char *str, size_t dest_len)
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
315 {
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
316 return (NULL);
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
317 }
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
318
988
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
319 char *
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
320 gftp_remote_filename_to_utf8 (gftp_request * request, const char *str, size_t dest_len)
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
321 {
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
322 return (NULL);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
323 }
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
324
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
325
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
326 char *
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
327 gftp_remote_filename_from_utf8 (gftp_request * request, int force_local,
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
328 const char *str, size_t dest_len)
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
329 {
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
330 return (NULL);
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
331 }
63555c9744c2 remote charset should be specified by each bookmark entry.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents: 950
diff changeset
332
950
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
333 #endif
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
334
c7d7a081cd9c 2008-03-04 Brian Masney <masneyb@gftp.org>
masneyb
parents:
diff changeset
335