Hi,

When selecting without-ssl during configuration the compilation breaks.
Please find attached the patch with the fix.

Best Regards,
Ygal Blum
From 1cb3af1e5b392ac2fae6d9ed8b5d7be399d9f37e Mon Sep 17 00:00:00 2001
From: Ygal Blum <ygal.b...@technicolor.com>
Date: Tue, 24 Nov 2015 11:24:54 +0200
Subject: [PATCH] Fix compilation when without-ssl is selected

---
 src/ftp.c   |  2 ++
 src/main.c  | 12 ++++++++++--
 src/recur.c |  6 +++++-
 src/retr.c  | 18 +++++++++++++++---
 src/url.c   |  6 +++++-
 5 files changed, 37 insertions(+), 7 deletions(-)

diff --git a/src/ftp.c b/src/ftp.c
index 80420ef..5394b71 100644
--- a/src/ftp.c
+++ b/src/ftp.c
@@ -393,7 +393,9 @@ getftp (struct url *u, wgint passed_expected_bytes, wgint *qtyread,
   if (!(cmd & DO_LOGIN))
     {
       csock = con->csock;
+#ifdef HAVE_SSL
       using_data_security = con->st & DATA_CHANNEL_SECURITY;
+#endif
     }
   else                          /* cmd & DO_LOGIN */
     {
diff --git a/src/main.c b/src/main.c
index 61a157a..4641008 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1842,13 +1842,21 @@ only if outputting to a regular file.\n"));
       else
         {
           if ((opt.recursive || opt.page_requisites)
-              && ((url_scheme (*t) != SCHEME_FTP && url_scheme (*t) != SCHEME_FTPS)
+              && ((url_scheme (*t) != SCHEME_FTP
+#ifdef HAVE_SSL
+              && url_scheme (*t) != SCHEME_FTPS
+#endif
+              )
                   || url_uses_proxy (url_parsed)))
             {
               int old_follow_ftp = opt.follow_ftp;
 
               /* Turn opt.follow_ftp on in case of recursive FTP retrieval */
-              if (url_scheme (*t) == SCHEME_FTP || url_scheme (*t) == SCHEME_FTPS)
+              if (url_scheme (*t) == SCHEME_FTP
+#ifdef HAVE_SSL
+                  || url_scheme (*t) == SCHEME_FTPS
+#endif
+                  )
                 opt.follow_ftp = 1;
 
               retrieve_tree (url_parsed, NULL);
diff --git a/src/recur.c b/src/recur.c
index 25cdbb7..b212ec6 100644
--- a/src/recur.c
+++ b/src/recur.c
@@ -610,7 +610,11 @@ download_child (const struct urlpos *upos, struct url *parent, int depth,
   u_scheme_like_http = schemes_are_similar_p (u->scheme, SCHEME_HTTP);
 
   /* 1. Schemes other than HTTP are normally not recursed into. */
-  if (!u_scheme_like_http && !((u->scheme == SCHEME_FTP || u->scheme == SCHEME_FTPS) && opt.follow_ftp))
+  if (!u_scheme_like_http && !((u->scheme == SCHEME_FTP
+#ifdef HAVE_SSL
+      || u->scheme == SCHEME_FTPS
+#endif
+      ) && opt.follow_ftp))
     {
       DEBUGP (("Not following non-HTTP schemes.\n"));
       reason = WG_RR_NONHTTP;
diff --git a/src/retr.c b/src/retr.c
index 318b09c..a6a9bd7 100644
--- a/src/retr.c
+++ b/src/retr.c
@@ -837,7 +837,11 @@ retrieve_url (struct url * orig_parsed, const char *origurl, char **file,
          FTP.  In these cases we must decide whether the text is HTML
          according to the suffix.  The HTML suffixes are `.html',
          `.htm' and a few others, case-insensitive.  */
-      if (redirection_count && local_file && (u->scheme == SCHEME_FTP || u->scheme == SCHEME_FTPS))
+      if (redirection_count && local_file && (u->scheme == SCHEME_FTP
+#ifdef HAVE_SSL
+          || u->scheme == SCHEME_FTPS
+#endif
+          ))
         {
           if (has_html_suffix_p (local_file))
             *dt |= TEXTHTML;
@@ -1099,12 +1103,20 @@ retrieve_from_file (const char *file, bool html, int *count)
 
       proxy = getproxy (cur_url->url);
       if ((opt.recursive || opt.page_requisites)
-          && ((cur_url->url->scheme != SCHEME_FTP && cur_url->url->scheme != SCHEME_FTPS) || proxy))
+          && ((cur_url->url->scheme != SCHEME_FTP
+#ifdef HAVE_SSL
+          && cur_url->url->scheme != SCHEME_FTPS
+#endif
+          ) || proxy))
         {
           int old_follow_ftp = opt.follow_ftp;
 
           /* Turn opt.follow_ftp on in case of recursive FTP retrieval */
-          if (cur_url->url->scheme == SCHEME_FTP || cur_url->url->scheme == SCHEME_FTPS)
+          if (cur_url->url->scheme == SCHEME_FTP
+#ifdef HAVE_SSL
+              || cur_url->url->scheme == SCHEME_FTPS
+#endif
+              )
             opt.follow_ftp = 1;
 
           status = retrieve_tree (parsed_url ? parsed_url : cur_url->url,
diff --git a/src/url.c b/src/url.c
index 56079cd..c62867f 100644
--- a/src/url.c
+++ b/src/url.c
@@ -1787,7 +1787,11 @@ path_simplify (enum url_scheme scheme, char *path)
               for (--t; t > beg && t[-1] != '/'; t--)
                 ;
             }
-          else if (scheme == SCHEME_FTP || scheme == SCHEME_FTPS)
+          else if (scheme == SCHEME_FTP
+#ifdef HAVE_SSL
+              || scheme == SCHEME_FTPS
+#endif
+              )
             {
               /* If we're at the beginning, copy the "../" literally
                  and move the beginning so a later ".." doesn't remove
-- 
1.9.1

Reply via email to