--- 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) {