From 279fbd01d2494b5550b91441a99275d48733d07b Mon Sep 17 00:00:00 2001 From: Matthias Saou Date: Dec 17 2007 14:44:38 +0000 Subject: Minor pending changes and rebuild for new openssl. --- diff --git a/proftpd-1.3.1-find-umode_t.patch b/proftpd-1.3.1-find-umode_t.patch new file mode 100644 index 0000000..d54bbfe --- /dev/null +++ b/proftpd-1.3.1-find-umode_t.patch @@ -0,0 +1,191 @@ +--- proftpd-1.3.1/configure.in 2007-05-22 21:54:09.000000000 +0100 ++++ proftpd-1.3.1/configure.in 2007-12-10 15:33:27.000000000 +0000 +@@ -1067,6 +1067,7 @@ + AC_CHECK_HEADERS(regex.h) + AC_CHECK_HEADER(syslog.h,have_syslog_h="yes",) + AC_CHECK_HEADERS(curses.h ncurses.h) ++AC_CHECK_HEADERS(signal.h) + + dnl Check for the presence of the tzname, timezone, and daylight global + dnl variables. +--- proftpd-1.3.1/configure 2007-05-22 22:01:32.000000000 +0100 ++++ proftpd-1.3.1/configure 2007-12-10 16:07:30.000000000 +0000 +@@ -26922,6 +26922,155 @@ + done + + ++for ac_header in signal.h ++do ++as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` ++if eval "test \"\${$as_ac_Header+set}\" = set"; then ++ echo "$as_me:$LINENO: checking for $ac_header" >&5 ++echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 ++if eval "test \"\${$as_ac_Header+set}\" = set"; then ++ echo $ECHO_N "(cached) $ECHO_C" >&6 ++fi ++echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 ++echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 ++else ++ # Is the header compilable? ++echo "$as_me:$LINENO: checking $ac_header usability" >&5 ++echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 ++cat >conftest.$ac_ext <<_ACEOF ++/* confdefs.h. */ ++_ACEOF ++cat confdefs.h >>conftest.$ac_ext ++cat >>conftest.$ac_ext <<_ACEOF ++/* end confdefs.h. */ ++$ac_includes_default ++#include <$ac_header> ++_ACEOF ++rm -f conftest.$ac_objext ++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ++ (eval $ac_compile) 2>conftest.er1 ++ ac_status=$? ++ grep -v '^ *+' conftest.er1 >conftest.err ++ rm -f conftest.er1 ++ cat conftest.err >&5 ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); } && ++ { ac_try='test -z "$ac_c_werror_flag" ++ || test ! -s conftest.err' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; } && ++ { ac_try='test -s conftest.$ac_objext' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; }; then ++ ac_header_compiler=yes ++else ++ echo "$as_me: failed program was:" >&5 ++sed 's/^/| /' conftest.$ac_ext >&5 ++ ++ac_header_compiler=no ++fi ++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ++echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 ++echo "${ECHO_T}$ac_header_compiler" >&6 ++ ++# Is the header present? ++echo "$as_me:$LINENO: checking $ac_header presence" >&5 ++echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 ++cat >conftest.$ac_ext <<_ACEOF ++/* confdefs.h. */ ++_ACEOF ++cat confdefs.h >>conftest.$ac_ext ++cat >>conftest.$ac_ext <<_ACEOF ++/* end confdefs.h. */ ++#include <$ac_header> ++_ACEOF ++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 ++ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ++ ac_status=$? ++ grep -v '^ *+' conftest.er1 >conftest.err ++ rm -f conftest.er1 ++ cat conftest.err >&5 ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); } >/dev/null; then ++ if test -s conftest.err; then ++ ac_cpp_err=$ac_c_preproc_warn_flag ++ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag ++ else ++ ac_cpp_err= ++ fi ++else ++ ac_cpp_err=yes ++fi ++if test -z "$ac_cpp_err"; then ++ ac_header_preproc=yes ++else ++ echo "$as_me: failed program was:" >&5 ++sed 's/^/| /' conftest.$ac_ext >&5 ++ ++ ac_header_preproc=no ++fi ++rm -f conftest.err conftest.$ac_ext ++echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 ++echo "${ECHO_T}$ac_header_preproc" >&6 ++ ++# So? What about this header? ++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in ++ yes:no: ) ++ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 ++echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} ++ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 ++echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ++ ac_header_preproc=yes ++ ;; ++ no:yes:* ) ++ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 ++echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} ++ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 ++echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} ++ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 ++echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} ++ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 ++echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} ++ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 ++echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} ++ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 ++echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ++ ( ++ cat <<\_ASBOX ++## ------------------------------------------ ## ++## Report this to the AC_PACKAGE_NAME lists. ## ++## ------------------------------------------ ## ++_ASBOX ++ ) | ++ sed "s/^/$as_me: WARNING: /" >&2 ++ ;; ++esac ++echo "$as_me:$LINENO: checking for $ac_header" >&5 ++echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 ++if eval "test \"\${$as_ac_Header+set}\" = set"; then ++ echo $ECHO_N "(cached) $ECHO_C" >&6 ++else ++ eval "$as_ac_Header=\$ac_header_preproc" ++fi ++echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 ++echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 ++ ++fi ++if test `eval echo '${'$as_ac_Header'}'` = yes; then ++ cat >>confdefs.h <<_ACEOF ++#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 ++_ACEOF ++ ++fi ++ ++done ++ + echo "$as_me:$LINENO: checking for tzname global variable" >&5 + echo $ECHO_N "checking for tzname global variable... $ECHO_C" >&6 + cat >conftest.$ac_ext <<_ACEOF +@@ -30643,6 +30792,9 @@ + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ + $ac_includes_default ++#if HAVE_SIGNAL_H ++#include ++#endif + int + main () + { +--- proftpd-1.3.1/include/conf.h 2007-01-18 02:48:32.000000000 +0000 ++++ proftpd-1.3.1/include/conf.h 2007-12-10 15:34:29.000000000 +0000 +@@ -71,6 +71,10 @@ + # include + #endif + ++#ifdef HAVE_SIGNAL_H ++# include ++#endif ++ + #ifdef HAVE_LIMITS_H + # include + #endif diff --git a/proftpd-mod_quotatab_ldap.ldif b/proftpd-mod_quotatab_ldap.ldif new file mode 100644 index 0000000..70e7bab --- /dev/null +++ b/proftpd-mod_quotatab_ldap.ldif @@ -0,0 +1,29 @@ +# +################################################################################ +# +dn: cn=schema +# +################################################################################ +# +attributeTypes: ( + 1.3.6.1.4.1.17852.2.1.2.1.1 + NAME 'ftpQuota' + DESC 'Quota definition for proftpd mod_quotatab_ldap' + EQUALITY caseExactMatch + SUBSTR caseExactSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} + ) +# +################################################################################ +# +objectClasses: ( + 1.3.6.1.4.1.17852.2.1.2.2.1 + NAME 'proFTPDQuota' + DESC 'Quota object for proftpd mod_quotatab_ldap' + SUP top + AUXILIARY + MAY ( ftpQuota ) + ) +# +################################################################################ +# diff --git a/proftpd-mod_quotatab_ldap.schema b/proftpd-mod_quotatab_ldap.schema new file mode 100644 index 0000000..0b441bc --- /dev/null +++ b/proftpd-mod_quotatab_ldap.schema @@ -0,0 +1,9 @@ +attributetype ( 1.3.6.1.4.1.17852.2.1.2.1.1 NAME 'ftpQuota' + DESC 'Quota definition for proftpd mod_quotatab_ldap' + EQUALITY caseExactMatch + SUBSTR caseExactSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} ) + +objectclass ( 1.3.6.1.4.1.17852.2.1.2.2.1 NAME 'proFTPDQuota' SUP top AUXILIARY + DESC 'Quota object for proftpd mod_quotatab_ldap' + MAY ( ftpQuota ) ) diff --git a/proftpd-welcome.msg b/proftpd-welcome.msg new file mode 100644 index 0000000..8210b52 --- /dev/null +++ b/proftpd-welcome.msg @@ -0,0 +1,8 @@ + + *** Welcome to this anonymous ftp server! *** + + You are user %N out of a maximum of %M authorized anonymous logins. + The current time here is %T. + If you experience any problems here, contact : %E + + diff --git a/proftpd.spec b/proftpd.spec index 6870648..02a4abc 100644 --- a/proftpd.spec +++ b/proftpd.spec @@ -1,7 +1,7 @@ Summary: Flexible, stable and highly-configurable FTP server Name: proftpd Version: 1.3.1 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Daemons URL: http://www.proftpd.org/ @@ -10,8 +10,11 @@ Source1: proftpd.conf Source2: proftpd.init Source3: proftpd-xinetd Source4: proftpd.logrotate -Source5: welcome.msg +Source5: proftpd-welcome.msg Source6: proftpd.pam +Source7: proftpd-mod_quotatab_ldap.ldif +Source8: proftpd-mod_quotatab_ldap.schema +Patch0: proftpd-1.3.1-find-umode_t.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root Requires: pam >= 0.59 Requires(post): /sbin/chkconfig @@ -62,6 +65,7 @@ Module to add PostgreSQL support to the ProFTPD FTP server. %prep %setup -q +%patch0 -p1 -b .find-umode_t %build @@ -102,6 +106,8 @@ Module to add PostgreSQL support to the ProFTPD FTP server. %{buildroot}%{_sysconfdir}/logrotate.d/proftpd %{__install} -D -p -m 0644 %{SOURCE5} %{buildroot}/var/ftp/welcome.msg %{__install} -D -p -m 0644 %{SOURCE6} %{buildroot}%{_sysconfdir}/pam.d/proftpd +%{__install} -D -p -m 0644 %{SOURCE7} 70proftpd-quota.ldif +%{__install} -D -p -m 0644 %{SOURCE8} proftpd-quota.schema %{__mkdir_p} %{buildroot}/var/ftp/uploads %{__mkdir_p} %{buildroot}/var/ftp/pub %{__mkdir_p} %{buildroot}/var/log/proftpd @@ -168,6 +174,7 @@ fi %files ldap %defattr(-,root,root,-) +%doc 70proftpd-quota.ldif proftpd-quota.schema %dir %{_libexecdir}/proftpd/ %{_libexecdir}/proftpd/mod_ldap.so %{_libexecdir}/proftpd/mod_quotatab_ldap.so @@ -186,8 +193,13 @@ fi %changelog -* Thu Dec 06 2007 Release Engineering - 1.3.1-2 -- Rebuild for deps +* Mon Dec 17 2007 Matthias Saou 1.3.1-3 +- Rebuild for new openssl, patch from Paul Howarth. + +* Mon Oct 22 2007 Matthias Saou 1.3.1-2 +- Include openldap schema file for quota support (Fran Taylor, #291891). +- Include FDS compatible LDIF file for quota support (converted). +- Prefix source welcome.msg for consistency. * Tue Oct 9 2007 Matthias Saou 1.3.1-1 - Update to 1.3.1 final. diff --git a/welcome.msg b/welcome.msg deleted file mode 100644 index 8210b52..0000000 --- a/welcome.msg +++ /dev/null @@ -1,8 +0,0 @@ - - *** Welcome to this anonymous ftp server! *** - - You are user %N out of a maximum of %M authorized anonymous logins. - The current time here is %T. - If you experience any problems here, contact : %E - -