feature: for cmd size is switching to TYPE_I automatized bug: ftp leaks

socket fds when it fails to open a file (#315241)
This commit is contained in:
Marcela Mašláňová 2007-10-22 08:11:17 +00:00
parent ba70335a13
commit 5c72344e72
3 changed files with 33 additions and 1 deletions

View File

@ -1,7 +1,7 @@
Summary: The standard UNIX FTP (File Transfer Protocol) client
Name: ftp
Version: 0.17
Release: 42%{?dist}
Release: 43%{?dist}
License: BSD with advertising
Group: Applications/Internet
Source0: ftp://ftp.uk.linux.org/pub/linux/Networking/netkit/netkit-ftp-%{version}.tar.gz
@ -24,6 +24,8 @@ Patch15: netkit-ftp-0.17-multiipv6.patch
Patch16: netkit-ftp-0.17-nodebug.patch
Patch17: netkit-ftp-0.17-stamp.patch
Patch18: netkit-ftp-0.17-sigseg.patch
Patch19: netkit-ftp-0.17-size.patch
Patch20: netkit-ftp-0.17-fdleak.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: glibc-devel, readline-devel, ncurses-devel
@ -56,6 +58,8 @@ file transfers.
%patch16 -p1 -b .nodebug
%patch17 -p1 -b .stamp
%patch18 -p1 -b .sigseg
%patch19 -p1 -b .size
%patch20 -p1 -b .fdleak
%build
sh configure --with-c-compiler=gcc --enable-ipv6
@ -89,6 +93,11 @@ rm -rf ${RPM_BUILD_ROOT}
%{_mandir}/man5/netrc.*
%changelog
* Mon Oct 22 2007 Marcela Maslanova <mmaslano@redhat.com> - 0.17-43
- feature: for cmd size is switching to TYPE_I automatized
- bug: ftp leaks socket fds when it fails to open a file (#315241)
- rhbz#306191
* Fri Aug 24 2007 Marcela Maslanova <mmaslano@redhat.com> - 0.17-42
- rebuilt (for mass rebuild)
- license tag checked

View File

@ -0,0 +1,11 @@
diff -up netkit-ftp-0.17/ftp/cmds.c.old netkit-ftp-0.17/ftp/cmds.c
--- netkit-ftp-0.17/ftp/cmds.c.old 2007-10-17 16:28:57.000000000 +0200
+++ netkit-ftp-0.17/ftp/cmds.c 2007-10-17 16:33:41.000000000 +0200
@@ -764,6 +764,7 @@ usage:
recvrequest("RETR", argv[2], argv[1], modestr,
argv[1] != oldargv1 || argv[2] != oldargv2);
+ (void) close(data), data = -1;
restart_point = 0;
return (0);
}

View File

@ -0,0 +1,12 @@
diff -up netkit-ftp-0.17/ftp/cmds.c.size netkit-ftp-0.17/ftp/cmds.c
--- netkit-ftp-0.17/ftp/cmds.c.size 2007-10-10 14:17:18.000000000 +0200
+++ netkit-ftp-0.17/ftp/cmds.c 2007-10-10 14:17:18.000000000 +0200
@@ -1650,6 +1650,8 @@ quote1(const char *initial, int argc, ch
register int i, len;
char buf[BUFSIZ]; /* must be >= sizeof(line) */
+ if (strncmp(argv[1],"size",4) == 0)
+ changetype(TYPE_I, 1);
(void) strcpy(buf, initial);
if (argc > 1) {
len = strlen(buf);