# HG changeset patch # User masneyb # Date 1055246634 0 # Node ID aec4b4541d3aeb259efbebe78acebeb160a1dac2 # Parent 4e4de2e87241b0266da6a191fc37a10c4c30adf5 2003-6-9 Brian Masney * lib/bookmark.c lib/gftp.h lib/local.c lib/protocols.c lib/rfc2068.c lib/rfc959.c lib/sshv2.c - make return value of *_set_config_options() be an integer * lib/rfc2068.c lib/rfc959.c - return the error code of gftp_connect_server() if there was a connection problem diff -r 4e4de2e87241 -r aec4b4541d3a ChangeLog --- a/ChangeLog Mon Jun 09 23:16:53 2003 +0000 +++ b/ChangeLog Tue Jun 10 12:03:54 2003 +0000 @@ -1,3 +1,15 @@ +2003-6-9 Brian Masney + * lib/bookmark.c lib/gftp.h lib/local.c lib/protocols.c lib/rfc2068.c + lib/rfc959.c lib/sshv2.c - make return value of *_set_config_options() + be an integer + + * lib/rfc2068.c lib/rfc959.c - return the error code of + gftp_connect_server() if there was a connection problem + +2003-6-8 Brian Masney + * lib/rfc959.c lib/rfc2068.c - if gftp_connect_server() returns an + error, make sure the exact error code is returned + 2003-6-8 Brian Masney * lib/sslcommon.c - added entropy_len option. Added gftp_ssl_get_index(). Use SSL_get_ex_data() so that we can get the @@ -938,7 +950,7 @@ * cvsclean - added this script - * *.[ch] - added $Id: ChangeLog,v 1.85 2003/06/09 02:03:36 masneyb Exp $ tags + * *.[ch] - added $Id: ChangeLog,v 1.86 2003/06/10 12:03:53 masneyb Exp $ tags * debian/* - updated files from Debian maintainer diff -r 4e4de2e87241 -r aec4b4541d3a lib/bookmark.c --- a/lib/bookmark.c Mon Jun 09 23:16:53 2003 +0000 +++ b/lib/bookmark.c Tue Jun 10 12:03:54 2003 +0000 @@ -89,8 +89,7 @@ request->use_threads = 0; request->use_cache = 0; request->always_connected = 0; - gftp_set_config_options (request); - return (0); + return (gftp_set_config_options (request)); } diff -r 4e4de2e87241 -r aec4b4541d3a lib/gftp.h --- a/lib/gftp.h Mon Jun 09 23:16:53 2003 +0000 +++ b/lib/gftp.h Tue Jun 10 12:03:54 2003 +0000 @@ -403,7 +403,7 @@ const char *filename ); int (*parse_url) ( gftp_request * request, const char *url ); - void (*set_config_options) ( gftp_request * request ); + int (*set_config_options) ( gftp_request * request ); void (*swap_socks) ( gftp_request * dest, gftp_request * source ); @@ -831,7 +831,7 @@ struct servent *result_buf, int *h_errnop ); -void gftp_set_config_options ( gftp_request * request ); +int gftp_set_config_options ( gftp_request * request ); void print_file_list ( GList * list ); diff -r 4e4de2e87241 -r aec4b4541d3a lib/local.c --- a/lib/local.c Mon Jun 09 23:16:53 2003 +0000 +++ b/lib/local.c Tue Jun 10 12:03:54 2003 +0000 @@ -679,7 +679,6 @@ request->use_cache = 0; request->use_threads = 0; request->always_connected = 1; - gftp_set_config_options (request); lpd = g_malloc0 (sizeof (*lpd)); request->protocol_data = lpd; @@ -690,6 +689,6 @@ g_free (request->hostname); request->hostname = g_strdup (_("local filesystem")); - return (0); + return (gftp_set_config_options (request)); } diff -r 4e4de2e87241 -r aec4b4541d3a lib/protocols.c --- a/lib/protocols.c Mon Jun 09 23:16:53 2003 +0000 +++ b/lib/protocols.c Tue Jun 10 12:03:54 2003 +0000 @@ -104,12 +104,15 @@ int gftp_connect (gftp_request * request) { + int ret; + g_return_val_if_fail (request != NULL, GFTP_EFATAL); if (request->connect == NULL) return (GFTP_EFATAL); - gftp_set_config_options (request); + if ((ret = gftp_set_config_options (request)) < 0) + return (ret); return (request->connect (request)); } @@ -1804,11 +1807,13 @@ } -void +int gftp_set_config_options (gftp_request * request) { if (request->set_config_options != NULL) - request->set_config_options (request); + return (request->set_config_options (request)); + else + return (0); } diff -r 4e4de2e87241 -r aec4b4541d3a lib/rfc2068.c --- a/lib/rfc2068.c Mon Jun 09 23:16:53 2003 +0000 +++ b/lib/rfc2068.c Tue Jun 10 12:03:54 2003 +0000 @@ -192,7 +192,7 @@ { char *proxy_hostname, *proxy_config; rfc2068_params * params; - int proxy_port; + int proxy_port, ret; g_return_val_if_fail (request != NULL, GFTP_EFATAL); g_return_val_if_fail (request->protonum == GFTP_HTTP_NUM, GFTP_EFATAL); @@ -213,9 +213,9 @@ request->url_prefix = g_strdup ("ftp"); } - if (gftp_connect_server (request, request->url_prefix, proxy_hostname, - proxy_port) < 0) - return (GFTP_ERETRYABLE); + if ((ret = gftp_connect_server (request, request->url_prefix, proxy_hostname, + proxy_port)) < 0) + return (ret); if (request->directory && *request->directory == '\0') { @@ -657,9 +657,10 @@ } -static void +static int rfc2068_set_config_options (gftp_request * request) { + return (0); } @@ -812,8 +813,6 @@ params = request->protocol_data; params->real_read_function = gftp_fd_read; - gftp_set_config_options (request); - - return (0); + return (gftp_set_config_options (request)); } diff -r 4e4de2e87241 -r aec4b4541d3a lib/rfc959.c --- a/lib/rfc959.c Mon Jun 09 23:16:53 2003 +0000 +++ b/lib/rfc959.c Tue Jun 10 12:03:54 2003 +0000 @@ -436,8 +436,8 @@ else if (strcasecmp (request->username, "anonymous") == 0) gftp_set_password (request, email); - if (gftp_connect_server (request, "ftp", proxy_hostname, proxy_port) < 0) - return (request->datafd); + if ((ret = gftp_connect_server (request, "ftp", proxy_hostname, proxy_port)) < 0) + return (ret); /* Get the banner */ if ((ret = rfc959_read_response (request)) != '2') @@ -1590,18 +1590,22 @@ } -static void +static int rfc959_set_config_options (gftp_request * request) { char *proxy_config; + int ret; gftp_lookup_request_option (request, "proxy_config", &proxy_config); if (strcmp (proxy_config, "http") == 0) { - gftp_protocols[GFTP_HTTP_NUM].init (request); /* FIXME - check return value */ + if ((ret = gftp_protocols[GFTP_HTTP_NUM].init (request)) < 0) + return (ret); gftp_set_request_option (request, "proxy_config", "ftp"); } + + return (0); } @@ -1679,8 +1683,6 @@ parms = request->protocol_data; parms->data_connection = -1; - gftp_set_config_options (request); - - return (0); + return (gftp_set_config_options (request)); } diff -r 4e4de2e87241 -r aec4b4541d3a lib/sshv2.c --- a/lib/sshv2.c Mon Jun 09 23:16:53 2003 +0000 +++ b/lib/sshv2.c Tue Jun 10 12:03:54 2003 +0000 @@ -2217,13 +2217,14 @@ } -static void +static int sshv2_set_config_options (gftp_request * request) { int ssh_need_userpass; gftp_lookup_request_option (request, "ssh_need_userpass", &ssh_need_userpass); request->need_userpass = ssh_need_userpass; + return (0); } @@ -2289,11 +2290,10 @@ request->always_connected = 0; request->protocol_data = g_malloc0 (sizeof (sshv2_params)); request->server_type = GFTP_DIRTYPE_UNIX; - gftp_set_config_options (request); params = request->protocol_data; params->id = 1; - return (0); + return (gftp_set_config_options (request)); }