From c9e1fd9567071050e673552088265963fbca9930 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Fri, 26 Oct 2001 17:15:17 +0000 Subject: 16176: Src/Modules/tcp.c, Src/Modules/zftp.c: after fdclose(), TCP control fd is no longer valid, but we still need to remove the session cleanly. --- Src/Modules/zftp.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'Src/Modules/zftp.c') diff --git a/Src/Modules/zftp.c b/Src/Modules/zftp.c index 8dda5f1a8..9408c7a1f 100644 --- a/Src/Modules/zftp.c +++ b/Src/Modules/zftp.c @@ -2679,6 +2679,13 @@ zfclose(int leaveparams) } if (zfsess->cin) { fclose(zfsess->cin); + /* + * We fdopen'd the TCP control fd; since we can't fdclose it, + * we need to perform a full fclose, which invalidates the + * TCP fd. + */ + if (fileno(zfsess->cin) == zfsess->control->fd) + zfsess->control->fd = -1; zfsess->cin = NULL; } if (zfsess->control) { -- cgit 1.4.1