Package: netkit-ftp / 0.17-27
Metadata
Package | Version | Patches format |
---|---|---|
netkit-ftp | 0.17-27 | 3.0 (quilt) |
Patch series
view the series filePatch | File delta | Description |
---|---|---|
010_patches_in_sarge.diff | (download) |
ftp/Makefile |
2 1 + 1 - 0 ! |
source patches applied to release sarge. Multiple patches. |
020_optional_stripping.diff | (download) |
ftp/Makefile |
2 1 + 1 - 0 ! |
hard coded stripping behaviour. Remove explicit stripping from makefile target. X-Closes: #437615 |
025_long_cmd_overflow.diff | (download) |
ftp/main.c |
16 15 + 1 - 0 ! |
buffer overflow caused by long commands. Allocate a sufficient amount of memory to handle many arguments. X-Closes: #391207, #407924 |
030_argv_handling.diff | (download) |
ftp/main.c |
30 14 + 16 - 0 ! |
multiple flaws in ftp/main.c. There are several flaws in the current code of the makeargv function in ftp/main.c. It certainly errs, but not on the side of caution. . 1. The 'count' variable is supposed to count the number of arguments on the command line. In fact it counts the number of arguments less one, so malloc is often called with an argument of zero. . 2. The argument to malloc is completely wrong. Space needs to be reserved for a certain number of pointers; the length of the command line string is irrelevant. . 3. The slurpstring parsing function accepts both space and tab as delimiters. The 'count' variable is calculated assuming spaces only. . 4. It appears to me that the memory allocated for rargv is never freed, leading to a memory leak. I may be wrong about this, and I do not know the code well enough to suggest where the free should take place if it does not happen already. My patch does not address this. . Attempting to count parameters in advance is not the best solution in my opinion. It is duplicating part of the effort of slurpstring. My preference would have been to allocate memory for 20 pointers, as in the original code, then realloc() for a larger size if more than 20 parameters are returned from slurpstring. X-Closes: Closes #508378, #505533, #510009 |
035_lintian_pedantic.diff | (download) |
ftp/cmds.c |
2 1 + 1 - 0 ! |
pedantic complaits by lintian. Spelling in ftp/ftp.1 and ftp/cmds.c. . Incorrect use of hyphenation in ftp/ftp.1. |
040_ipv6_ftp_c.diff | (download) |
ftp/ftp.c |
320 236 + 84 - 0 ! |
impose ipv6-capacities on ftp.c. Super structure 'struct sockaddr_storage' is replacing 'struct sockaddr_in' . For peer address strings, a first try aims at IPv4. That failing, next try is for IPv6, and ultimatively a host lookup follows as last resort. . Use a SIGALRM mechanism to decrease the default TCP handshake timeout to a value better suited for interactive use. The macro can be set externally to change the suggested FTP_CONNECT_TIMEOUT=10 . Use a command EPSV with explicit request for IPv6 address family as soon as parsing concluded that the control socket is using IPv6. . Make IP_TOS conditioned on AF_INET. |
041_user_address_commands.diff | (download) |
ftp/cmds.c |
36 36 + 0 - 0 ! |
improve user interface with address family selection. Implement command line options for selecting IPv4 or IPv6. . Implement runtime command 'ipany', 'ipv4', and 'ipv6'. These allow repeatedly new selection of addressing mode. |
043_tune_non_autologin.diff | (download) |
ftp/cmds.c |
5 3 + 2 - 0 ! |
only use implicit syst with auto-login. Not every server, nor every ftp-proxy server, is able to reply to a SYST command before the user has logged in. . Do not execute 'dosyst()' in a situation where the user has asked for overriding auto-login. In other words, execute both of 'dologin()' and 'dosyst()', or execute none of them, depending on AUTOLOGIN. Bug-Debian: http://bugs.debian.org/611284 |
050_support_gnu_hurd.diff | (download) |
ftp/cmds.c |
10 5 + 5 - 0 ! |
support gnu/hurd Add fall-back macro definitions for PATH_MAX, MAXPATHLEN, and MAXHOSTNAMELEN, all of which are not specified by POSIX, hence are legally missing for GNU/Hurd. . Replace a few uses of these macros by "sizeof()", in order to improve robustness of their value. Since PATH_MAX and MAXPATHLEN are implicitly assumed to be equal. |
052_no_termcap_linking.diff | (download) |
configure |
114 57 + 57 - 0 ! |
remove explicit termcap linking. Present day libreadline includes all needed linking with libtinfo, so no explicit linking either with libncurses or libtermcap is needed. |
060_full_offset_range.diff | (download) |
ftp/ftp.c |
11 6 + 5 - 0 ! |
use full offset range. On 32-bit systems, the coding of offset values as `off_t', i.e., of 64 bit length, was incomplete. Replacing fseek() with fseeko() achieves the intended offset ranges. Bug-Debian: http://bugs.debian.org/671873 |