Blob Blame History Raw
--- netkit-ftp-0.17/ftp/ftp.c.data	2005-12-02 15:31:27.000000000 +0100
+++ netkit-ftp-0.17/ftp/ftp.c	2005-12-02 15:35:46.000000000 +0100
@@ -1223,6 +1223,7 @@
 static int
 initconn(void)
 {
+	int rc;
 	u_char *p, *a;
 	int result, tmpno = 0;
 	socklen_t len;
@@ -1240,6 +1241,13 @@
 	}
 #endif
 	if (passivemode) {
+		if (data >= 0){
+			rc = close (data);
+			data = -1;
+			if (rc == -1){
+				perror ("ftp: close");
+			}
+		}
 		data_addr = hisctladdr;
 		data = socket(data_addr.su_family, SOCK_STREAM, 0);
 		if (data < 0) {