summaryrefslogtreecommitdiff
path: root/libftpconn/open.c
diff options
context:
space:
mode:
Diffstat (limited to 'libftpconn/open.c')
-rw-r--r--libftpconn/open.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/libftpconn/open.c b/libftpconn/open.c
index c3153669..d8a0a09a 100644
--- a/libftpconn/open.c
+++ b/libftpconn/open.c
@@ -216,12 +216,16 @@ ftp_conn_open (struct ftp_conn *conn)
if (! err)
/* Make any machine-dependent customizations. */
- err = ftp_conn_sysify (conn);
+ ftp_conn_sysify (conn);
if (! err)
/* login */
err = ftp_conn_login (conn);
+ if (!err && !conn->syshooks_valid)
+ /* Try again now. */
+ ftp_conn_sysify (conn);
+
if (!err && conn->type)
/* Set the connection type. */
{