Mercurial > gftp.yaz
diff lib/https.c @ 173:4c288d05b26a
2003-6-8 Brian Masney <masneyb@gftp.org>
* lib/bookmark.c lib/gftp.h lib/https.c lib/local.c lib/misc.c
lib/protocols.c lib/rfc2068.c lib/rfc959.c lib/sshv2.c
src/text/gftp-text.c src/gtk/gftp-gtk.c - made the init function for
all the protocols return an integer instead of nothing. If there was an
error setting up the protocol, GFTP_EFATAL should be returned and the
connection should be aborted. The HTTPS protocol uses this to return if
SSL support was not compiled in
* lib/protocols.c src/text/gftp-text.c src/gtk/dnd.c
src/gtk/gftp-gtk.c src/gtk/menu-items.c - have gftp_parse_url() log the
error messages to the user. This shouldn't have been done in the
individual ports
* lib/https.c - only initialize the SSL engine the first time a SSL
connection is made.
| author | masneyb |
|---|---|
| date | Mon, 09 Jun 2003 00:53:20 +0000 |
| parents | d40f9db52cdf |
| children | e643d287fe32 |
line wrap: on
line diff
--- a/lib/https.c Sun Jun 08 22:31:07 2003 +0000 +++ b/lib/https.c Mon Jun 09 00:53:20 2003 +0000 @@ -54,21 +54,21 @@ void https_register_module (void) { -#ifdef USE_SSL - gftp_ssl_startup (NULL); /* FIXME - take out of here */ -#endif } -void +int https_init (gftp_request * request) { #ifdef USE_SSL rfc2068_params * params; + int ret; - g_return_if_fail (request != NULL); + g_return_val_if_fail (request != NULL, GFTP_EFATAL); - gftp_protocols[GFTP_HTTP_NUM].init (request); + if ((ret = gftp_protocols[GFTP_HTTP_NUM].init (request)) < 0) + return (ret); + params = request->protocol_data; request->init = https_init; request->post_connect = gftp_ssl_session_setup; @@ -76,11 +76,16 @@ request->write_function = gftp_ssl_write; request->get_next_file = https_get_next_file; request->url_prefix = g_strdup ("https"); -#else - gftp_protocols[GFTP_HTTP_NUM].init (request); + + if ((ret = gftp_ssl_startup (NULL)) < 0) + return (ret); + return (0); +#else request->logging_function (gftp_logging_error, request->user_data, - _("HTTPS Support unavailable since SSL support was not compiled in. Reverting back to plaintext\n")); + _("HTTPS Support unavailable since SSL support was not compiled in. Aborting connection.\n")); + + return (GFTP_EFATAL); #endif }
