# HG changeset patch # User Yoshiki Yazawa # Date 1265005078 -32400 # Node ID c99b134c618581df1e7edbea344a557da68fd7bd # Parent 63555c9744c2ff183f33167de3b011eb73c1cdf8 [mq]: charset2 diff -r 63555c9744c2 -r c99b134c6185 lib/charset-conv.c --- a/lib/charset-conv.c Fri Aug 14 07:54:55 2009 +0900 +++ b/lib/charset-conv.c Mon Feb 01 15:17:58 2010 +0900 @@ -19,10 +19,9 @@ /*****************************************************************************/ #include "gftp.h" +#include static const char cvsid[] = "$Id: protocols.c 952 2008-01-24 23:31:26Z masneyb $"; -#if GLIB_MAJOR_VERSION > 1 - static /*@null@*/ char * _gftp_get_next_charset (char **curpos) { @@ -74,187 +73,110 @@ str, fromset, toset, error->message); } -/*@null@*/ static char * -_do_convert_string (gftp_request * request, int is_filename, int force_local, - const char *str, size_t *dest_len, int from_utf8) + +char * +gftp_string_to_utf8 (gftp_request *request, const char *str, size_t *dest_len) { - char *remote_charset = NULL, *default_charset = NULL, *ret, *fromset, - *toset, *stpos, *cur_charset; - GError * error; - gsize bread; - - if (request == NULL) - return (NULL); - - if (g_utf8_validate (str, -1, NULL) != from_utf8) - return (NULL); - - error = NULL; -// gftp_lookup_request_option (request, "remote_charset", &remote_charset); - remote_charset = request->remote_charset; - gftp_lookup_global_option ("default_charset", &default_charset); - if(!remote_charset) - remote_charset = (default_charset && *default_charset != '\0') - ? default_charset : "UTF8"; + gchar *remote_charset = NULL, *default_charset = NULL, *ret; + GError *error = NULL; - if (*remote_charset == '\0' || request->use_local_encoding || - force_local == 1) - { - if (from_utf8) - { - if (is_filename) - ret = g_filename_from_utf8 (str, -1, &bread, dest_len, &error); - else - ret = g_locale_from_utf8 (str, -1, &bread, dest_len, &error); - } - else - { - if (is_filename) - ret = g_filename_to_utf8 (str, -1, &bread, dest_len, &error); - else - ret = g_locale_to_utf8 (str, -1, &bread, dest_len, &error); - } + gftp_lookup_global_option ("default_charset", &default_charset); + if(!default_charset) + default_charset = "UTF-8"; - if (ret == NULL) - _do_show_iconv_error (str, request->iconv_charset, from_utf8, error); - - return (ret); - } + if(request) + remote_charset = request->remote_charset; + if(!remote_charset) + remote_charset = default_charset; - if (from_utf8) - { - if (request->iconv_from_initialized) - { - ret = g_convert_with_iconv (str, -1, request->iconv_from, &bread, dest_len, - &error); - if (ret == NULL) - _do_show_iconv_error (str, request->iconv_charset, from_utf8, error); + ret = g_convert_with_fallback(str, -1, "UTF-8", remote_charset, "?", NULL, dest_len, &error); + + return ret; +} - return (ret); - } - } - else - { - if (request->iconv_to_initialized) - { - ret = g_convert_with_iconv (str, -1, request->iconv_to, &bread, dest_len, - &error); - if (ret == NULL) - _do_show_iconv_error (str, request->iconv_charset, from_utf8, error); - return (ret); - } - } - - stpos = remote_charset; - while ((cur_charset = _gftp_get_next_charset (&stpos)) != NULL) - { - if (from_utf8) - { - fromset = "UTF-8"; - toset = cur_charset; - if ((request->iconv_from = g_iconv_open (toset, fromset)) == (GIConv) -1) - { - g_free (cur_charset); - continue; - } +char * +gftp_string_from_utf8 (gftp_request *request, int force_local, const char *str, + size_t *dest_len) +{ + gchar *remote_charset = NULL, *default_charset = NULL, *ret; + GError *error = NULL; - error = NULL; - if ((ret = g_convert_with_iconv (str, -1, request->iconv_from, &bread, - dest_len, &error)) == NULL) - { - g_iconv_close (request->iconv_from); - request->iconv_from = NULL; - _do_show_iconv_error (str, cur_charset, from_utf8, error); - g_free (cur_charset); - continue; - } + gftp_lookup_global_option ("default_charset", &default_charset); + if(!default_charset) + default_charset = "UTF-8"; - request->iconv_from_initialized = 1; - } - else - { - fromset = cur_charset; - toset = "UTF-8"; - if ((request->iconv_to = g_iconv_open (toset, fromset)) == (GIConv) -1) - { - g_free (cur_charset); - continue; - } + if(request) + remote_charset = request->remote_charset; + if(!remote_charset) + remote_charset = default_charset; - error = NULL; - if ((ret = g_convert_with_iconv (str, -1, request->iconv_to, &bread, - dest_len, &error)) == NULL) - { - g_iconv_close (request->iconv_to); - request->iconv_to = NULL; - _do_show_iconv_error (str, cur_charset, from_utf8, error); - g_free (cur_charset); - continue; - } + ret = g_convert_with_fallback(str, -1, remote_charset, "UTF-8", "?", NULL, dest_len, &error); - request->iconv_to_initialized = 1; - } - - request->iconv_charset = cur_charset; - return (ret); - } - - return (NULL); + return ret; } char * -gftp_string_to_utf8 (gftp_request * request, const char *str, size_t *dest_len) -{ - return (_do_convert_string (request, 0, 0, str, dest_len, 0)); -} - - -char * -gftp_string_from_utf8 (gftp_request * request, int force_local, const char *str, +gftp_filename_to_utf8 (gftp_request *request, const char *str, size_t *dest_len) { - return (_do_convert_string (request, 0, force_local, str, dest_len, 1)); + char *codeset = nl_langinfo(CODESET); + gchar *ret; + GError *error = NULL; + + ret = g_filename_to_utf8 (str, -1, NULL, dest_len, &error); + if(!ret) { + error = NULL; + ret = g_convert_with_fallback(str, -1, "UTF-8", codeset, "?", NULL, dest_len, &error); + } + + if(!ret) { + error = NULL; + ret = g_strdup(str); + } + + return ret; } char * -gftp_filename_to_utf8 (gftp_request * request, const char *str, - size_t *dest_len) +gftp_filename_from_utf8 (gftp_request *request, const char *str, + size_t *dest_len) { - return (_do_convert_string (request, 1, 0, str, dest_len, 0)); + char *codeset = nl_langinfo(CODESET); + gchar *ret; + GError *error = NULL; + + ret = g_filename_from_utf8 (str, -1, NULL, dest_len, &error); + if(!ret) { + error = NULL; + ret = g_convert_with_fallback(str, -1, codeset, "UTF-8", "?", NULL, dest_len, &error); + } + + return ret; } char * -gftp_filename_from_utf8 (gftp_request * request, const char *str, - size_t *dest_len) -{ - return (_do_convert_string (request, 1, 0, str, dest_len, 1)); -} - - -char * -gftp_remote_filename_to_utf8 (gftp_request * request, const char *str, +gftp_remote_filename_to_utf8 (gftp_request *request, const char *str, size_t *dest_len) { char *remote_charset = NULL, *default_charset = NULL; + gchar *ret; GError *error = NULL; - gchar *ret = NULL; if(request == NULL) return (NULL); /* get remote_charset */ -// gftp_lookup_request_option (request, "remote_charset", &remote_charset); remote_charset = request->remote_charset; gftp_lookup_global_option ("default_charset", &default_charset); if(!remote_charset) remote_charset = (default_charset && *default_charset != '\0') ? default_charset : "UTF8"; - ret = g_convert(str, -1, "UTF8", remote_charset, NULL, dest_len, error); + ret = g_convert(str, -1, "UTF8", remote_charset, NULL, dest_len, &error); return ret; } @@ -264,8 +186,8 @@ size_t *dest_len) { char *remote_charset = NULL, *default_charset = NULL; + gchar *ret; GError *error = NULL; - gchar *ret = NULL; if(request == NULL) return (NULL); @@ -274,62 +196,12 @@ return (NULL); /* get remote_charset */ -// gftp_lookup_request_option (request, "remote_charset", &remote_charset); remote_charset = request->remote_charset; gftp_lookup_global_option ("default_charset", &default_charset); if(!remote_charset) remote_charset = (default_charset && *default_charset != '\0') ? default_charset : "UTF8"; - ret = g_convert(str, -1, remote_charset, "UTF8", NULL, dest_len, error); + ret = g_convert(str, -1, remote_charset, "UTF8", NULL, dest_len, &error); return ret; } - -#else - -char * -gftp_string_to_utf8 (gftp_request * request, const char *str, size_t dest_len) -{ - return (NULL); -} - - -char * -gftp_string_from_utf8 (gftp_request * request, int force_local, const char *str, - size_t dest_len) -{ - return (NULL); -} - - -char * -gftp_filename_to_utf8 (gftp_request * request, const char *str, size_t dest_len) -{ - return (NULL); -} - - -char * -gftp_filename_from_utf8 (gftp_request * request, int force_local, - const char *str, size_t dest_len) -{ - return (NULL); -} - -char * -gftp_remote_filename_to_utf8 (gftp_request * request, const char *str, size_t dest_len) -{ - return (NULL); -} - - -char * -gftp_remote_filename_from_utf8 (gftp_request * request, int force_local, - const char *str, size_t dest_len) -{ - return (NULL); -} - -#endif - - diff -r 63555c9744c2 -r c99b134c6185 lib/gftp.h --- a/lib/gftp.h Fri Aug 14 07:54:55 2009 +0900 +++ b/lib/gftp.h Mon Feb 01 15:17:58 2010 +0900 @@ -96,7 +96,7 @@ #ifdef ENABLE_NLS #include #define _(String) gettext (String) -#else +#else #define _(String) String #endif #define N_(String) String @@ -177,10 +177,10 @@ /* Server types (used by FTP protocol from SYST command) */ #define GFTP_DIRTYPE_UNIX 1 #define GFTP_DIRTYPE_EPLF 2 -#define GFTP_DIRTYPE_CRAY 3 -#define GFTP_DIRTYPE_NOVELL 4 -#define GFTP_DIRTYPE_DOS 5 -#define GFTP_DIRTYPE_VMS 6 +#define GFTP_DIRTYPE_CRAY 3 +#define GFTP_DIRTYPE_NOVELL 4 +#define GFTP_DIRTYPE_DOS 5 +#define GFTP_DIRTYPE_VMS 6 #define GFTP_DIRTYPE_OTHER 7 #define GFTP_DIRTYPE_MVS 8 @@ -204,7 +204,7 @@ #define MAX_HIST_LEN 10 #define GFTP_URL_USAGE "[[protocol://][user[:pass]@]site[:port][/directory]]" -typedef enum gftp_logging_level_tag +typedef enum gftp_logging_level_tag { gftp_logging_send, gftp_logging_recv, @@ -228,12 +228,12 @@ #define GFTP_IS_SPECIAL_DEVICE(mode) (S_ISBLK (mode) || S_ISCHR (mode)) -struct gftp_file_tag +struct gftp_file_tag { /*@null@*/ char *file, /* Our filename */ *user, /* User that owns it */ *group, /* Group that owns it */ - *destfile; /* Full pathname to the destination for the + *destfile; /* Full pathname to the destination for the file transfer */ int fd; /* Already open fd for this file */ @@ -266,11 +266,11 @@ }; -typedef struct gftp_proxy_hosts_tag +typedef struct gftp_proxy_hosts_tag { /* FIXME - add IPV6 stuff here */ - gint32 ipv4_network_address, + gint32 ipv4_network_address, ipv4_netmask; char *domain; } gftp_proxy_hosts; @@ -278,7 +278,7 @@ /* Note, these numbers must match up to the index number in config_file.c in the declaration of gftp_option_types */ -typedef enum +typedef enum { gftp_option_type_text = 0, gftp_option_type_textcombo = 1, @@ -320,7 +320,7 @@ *description; /* How this field will show up in the dialog */ int otype; /* Type of option this is */ /*@null@*/ void *value; - /*@null@*/ void *listdata; /* For options that have several different + /*@null@*/ void *listdata; /* For options that have several different options, this is a list of all the options. Each option_type that uses this will use this field differently */ @@ -357,17 +357,17 @@ typedef struct gftp_request_tag gftp_request; -typedef void (*gftp_logging_func) ( gftp_logging_level level, - /*@null@*/ gftp_request * request, +typedef void (*gftp_logging_func) ( gftp_logging_level level, + /*@null@*/ gftp_request * request, const char *string, ... ); #define GFTP_ANONYMOUS_USER "anonymous" #define gftp_need_username(request) ((request)->need_username && ((request)->username == NULL || *(request)->username == '\0')) #define gftp_need_password(request) ((request)->need_password && (request)->username != NULL && *(request)->username != '\0' && strcasecmp ((request)->username, GFTP_ANONYMOUS_USER) != 0 && ((request)->password == NULL || *(request)->password == '\0')) -struct gftp_request_tag +struct gftp_request_tag { - int protonum; /* Current number of the protocol this is + int protonum; /* Current number of the protocol this is set to */ char *hostname, /* Hostname we will connect to */ *username, /* Username for host*/ @@ -406,45 +406,45 @@ use_local_encoding : 1; off_t gotbytes; - + void *protocol_data; - + gftp_logging_func logging_function; void *user_data; int (*init) ( gftp_request * request ); - void (*copy_param_options) ( gftp_request * dest_request, + void (*copy_param_options) ( gftp_request * dest_request, gftp_request * src_request ); ssize_t (*read_function) ( gftp_request * request, - void *ptr, - size_t size, + void *ptr, + size_t size, int fd ); - ssize_t (*write_function) ( gftp_request * request, - const char *ptr, - size_t size, + ssize_t (*write_function) ( gftp_request * request, + const char *ptr, + size_t size, int fd ); void (*destroy) ( gftp_request * request ); int (*connect) ( gftp_request * request ); int (*post_connect) ( gftp_request * request ); void (*disconnect) ( gftp_request * request ); - off_t (*get_file) ( gftp_request * request, - const char *filename, + off_t (*get_file) ( gftp_request * request, + const char *filename, off_t startsize ); - int (*put_file) ( gftp_request * request, - const char *filename, + int (*put_file) ( gftp_request * request, + const char *filename, off_t startsize, off_t totalsize ); - off_t (*transfer_file) ( gftp_request * fromreq, - const char *fromfile, - off_t fromsize, - gftp_request * toreq, - const char *tofile, + off_t (*transfer_file) ( gftp_request * fromreq, + const char *fromfile, + off_t fromsize, + gftp_request * toreq, + const char *tofile, off_t tosize ); - ssize_t (*get_next_file_chunk) ( gftp_request * request, - char *buf, + ssize_t (*get_next_file_chunk) ( gftp_request * request, + char *buf, size_t size ); - ssize_t (*put_next_file_chunk) ( gftp_request * request, - char *buf, + ssize_t (*put_next_file_chunk) ( gftp_request * request, + char *buf, size_t size ); int (*end_transfer) ( gftp_request * request ); int (*abort_transfer) ( gftp_request * request ); @@ -453,33 +453,33 @@ mode_t * mode, off_t * filesize ); int (*list_files) ( gftp_request * request ); - int (*get_next_file) ( gftp_request * request, - gftp_file *fle, + int (*get_next_file) ( gftp_request * request, + gftp_file *fle, int fd ); - ssize_t (*get_next_dirlist_line) ( gftp_request * request, + ssize_t (*get_next_dirlist_line) ( gftp_request * request, int fd, char *buf, size_t buflen ); - off_t (*get_file_size) ( gftp_request * request, + off_t (*get_file_size) ( gftp_request * request, const char *filename ); - int (*chdir) ( gftp_request * request, + int (*chdir) ( gftp_request * request, const char *directory ); - int (*rmdir) ( gftp_request * request, + int (*rmdir) ( gftp_request * request, const char *directory ); - int (*rmfile) ( gftp_request * request, + int (*rmfile) ( gftp_request * request, const char *filename ); - int (*mkdir) ( gftp_request * request, + int (*mkdir) ( gftp_request * request, const char *directory ); - int (*rename) ( gftp_request * request, - const char *oldname, + int (*rename) ( gftp_request * request, + const char *oldname, const char *newname ); - int (*chmod) ( gftp_request * request, - const char *filename, + int (*chmod) ( gftp_request * request, + const char *filename, mode_t mode ); - int (*set_file_time) ( gftp_request * request, - const char *filename, + int (*set_file_time) ( gftp_request * request, + const char *filename, time_t datettime ); - int (*site) ( gftp_request * request, + int (*site) ( gftp_request * request, int specify_site, const char *filename ); int (*parse_url) ( gftp_request * request, @@ -495,12 +495,6 @@ SSL * ssl; #endif -#if GLIB_MAJOR_VERSION > 1 - GIConv iconv_to, iconv_from; - unsigned int iconv_from_initialized : 1, - iconv_to_initialized : 1; - char *iconv_charset; -#endif char *remote_charset; }; @@ -524,7 +518,7 @@ lasttime; double kbs; - + GList * files, * curfle, * updfle; @@ -538,10 +532,10 @@ tot_file_trans, /* Total number of bytes in the file being transferred */ curresumed, /* Resumed bytes for this file */ - trans_bytes, /* Amount of data transfered for entire + trans_bytes, /* Amount of data transfered for entire transfer */ total_bytes, /* Grand total bytes for whole transfer */ - resumed_bytes; /* Grand total of resumed bytes for whole + resumed_bytes; /* Grand total of resumed bytes for whole transfer */ void * fromwdata, @@ -563,15 +557,15 @@ } gftp_log; -typedef struct supported_gftp_protocols_tag +typedef struct supported_gftp_protocols_tag { /*@null@*/ char *name; /* Description of protocol */ /*@null@*/ int (*init) (gftp_request * request); /* Init function */ /*@null@*/ void (*register_options) (void); /* Protocol options */ /*@null@*/ char *url_prefix; /* URL Prefix */ unsigned int default_port; /* Default port */ - unsigned int shown : 1, /* Whether this protocol is - shown or not to the user in + unsigned int shown : 1, /* Whether this protocol is + shown or not to the user in the protocol dropdown box */ use_threads : 1; /* Whether or not operations in this protocol should use @@ -581,7 +575,7 @@ typedef struct gftp_bookmarks_tag gftp_bookmarks_var; -struct gftp_bookmarks_tag +struct gftp_bookmarks_tag { char *path, /* Path */ *oldpath, /* Old path name */ @@ -640,7 +634,7 @@ /* Global config options. These are defined in options.h */ /*@null@*/ extern GList * gftp_file_transfers, * gftp_file_transfer_logs, * gftp_options_list; -/*@null@*/ extern GHashTable * gftp_global_options_htable, * gftp_bookmarks_htable, +/*@null@*/ extern GHashTable * gftp_global_options_htable, * gftp_bookmarks_htable, * gftp_config_list_htable; /*@null@*/ extern gftp_bookmarks_var * gftp_bookmarks; /*@null@*/ extern FILE * gftp_logfd; @@ -654,9 +648,9 @@ extern gftp_option_type_var gftp_option_types[]; /* cache.c */ -void gftp_generate_cache_description ( gftp_request * request, +void gftp_generate_cache_description ( gftp_request * request, /*@out@*/ char *description, - size_t len, + size_t len, int ignore_directory ); int gftp_new_cache_entry ( gftp_request * request ); @@ -670,36 +664,36 @@ int ignore_directory ); /* charset-conv.c */ -/*@null@*/ char * gftp_string_to_utf8 ( gftp_request * request, +/*@null@*/ char * gftp_string_to_utf8 ( gftp_request * request, const char *str, size_t *dest_len ); -/*@null@*/ char * gftp_string_from_utf8 ( gftp_request * request, +/*@null@*/ char * gftp_string_from_utf8 ( gftp_request * request, int force_local, const char *str, size_t *dest_len ); -/*@null@*/ char * gftp_filename_to_utf8 ( gftp_request * request, +/*@null@*/ char * gftp_filename_to_utf8 ( gftp_request * request, const char *str, size_t *dest_len ); -/*@null@*/ char * gftp_filename_from_utf8 ( gftp_request * request, +/*@null@*/ char * gftp_filename_from_utf8 ( gftp_request * request, const char *str, size_t *dest_len ); -/*@null@*/ char * gftp_remote_filename_to_utf8 ( gftp_request * request, +/*@null@*/ char * gftp_remote_filename_to_utf8 ( gftp_request * request, const char *str, size_t *dest_len ); -/*@null@*/ char * gftp_remote_filename_from_utf8 ( gftp_request * request, +/*@null@*/ char * gftp_remote_filename_from_utf8 ( gftp_request * request, const char *str, size_t *dest_len ); /* config_file.c */ -int gftp_config_parse_args ( char *str, - int numargs, - int lineno, - /*@out@*/ char **first, +int gftp_config_parse_args ( char *str, + int numargs, + int lineno, + /*@out@*/ char **first, ... ); void gftp_add_bookmark ( gftp_bookmarks_var * newentry ); @@ -714,32 +708,32 @@ void print_bookmarks ( gftp_bookmarks_var * bookmarks ); -void gftp_lookup_global_option ( const char * key, +void gftp_lookup_global_option ( const char * key, /*@out@*/ void *value ); -void gftp_lookup_request_option ( gftp_request * request, - const char * key, +void gftp_lookup_request_option ( gftp_request * request, + const char * key, /*@out@*/ void *value ); -void gftp_lookup_bookmark_option ( gftp_bookmarks_var * bm, - const char * key, +void gftp_lookup_bookmark_option ( gftp_bookmarks_var * bm, + const char * key, void *value ); -void gftp_set_global_option ( const char * key, +void gftp_set_global_option ( const char * key, const void *value ); -void gftp_set_request_option ( gftp_request * request, - const char * key, +void gftp_set_request_option ( gftp_request * request, + const char * key, const void *value ); void gftp_set_bookmark_option ( gftp_bookmarks_var * bm, - const char * key, + const char * key, const void *value ); void gftp_register_config_vars ( gftp_config_vars *config_vars ); -void gftp_copy_local_options ( gftp_config_vars ** new_options_vars, +void gftp_copy_local_options ( gftp_config_vars ** new_options_vars, GHashTable ** new_options_hash, int *new_num_local_options_vars, gftp_config_vars * orig_options, @@ -756,8 +750,8 @@ GList * gftp_copy_proxy_hosts ( GList * proxy_hosts ); /* misc.c */ -/*@null@*/ char *insert_commas ( off_t number, - char *dest_str, +/*@null@*/ char *insert_commas ( off_t number, + char *dest_str, size_t dest_len ); char *alltrim ( char *str ); @@ -768,7 +762,7 @@ void make_nonnull ( char **str ); int gftp_match_filespec ( gftp_request * request, - const char *filename, + const char *filename, const char *filespec ); int gftp_parse_command_line ( int *argc, @@ -790,8 +784,8 @@ gftp_file * copy_fdata ( gftp_file * fle ); -int compare_request ( gftp_request * request1, - gftp_request * request2, +int compare_request ( gftp_request * request1, + gftp_request * request2, int compare_dirs ); gftp_transfer * gftp_tdata_new ( void ); @@ -800,13 +794,13 @@ gftp_request * gftp_copy_request ( gftp_request * req ); -GList * gftp_sort_filelist ( GList * filelist, - int column, +GList * gftp_sort_filelist ( GList * filelist, + int column, int asds ); char * gftp_gen_ls_string ( gftp_request * request, - gftp_file * fle, - char *file_prefixstr, + gftp_file * fle, + char *file_prefixstr, char *file_suffixstr ); char * base64_encode ( char *str ); @@ -816,8 +810,8 @@ void gftp_shutdown ( void ); -GList * get_next_selection ( GList * selection, - GList ** list, +GList * get_next_selection ( GList * selection, + GList ** list, int *curnum ); char * gftp_build_path ( gftp_request * request, @@ -844,7 +838,7 @@ char **endpos ); int gftp_parse_ls ( gftp_request * request, - const char *lsoutput, + const char *lsoutput, gftp_file *fle, int fd ); @@ -868,8 +862,8 @@ void rfc959_register_module ( void ); -int rfc959_get_next_file ( gftp_request * request, - gftp_file *fle, +int rfc959_get_next_file ( gftp_request * request, + gftp_file *fle, int fd ); int rfc959_connect ( gftp_request * request ); @@ -919,41 +913,41 @@ void gftp_disconnect ( gftp_request * request ); -off_t gftp_get_file ( gftp_request * request, - const char *filename, +off_t gftp_get_file ( gftp_request * request, + const char *filename, off_t startsize ); -int gftp_put_file ( gftp_request * request, - const char *filename, +int gftp_put_file ( gftp_request * request, + const char *filename, off_t startsize, off_t totalsize ); -off_t gftp_transfer_file ( gftp_request *fromreq, - const char *fromfile, - off_t fromsize, - gftp_request *toreq, - const char *tofile, +off_t gftp_transfer_file ( gftp_request *fromreq, + const char *fromfile, + off_t fromsize, + gftp_request *toreq, + const char *tofile, off_t tosize ); -ssize_t gftp_get_next_file_chunk ( gftp_request * request, - char *buf, +ssize_t gftp_get_next_file_chunk ( gftp_request * request, + char *buf, size_t size ); -ssize_t gftp_put_next_file_chunk ( gftp_request * request, - char *buf, +ssize_t gftp_put_next_file_chunk ( gftp_request * request, + char *buf, size_t size ); int gftp_list_files ( gftp_request * request ); -int gftp_parse_bookmark ( gftp_request * request, +int gftp_parse_bookmark ( gftp_request * request, gftp_request * local_request, const char * bookmark, int *refresh_local ); -int gftp_parse_url ( gftp_request * request, +int gftp_parse_url ( gftp_request * request, const char *url ); -int gftp_get_next_file ( gftp_request * request, +int gftp_get_next_file ( gftp_request * request, const char *filespec, gftp_file *fle ); @@ -966,77 +960,77 @@ mode_t * mode, off_t * filesize ); -void gftp_set_hostname ( gftp_request * request, +void gftp_set_hostname ( gftp_request * request, const char *hostname ); void gftp_set_remote_charset (gftp_request * request, const char *remote_charset); -void gftp_set_username ( gftp_request * request, +void gftp_set_username ( gftp_request * request, const char *username ); -void gftp_set_password ( gftp_request * request, +void gftp_set_password ( gftp_request * request, const char *password ); -void gftp_set_account ( gftp_request * request, +void gftp_set_account ( gftp_request * request, const char *account ); -int gftp_set_directory ( gftp_request * request, +int gftp_set_directory ( gftp_request * request, const char *directory ); -void gftp_set_port ( gftp_request * request, +void gftp_set_port ( gftp_request * request, unsigned int port ); -int gftp_remove_directory ( gftp_request * request, +int gftp_remove_directory ( gftp_request * request, const char *directory ); -int gftp_remove_file ( gftp_request * request, +int gftp_remove_file ( gftp_request * request, const char *file ); -int gftp_make_directory ( gftp_request * request, +int gftp_make_directory ( gftp_request * request, const char *directory ); -int gftp_rename_file ( gftp_request * request, - const char *oldname, +int gftp_rename_file ( gftp_request * request, + const char *oldname, const char *newname ); -int gftp_chmod ( gftp_request * request, - const char *file, +int gftp_chmod ( gftp_request * request, + const char *file, mode_t mode ); -int gftp_set_file_time ( gftp_request * request, - const char *file, +int gftp_set_file_time ( gftp_request * request, + const char *file, time_t datetime ); -int gftp_site_cmd ( gftp_request * request, +int gftp_site_cmd ( gftp_request * request, int specify_site, const char *command ); -off_t gftp_get_file_size ( gftp_request * request, +off_t gftp_get_file_size ( gftp_request * request, const char *filename ); -void gftp_calc_kbs ( gftp_transfer * tdata, +void gftp_calc_kbs ( gftp_transfer * tdata, ssize_t num_read ); -int gftp_get_all_subdirs ( gftp_transfer * transfer, - void (*update_func) +int gftp_get_all_subdirs ( gftp_transfer * transfer, + void (*update_func) ( gftp_transfer * transfer )); int gftp_set_config_options ( gftp_request * request ); void print_file_list ( GList * list ); -void gftp_swap_socks ( gftp_request * dest, +void gftp_swap_socks ( gftp_request * dest, gftp_request * source ); -void gftp_calc_kbs ( gftp_transfer * tdata, +void gftp_calc_kbs ( gftp_transfer * tdata, ssize_t num_read ); -int gftp_get_transfer_status ( gftp_transfer * tdata, +int gftp_get_transfer_status ( gftp_transfer * tdata, ssize_t num_read ); -int gftp_fd_open ( gftp_request * request, - const char *pathname, +int gftp_fd_open ( gftp_request * request, + const char *pathname, int flags, mode_t perms ); @@ -1066,14 +1060,14 @@ void gftp_ssl_free ( gftp_request * request ); -ssize_t gftp_ssl_read ( gftp_request * request, - void *ptr, - size_t size, +ssize_t gftp_ssl_read ( gftp_request * request, + void *ptr, + size_t size, int fd ); -ssize_t gftp_ssl_write ( gftp_request * request, - const char *ptr, - size_t size, +ssize_t gftp_ssl_write ( gftp_request * request, + const char *ptr, + size_t size, int fd ); #endif /* USE_SSL */ @@ -1092,7 +1086,7 @@ #endif /* socket-connect.c */ -int gftp_connect_server ( gftp_request * request, +int gftp_connect_server ( gftp_request * request, char *service, char *proxy_hostname, unsigned int proxy_port ); @@ -1121,31 +1115,31 @@ unsigned int proxy_port ); /* sockutils.c */ -ssize_t gftp_get_line ( gftp_request * request, +ssize_t gftp_get_line ( gftp_request * request, /*@out@*/ gftp_getline_buffer ** rbuf, - /*@out@*/ char * str, - size_t len, + /*@out@*/ char * str, + size_t len, int fd ); void gftp_free_getline_buffer ( gftp_getline_buffer ** rbuf ); -ssize_t gftp_fd_read ( gftp_request * request, - void *ptr, - size_t size, +ssize_t gftp_fd_read ( gftp_request * request, + void *ptr, + size_t size, int fd ); -ssize_t gftp_fd_write ( gftp_request * request, - const char *ptr, - size_t size, +ssize_t gftp_fd_write ( gftp_request * request, + const char *ptr, + size_t size, int fd ); -ssize_t gftp_writefmt ( gftp_request * request, - int fd, - const char *fmt, +ssize_t gftp_writefmt ( gftp_request * request, + int fd, + const char *fmt, ... ); -int gftp_fd_set_sockblocking ( gftp_request * request, - int fd, +int gftp_fd_set_sockblocking ( gftp_request * request, + int fd, int non_blocking ); struct servent * r_getservbyname ( const char *name, diff -r 63555c9744c2 -r c99b134c6185 lib/local.c --- a/lib/local.c Fri Aug 14 07:54:55 2009 +0900 +++ b/lib/local.c Mon Feb 01 15:17:58 2010 +0900 @@ -687,7 +687,7 @@ } -void +void local_register_module (void) { } diff -r 63555c9744c2 -r c99b134c6185 lib/protocols.c --- a/lib/protocols.c Fri Aug 14 07:54:55 2009 +0900 +++ b/lib/protocols.c Mon Feb 01 15:17:58 2010 +0900 @@ -150,6 +150,7 @@ } #endif +#if 0 #if GLIB_MAJOR_VERSION > 1 if (request->iconv_from_initialized) { @@ -169,7 +170,7 @@ request->iconv_charset = NULL; } #endif - +#endif request->cached = 0; if (request->disconnect == NULL) return;