[proftpd] Update to 1.3.4c
Paul Howarth
pghmcfc at fedoraproject.org
Thu Mar 7 14:17:07 UTC 2013
commit 744a63dfb6f7fe8defbcec7c2ba2488ffe9a9ffa
Author: Paul Howarth <paul at city-fan.org>
Date: Thu Mar 7 14:16:09 2013 +0000
Update to 1.3.4c
- New upstream release 1.3.4c
- Added Spanish translation
- Fixed several mod_sftp issues, including SFTPPassPhraseProvider,
handling of symlinks for REALPATH requests, and response code logging
- Fixed symlink race for creating directories when UserOwner is in effect
- Increased performance of FTP directory listings
- Drop MySQL password patch, no longer needed
- Drop upstreamed proftpd patch for CVE-2012-6095
- Update patch for bug 3744 to apply against updated proftpd code
.gitignore | 4 +-
proftpd-1.3.4a-bug3747.patch | 193 --------
proftpd-1.3.4b-bug3841.patch | 511 --------------------
...a-bug3744.patch => proftpd-1.3.4c-bug3744.patch | 95 +---
proftpd-1.3.4rc3-mysql-password.patch | 25 -
proftpd.spec | 27 +-
sources | 2 +-
7 files changed, 39 insertions(+), 818 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 70973b1..cb09e98 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,5 @@
-# master/f17/f16
-/proftpd-1.3.4b.tar.gz
+# master/f19/f18/f17
+/proftpd-1.3.4c.tar.gz
/proftpd-mod-geoip-0.3.tar.gz
/proftpd-mod-vroot-0.9.2.tar.gz
/Test-Unit-0.14.tar.gz
diff --git a/proftpd-1.3.4a-bug3744.patch b/proftpd-1.3.4c-bug3744.patch
similarity index 79%
rename from proftpd-1.3.4a-bug3744.patch
rename to proftpd-1.3.4c-bug3744.patch
index dc7ecac..c9079e1 100644
--- a/proftpd-1.3.4a-bug3744.patch
+++ b/proftpd-1.3.4c-bug3744.patch
@@ -1,11 +1,6 @@
-Index: modules/mod_ls.c
-===================================================================
-RCS file: /cvsroot/proftp/proftpd/modules/mod_ls.c,v
-retrieving revision 1.187
-diff -u -r1.187 mod_ls.c
---- modules/mod_ls.c 5 Nov 2011 23:01:58 -0000 1.187
-+++ modules/mod_ls.c 1 Feb 2012 18:57:20 -0000
-@@ -81,6 +81,7 @@
+--- modules/mod_ls.c
++++ modules/mod_ls.c
+@@ -81,6 +81,7 @@ static struct list_limit_rec list_nfiles
/* ls options */
static int
@@ -13,7 +8,7 @@ diff -u -r1.187 mod_ls.c
opt_a = 0,
opt_A = 0,
opt_B = 0,
-@@ -395,7 +396,6 @@
+@@ -419,7 +420,6 @@ static int listfile(cmd_rec *cmd, pool *
p = cmd->tmp_pool;
if (pr_fsio_lstat(name, &st) == 0) {
@@ -21,7 +16,7 @@ diff -u -r1.187 mod_ls.c
char *display_name = NULL;
suffix[0] = suffix[1] = '\0';
-@@ -493,21 +493,24 @@
+@@ -531,21 +531,24 @@ static int listfile(cmd_rec *cmd, pool *
break;
}
@@ -51,7 +46,7 @@ diff -u -r1.187 mod_ls.c
}
if (opt_l) {
-@@ -576,32 +579,38 @@
+@@ -614,32 +617,38 @@ static int listfile(cmd_rec *cmd, pool *
m[2] = (mode & S_IWUSR) ? 'w' : '-';
m[1] = (mode & S_IRUSR) ? 'r' : '-';
@@ -106,7 +101,7 @@ diff -u -r1.187 mod_ls.c
}
nameline[sizeof(nameline)-1] = '\0';
-@@ -611,40 +620,45 @@
+@@ -649,40 +658,45 @@ static int listfile(cmd_rec *cmd, pool *
suffix[0] = '\0';
if (opt_F && pr_fsio_stat(name, &st) == 0) {
@@ -160,7 +155,7 @@ diff -u -r1.187 mod_ls.c
}
}
-@@ -1302,6 +1316,7 @@
+@@ -1340,6 +1354,7 @@ static void parse_list_opts(char **opt,
switch (**opt) {
case '1':
if (strcmp(session.curr_cmd, C_STAT) != 0) {
@@ -168,7 +163,7 @@ diff -u -r1.187 mod_ls.c
opt_l = opt_C = 0;
}
break;
-@@ -1354,6 +1369,7 @@
+@@ -1392,6 +1407,7 @@ static void parse_list_opts(char **opt,
if (strcmp(session.curr_cmd, C_NLST) != 0) {
opt_l = 1;
opt_C = 0;
@@ -176,7 +171,7 @@ diff -u -r1.187 mod_ls.c
}
break;
-@@ -1422,7 +1438,7 @@
+@@ -1460,7 +1476,7 @@ static void parse_list_opts(char **opt,
while ((*opt)++ && isalnum((int) **opt)) {
switch (**opt) {
case '1':
@@ -185,7 +180,7 @@ diff -u -r1.187 mod_ls.c
break;
case 'A':
-@@ -1571,8 +1587,8 @@
+@@ -1609,8 +1625,8 @@ static int dolist(cmd_rec *cmd, const ch
ls_curtime = time(NULL);
if (clearflags) {
@@ -196,19 +191,7 @@ diff -u -r1.187 mod_ls.c
}
if (have_options(cmd, arg)) {
-@@ -1671,8 +1687,10 @@
-
- /* Open data connection */
- if (!opt_STAT) {
-- if (pr_data_open(NULL, "file list", PR_NETIO_IO_WR, 0) < 0)
-+ if (pr_data_open(NULL, "file list", PR_NETIO_IO_WR, 0) < 0) {
- return -1;
-+ }
-+
- session.sf_flags |= SF_ASCII_OVERRIDE;
- }
-
-@@ -1705,7 +1723,6 @@
+@@ -1745,7 +1761,6 @@ static int dolist(cmd_rec *cmd, const ch
skiparg = TRUE;
} else {
@@ -216,7 +199,7 @@ diff -u -r1.187 mod_ls.c
skiparg = FALSE;
if (use_globbing &&
-@@ -1945,6 +1962,10 @@
+@@ -1987,6 +2002,10 @@ static int nlstfile(cmd_rec *cmd, const
return -1;
}
@@ -227,7 +210,7 @@ diff -u -r1.187 mod_ls.c
if (dir_hide_file(file))
return 1;
-@@ -1970,6 +1991,25 @@
+@@ -2012,6 +2031,25 @@ static int nlstfile(cmd_rec *cmd, const
}
#endif /* PR_USE_NLS */
@@ -251,9 +234,9 @@ diff -u -r1.187 mod_ls.c
+ }
+
/* Be sure to flush the output */
- res = sendline(0, "%s\n", pr_fs_encode_path(cmd->tmp_pool, display_name));
+ res = sendline(0, "%s\r\n", pr_fs_encode_path(cmd->tmp_pool, display_name));
if (res < 0)
-@@ -2098,8 +2138,16 @@
+@@ -2140,8 +2178,16 @@ static int nlstdir(cmd_rec *cmd, const c
continue;
if (!curdir) {
@@ -270,9 +253,9 @@ diff -u -r1.187 mod_ls.c
+ pdircat(cmd->tmp_pool, dir, p, NULL));
+ }
- if (sendline(0, "%s\n", str) < 0) {
+ if (sendline(0, "%s\r\n", str) < 0) {
count = -1;
-@@ -2204,26 +2252,32 @@
+@@ -2246,26 +2292,32 @@ MODRET genericlist(cmd_rec *cmd) {
fakeuser = get_param_ptr(CURRENT_CONF, "DirFakeUser", FALSE);
/* Check for a configured "logged in user" DirFakeUser. */
@@ -309,7 +292,7 @@ diff -u -r1.187 mod_ls.c
res = dolist(cmd, pr_fs_decode_path(cmd->tmp_pool, cmd->arg), TRUE);
-@@ -2231,8 +2285,9 @@
+@@ -2273,8 +2325,9 @@ MODRET genericlist(cmd_rec *cmd) {
pr_data_abort(0, 0);
res = -1;
@@ -320,7 +303,7 @@ diff -u -r1.187 mod_ls.c
opt_l = 0;
-@@ -2415,8 +2470,9 @@
+@@ -2457,8 +2510,9 @@ MODRET ls_nlst(cmd_rec *cmd) {
list_nfiles.logged = list_ndirs.logged = list_ndepth.logged = FALSE;
tmp = get_param_ptr(TOPLEVEL_CONF, "ShowSymlinks", FALSE);
@@ -331,7 +314,7 @@ diff -u -r1.187 mod_ls.c
target = cmd->argc == 1 ? "." :
pr_fs_decode_path(cmd->tmp_pool, cmd->arg);
-@@ -2444,8 +2500,8 @@
+@@ -2486,8 +2540,8 @@ MODRET ls_nlst(cmd_rec *cmd) {
}
/* Clear the listing option flags. */
@@ -342,39 +325,3 @@ diff -u -r1.187 mod_ls.c
if (have_options(cmd, target)) {
if (!list_strict_opts) {
-@@ -2602,8 +2658,10 @@
-
- } else {
- if (list_flags & LS_FL_NO_ERROR_IF_ABSENT) {
-- if (pr_data_open(NULL, "file list", PR_NETIO_IO_WR, 0) < 0)
-+ if (pr_data_open(NULL, "file list", PR_NETIO_IO_WR, 0) < 0) {
- return PR_ERROR(cmd);
-+ }
-+
- session.sf_flags |= SF_ASCII_OVERRIDE;
- pr_response_add(R_226, _("Transfer complete"));
- ls_done(cmd);
-@@ -2617,8 +2675,10 @@
-
- } else {
- if (list_flags & LS_FL_NO_ERROR_IF_ABSENT) {
-- if (pr_data_open(NULL, "file list", PR_NETIO_IO_WR, 0) < 0)
-+ if (pr_data_open(NULL, "file list", PR_NETIO_IO_WR, 0) < 0) {
- return PR_ERROR(cmd);
-+ }
-+
- session.sf_flags |= SF_ASCII_OVERRIDE;
- pr_response_add(R_226, _("Transfer complete"));
- ls_done(cmd);
-@@ -2631,8 +2691,10 @@
- }
- }
-
-- if (pr_data_open(NULL, "file list", PR_NETIO_IO_WR, 0) < 0)
-+ if (pr_data_open(NULL, "file list", PR_NETIO_IO_WR, 0) < 0) {
- return PR_ERROR(cmd);
-+ }
-+
- session.sf_flags |= SF_ASCII_OVERRIDE;
-
- /* Iterate through each matching entry */
diff --git a/proftpd.spec b/proftpd.spec
index 1962100..f8697f1 100644
--- a/proftpd.spec
+++ b/proftpd.spec
@@ -41,11 +41,11 @@
%define _hardened_build 1
#global prever rc3
-%global rpmrel 6
+%global rpmrel 1
Summary: Flexible, stable and highly-configurable FTP server
Name: proftpd
-Version: 1.3.4b
+Version: 1.3.4c
Release: %{?prever:0.}%{rpmrel}%{?prever:.%{prever}}%{?dist}
License: GPLv2+
Group: System Environment/Daemons
@@ -62,15 +62,13 @@ Source11: http://www.castaglia.org/proftpd/modules/proftpd-mod-geoip-0.3.tar.gz
# (they are disabled by default); it is not included as part of the built package and should therefore
# not fall foul of the rules against library bundling
Source13: http://search.cpan.org/CPAN/authors/id/C/CL/CLEMBURG/Test-Unit-0.14.tar.gz
-Patch1: proftpd-1.3.4rc3-mysql-password.patch
Patch2: proftpd.conf-no-memcached.patch
Patch4: proftpd-1.3.4rc1-mod_vroot-test.patch
Patch5: proftpd-1.3.4-utf8.patch
Patch14: proftpd-1.3.4a-bug3720.patch
-Patch23: proftpd-1.3.4a-bug3744.patch
+Patch23: proftpd-1.3.4c-bug3744.patch
Patch24: proftpd-1.3.4a-bug3745.patch
Patch25: proftpd-1.3.4a-bug3746.patch
-Patch26: proftpd-1.3.4b-bug3841.patch
Patch27: proftpd-mod-vroot-0.9.2-bug3841.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
Requires(preun): coreutils, findutils
@@ -207,11 +205,6 @@ cp -p mod_geoip/mod_geoip.html doc/contrib/
# Copy default config file into place
cp -p %{SOURCE1} proftpd.conf
-# Use my_make_scrambled_password rather than the deprecated
-# make_scrambled_password, which isn't exported from Fedora's MySQL
-# in F-15 onwards (#718327, upstream bug 3669)
-%patch1 -p1 -b .mypasswd
-
# If we're running the full test suite, include the mod_vroot test
%patch4 -p1 -b .test_vroot
@@ -236,7 +229,6 @@ cp -p %{SOURCE1} proftpd.conf
# Fix possible symlink race when applying UserOwner to newly created directory
# http://bugs.proftpd.org/show_bug.cgi?id=3841
-%patch26
%patch27
# Avoid documentation name conflicts
@@ -535,7 +527,18 @@ fi
%{_mandir}/man1/ftpwho.1*
%changelog
-* Thu Feb 14 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.3.4b-6
+* Thu Mar 7 2013 Paul Howarth <paul at city-fan.org> 1.3.4c-1
+- Update to 1.3.4c
+ - Added Spanish translation
+ - Fixed several mod_sftp issues, including SFTPPassPhraseProvider,
+ handling of symlinks for REALPATH requests, and response code logging
+ - Fixed symlink race for creating directories when UserOwner is in effect
+ - Increased performance of FTP directory listings
+- Drop MySQL password patch, no longer needed
+- Drop upstreamed proftpd patch for CVE-2012-6095
+- Update patch for bug 3744 to apply against updated proftpd code
+
+* Thu Feb 14 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> 1.3.4b-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Wed Jan 16 2013 Paul Howarth <paul at city-fan.org> 1.3.4b-5
diff --git a/sources b/sources
index a419287..c65bd46 100644
--- a/sources
+++ b/sources
@@ -1,4 +1,4 @@
-0871e0b93c9c3c88ca950b6d9a04aed2 proftpd-1.3.4b.tar.gz
+65f61e953bea249f8377e681594143a5 proftpd-1.3.4c.tar.gz
cc0e479406436e474ca7d59994fa73bb proftpd-mod-geoip-0.3.tar.gz
6db495b25e9da2ba0c901e7c44e119bc proftpd-mod-vroot-0.9.2.tar.gz
ad574713bcd00f62883ff2f9a84eec1f Test-Unit-0.14.tar.gz
More information about the scm-commits
mailing list