comparison lib/rfc959.c @ 845:8263cc35c027

2006-11-2 Brian Masney <masneyb@gftp.org> * lib/gftp.h lib/local.c lib/misc.c lib/protocols.c lib/rfc959.c lib/sshv2.c - added gftp_filename_to_utf8() and gftp_filename_from_utf8(). (gftp_string_from_utf8) - added argument that will force the local encoding to be used.
author masneyb
date Fri, 03 Nov 2006 03:02:51 +0000
parents 57aad6d4b304
children 14858879916f
comparison
equal deleted inserted replaced
844:1ece208d1357 845:8263cc35c027
201 size_t destlen; 201 size_t destlen;
202 int resp; 202 int resp;
203 203
204 if (argument != NULL) 204 if (argument != NULL)
205 { 205 {
206 utf8 = gftp_string_from_utf8 (request, argument, &destlen); 206 utf8 = gftp_filename_from_utf8 (request, argument, &destlen);
207 if (utf8 != NULL) 207 if (utf8 != NULL)
208 { 208 {
209 tempstr = g_strconcat (command, " ", utf8, "\r\n", NULL); 209 tempstr = g_strconcat (command, " ", utf8, "\r\n", NULL);
210 g_free (utf8); 210 g_free (utf8);
211 } 211 }
318 newstr = g_realloc (newstr, (gulong) sizeof (char) * (len + 1)); 318 newstr = g_realloc (newstr, (gulong) sizeof (char) * (len + 1));
319 strcat (newstr, startpos); 319 strcat (newstr, startpos);
320 } 320 }
321 else 321 else
322 { 322 {
323 utf8 = gftp_string_from_utf8 (request, newval, &destlen); 323 utf8 = gftp_string_from_utf8 (request, -1, newval, &destlen);
324 if (utf8 != NULL) 324 if (utf8 != NULL)
325 len += strlen (utf8); 325 len += strlen (utf8);
326 else 326 else
327 len += strlen (newval); 327 len += strlen (newval);
328 328
389 *pos = '\0'; 389 *pos = '\0';
390 390
391 if (request->directory) 391 if (request->directory)
392 g_free (request->directory); 392 g_free (request->directory);
393 393
394 utf8 = gftp_string_to_utf8 (request, dir, &destlen); 394 utf8 = gftp_filename_to_utf8 (request, dir, &destlen);
395 if (utf8 != NULL) 395 if (utf8 != NULL)
396 request->directory = utf8; 396 request->directory = utf8;
397 else 397 else
398 request->directory = g_strdup (dir); 398 request->directory = g_strdup (dir);
399 399
1725 1725
1726 g_return_val_if_fail (request != NULL, GFTP_EFATAL); 1726 g_return_val_if_fail (request != NULL, GFTP_EFATAL);
1727 g_return_val_if_fail (file != NULL, GFTP_EFATAL); 1727 g_return_val_if_fail (file != NULL, GFTP_EFATAL);
1728 g_return_val_if_fail (request->datafd > 0, GFTP_EFATAL); 1728 g_return_val_if_fail (request->datafd > 0, GFTP_EFATAL);
1729 1729
1730 utf8 = gftp_string_from_utf8 (request, file, &destlen); 1730 utf8 = gftp_filename_from_utf8 (request, file, &destlen);
1731 if (utf8 != NULL) 1731 if (utf8 != NULL)
1732 { 1732 {
1733 tempstr = g_strdup_printf ("SITE CHMOD %o %s\r\n", mode, utf8); 1733 tempstr = g_strdup_printf ("SITE CHMOD %o %s\r\n", mode, utf8);
1734 g_free (utf8); 1734 g_free (utf8);
1735 } 1735 }
1757 1757
1758 g_return_val_if_fail (request != NULL, GFTP_EFATAL); 1758 g_return_val_if_fail (request != NULL, GFTP_EFATAL);
1759 g_return_val_if_fail (command != NULL, GFTP_EFATAL); 1759 g_return_val_if_fail (command != NULL, GFTP_EFATAL);
1760 g_return_val_if_fail (request->datafd > 0, GFTP_EFATAL); 1760 g_return_val_if_fail (request->datafd > 0, GFTP_EFATAL);
1761 1761
1762 utf8 = gftp_string_from_utf8 (request, command, &destlen); 1762 utf8 = gftp_string_from_utf8 (request, -1, command, &destlen);
1763 if (utf8 != NULL) 1763 if (utf8 != NULL)
1764 { 1764 {
1765 if (specify_site) 1765 if (specify_site)
1766 tempstr = g_strconcat ("SITE ", utf8, "\r\n", NULL); 1766 tempstr = g_strconcat ("SITE ", utf8, "\r\n", NULL);
1767 else 1767 else