'unlabeled-1.226.2'.
Sprout from master 2006-06-07 11:32:29 UTC zbyniu <zbyniu@pld-linux.org> '- proper bconds support'
Delete:
ftp.pamd
proftpd-anonftp.conf
proftpd-configure.patch
proftpd-glibc.patch
proftpd-mod_pam.conf
proftpd-mod_tls.conf
proftpd-noautopriv.patch
proftpd-paths.patch
proftpd-sendfile64.patch
proftpd-umode_t.patch
proftpd-wtmp.patch
proftpd.conf
proftpd.inetd
proftpd.init
proftpd.sysconfig
+++ /dev/null
-#%PAM-1.0
-auth required pam_listfile.so item=user sense=deny file=/etc/security/blacklist onerr=succeed
-auth required pam_listfile.so item=user sense=deny file=/etc/security/blacklist.ftp onerr=succeed
-auth required pam_unix.so
-auth required pam_tally.so deny=0 file=/var/log/faillog onerr=succeed
-auth required pam_shells.so
-auth required pam_nologin.so
-account required pam_tally.so file=/var/log/faillog onerr=succeed
-account required pam_unix.so
-session required pam_unix.so
+++ /dev/null
-# $Id$
-
-# A basic anonymous configuration
-# uncoment this section below if you want gain annonymous ftp acces
-<Anonymous ~ftp>
- User ftp
- Group ftp
- AnonRequirePassword off
- RequireValidShell off
-
- # We want clients to be able to login with "anonymous" as well as "ftp"
- UserAlias anonymous ftp
-
- # Limit the maximum number of anonymous logins
- MaxClients 10
-
- # We want 'welcome.msg' displayed at login, and '.message' displayed
- # in each newly chdired directory.
- DisplayLogin welcome.msg
- DisplayFirstChdir .message
-
- AllowStoreRestart on
-
- # Limit WRITE everywhere in the anonymous chroot
- <Limit WRITE>
- DenyAll
- </Limit>
-
-# <Directory /home/services/ftp/pub/Incoming>
-# <Limit READ>
-# DenyAll
-# </Limit>
-# <Limit WRITE>
-# AllowAll
-# </Limit>
-# <Limit STOR>
-# AllowAll
-# </Limit>
-# </Directory>
-</Anonymous>
+++ /dev/null
---- proftpd-1.3.0/configure.in~ 2006-04-29 13:28:31.677081542 +0300
-+++ proftpd-1.3.0/configure.in 2006-04-29 13:28:36.917198497 +0300
-@@ -1570,7 +1570,7 @@
- for amodule in $ac_shared_modules; do
- module=`echo "$amodule" | sed -e 's/.la//g'`.o;
- ac_static_modules=`echo "$ac_static_modules" | sed -e "s/$module//g"`;
-- ac_build_static_modules=`echo "$ac_build_static_modules" | sed -e "s/$module//g"`;
-+ ac_build_static_modules=`echo "$ac_build_static_modules" | sed -e "s/modules\/$module//g"`;
- done
-
- GLUE_MODULE_OBJS="$ac_core_modules $ac_static_modules"
+++ /dev/null
-diff -Nur proftpd-1.2.0pre1/modules/mod_ls.c proftpd-1.2.0pre1.pld/modules/mod_ls.c
---- proftpd-1.2.0pre1/modules/mod_ls.c Sun Oct 18 04:24:41 1998
-+++ proftpd-1.2.0pre1.pld/modules/mod_ls.c Wed Feb 10 17:02:17 1999
-@@ -23,7 +23,9 @@
- */
-
- #include "conf.h"
--
-+#if ((__GLIBC__ == 2) && (__GLIBC_MINOR__ >= 1))
-+#include <asm/types.h>
-+#endif /* GNU libc-2.1 */
- #ifndef GLOB_ABORTED
- #define GLOB_ABORTED GLOB_ABEND
- #endif
+++ /dev/null
-# $Id$
-LoadModule mod_auth_pam.c
-
-<IfModule mod_auth_pam.c>
- # use PAM authoritative
- AuthPAM on
-</IfModule>
+++ /dev/null
-# $Id$
-LoadModule mod_tls.c
-
-# TLSEngine must be enabled for TLS options to have effect.
-#TLSEngine on
-
-# These are the TLS related options, default values
-#TLSRSACertificateFile /etc/ftpd/ftpd-rsa.pem
-#TLSRSACertificateKeyFile /etc/ftpd/ftpd-rsa-key.pem
-
-#TLSDSACertificateFile /etc/ftpd/ftpd-dsa.pem
-#TLSDSACertificateKeyFile /etc/ftpd/ftpd-dsa-key.pem
-
-#TLSCARevocationFile /etc/ftpd/ftpd-crl.pem
-#TLSDHParamFile /etc/ftpd/ftpd-dhparam.pem
-
-#TLSCipherSuite ALL:!EXP
-
-# don't verify any peer certificates
-#TLSVerifyClient off
-
-#TLSRequired off
+++ /dev/null
---- proftpd-1.2.0pre1/include/log.h.noauthpriv Thu Feb 11 12:10:38 1999
-+++ proftpd-1.2.0pre1/include/log.h Thu Feb 11 12:11:01 1999
-@@ -25,6 +25,7 @@
- #ifndef __LOG_H
- #define __LOG_H
-
-+#undef LOG_AUTHPRIV
- #ifndef LOG_AUTHPRIV
- #define LOG_AUTHPRIV LOG_AUTH
- #endif
+++ /dev/null
---- proftpd-1.2.0pre3/contrib/xferstats.holger-preiss Sun Oct 18 04:24:41 1998
-+++ proftpd-1.2.0pre3.pld/contrib/xferstats.holger-preiss Fri May 28 10:49:08 1999
-@@ -1,4 +1,4 @@
--#! /usr/bin/perl
-+#!/usr/bin/perl
- # ---------------------------------------------------------------------------
- #
- # USAGE: xferstats <options>
-@@ -40,7 +40,7 @@
- # If you want to specify $mydom1 and $mydom2 manually you should edit the
- # next two lines to customize for your domain. This will allow your domain
- # to be separated in the domain listing.
--# $mydom1 = "debian";
-+# $mydom1 = "pld";
- # $mydom2 = "org";
-
- # edit the next line to customize for your default log file
---- proftpd-1.3.0/include/default_paths.h~ 2006-04-29 14:05:26.906490255 +0300
-+++ proftpd-1.3.0/include/default_paths.h 2006-04-29 14:06:53.778425641 +0300
-@@ -57,7 +57,7 @@
- * overriden at runtime with the '-c' switch
- */
- #ifndef PR_CONFIG_FILE_PATH
--# define PR_CONFIG_FILE_PATH "/etc/proftpd.conf"
-+# define PR_CONFIG_FILE_PATH "/etc/ftpd/proftpd.conf"
- #endif
-
- /* The location of your `shells' file; a newline delimited list of
-@@ -80,6 +80,6 @@
- /* Location of the file containing users that *cannot* use ftp
- * services (odd, eh?)
- */
--#define PR_FTPUSERS_PATH "/etc/ftpusers"
-+#define PR_FTPUSERS_PATH "/etc/ftpd/ftpusers"
-
- #endif /* PROFTPD_PATHS_H */
+++ /dev/null
---- proftpd-1.3.0/include/data.h~ 2006-04-29 14:20:36.776770520 +0300
-+++ proftpd-1.3.0/include/data.h 2006-04-29 14:21:59.528616003 +0300
-@@ -36,25 +36,12 @@
- int pr_data_open(char *, char *, int, off_t);
- void pr_data_close(int);
- void pr_data_abort(int, int);
--int pr_data_xfer(char *, int);
-+off_t pr_data_xfer(char *, int);
- void pr_data_reset(void);
- void pr_data_set_linger(long);
-
- #ifdef HAVE_SENDFILE
--typedef
--
--#if defined(HAVE_AIX_SENDFILE) || defined(HAVE_HPUX_SENDFILE) || \
-- defined(HAVE_LINUX_SENDFILE) || defined(HAVE_SOLARIS_SENDFILE)
--ssize_t
--#elif defined(HAVE_BSD_SENDFILE)
--off_t
--#else
--#error "You have an unknown sendfile implementation."
--#endif
--
--pr_sendfile_t;
--
--pr_sendfile_t pr_data_sendfile(int retr_fd, off_t *offset, off_t count);
-+off_t pr_data_sendfile(int retr_fd, off_t *offset, off_t count);
- #endif /* HAVE_SENDFILE */
-
- #endif /* PR_DATACONN_H */
---- proftpd-1.2.10/modules/mod_xfer.c 2004-08-25 00:24:18.000000000 +0200
-+++ proftpd-1.2.10-sendfile64/modules/mod_xfer.c 2005-02-03 17:18:26.109723112 +0100
-@@ -603,7 +603,7 @@
- return;
- }
-
--static int _transmit_normal(char *buf, long bufsize) {
-+static off_t _transmit_normal(char *buf, long bufsize) {
- long count;
-
- if ((count = pr_fsio_read(retr_fh, buf, bufsize)) <= 0)
-@@ -614,7 +614,7 @@
-
- #ifdef HAVE_SENDFILE
- static int _transmit_sendfile(off_t count, off_t *offset,
-- pr_sendfile_t *retval) {
-+ off_t *retval) {
-
- /* We don't use sendfile() if:
- * - We're using bandwidth throttling.
-@@ -670,8 +670,8 @@
- }
- #endif /* HAVE_SENDFILE */
-
--static long _transmit_data(off_t count, off_t offset, char *buf, long bufsize) {
-- long res;
-+static off_t _transmit_data(off_t count, off_t offset, char *buf, long bufsize) {
-+ off_t res;
-
- #ifdef TCP_CORK
- int on = 1;
-@@ -679,7 +679,7 @@
- #endif /* TCP_CORK */
-
- #ifdef HAVE_SENDFILE
-- pr_sendfile_t retval;
-+ off_t retval;
- #endif /* HAVE_SENDFILE */
-
- #ifdef TCP_CORK
-@@ -695,7 +695,7 @@
- if (!_transmit_sendfile(count, &offset, &retval))
- res = _transmit_normal(buf, bufsize);
- else
-- res = (long) retval;
-+ res = retval;
- #else
- res = _transmit_normal(buf, bufsize);
- #endif /* HAVE_SENDFILE */
-@@ -1526,8 +1526,8 @@
- off_t nbytes_max_retrieve = 0;
- unsigned char have_limit = FALSE;
- privdata_t *p;
-- long bufsize, len = 0;
-- off_t respos = 0, nbytes_sent = 0, cnt_steps = 0, cnt_next = 0;
-+ long bufsize;
-+ off_t respos = 0, nbytes_sent = 0, cnt_steps = 0, cnt_next = 0, len = 0;
-
- /* This function sets static module variables for later potential
- * throttling of the transfer.
---- proftpd-1.2.10/src/data.c 2004-08-25 20:08:46.000000000 +0200
-+++ proftpd-1.2.10-sendfile64/src/data.c 2005-02-03 17:20:56.858805768 +0100
-@@ -772,9 +772,9 @@
- * closes, or -1 if error
- */
-
--int pr_data_xfer(char *cl_buf, int cl_size) {
-- int len = 0;
-- int total = 0;
-+off_t pr_data_xfer(char *cl_buf, int cl_size) {
-+ off_t len = 0;
-+ off_t total = 0;
-
- if (session.xfer.direction == PR_NETIO_IO_RD) {
- char *buf = session.xfer.buf;
-@@ -910,9 +910,9 @@
- * ASCII translation is not performed.
- * return 0 if reading and data connection closes, or -1 if error
- */
--pr_sendfile_t pr_data_sendfile(int retr_fd, off_t *offset, size_t count) {
-+off_t pr_data_sendfile(int retr_fd, off_t *offset, off_t count) {
- int flags, error;
-- pr_sendfile_t len = 0, total = 0;
-+ off_t len = 0, total = 0;
- #if defined(HAVE_AIX_SENDFILE)
- struct sf_parms parms;
- int rc;
-@@ -932,14 +932,19 @@
- for (;;) {
- #if defined(HAVE_LINUX_SENDFILE) || defined(HAVE_SOLARIS_SENDFILE)
- off_t orig_offset = *offset;
-+ off_t translen = 0;
-
-+ if (count > 1024*1024*1024)
-+ translen = 1024*1024*1024;
-+ else
-+ translen = count;
- /* Linux semantics are fairly straightforward in a glibc 2.x world:
- *
- * #include <sys/sendfile.h>
- *
- * ssize_t sendfile(int out_fd, int in_fd, off_t *offset, size_t count)
- */
-- len = sendfile(PR_NETIO_FD(session.d->outstrm), retr_fd, offset, count);
-+ len = sendfile(PR_NETIO_FD(session.d->outstrm), retr_fd, offset, (size_t)translen);
-
- if (len != -1 && len < count) {
- /* under linux semantics, this occurs when a signal has interrupted
+++ /dev/null
-diff -ruN proftpd-1.1.6pl2-old/config.h.in proftpd-1.1.6pl2/config.h.in
---- proftpd-1.1.6pl2-old/config.h.in Mon Sep 7 21:15:42 1998
-+++ proftpd-1.1.6pl2/config.h.in Fri Sep 18 22:35:32 1998
-@@ -69,7 +69,7 @@
- #undef ino_t
-
- /* Define to `mode_t' if <sys/types.h> doesn't define. */
--#undef umode_t
-+/* #undef umode_t */
-
- /* Define if your system has _pw_stayopen variable (Irix specific?) */
- #undef HAVE__PW_STAYOPEN
+++ /dev/null
---- proftpd-1.3.0/src/log.c 2005-11-14 18:33:06.000000000 +0200
-+++ proftpd-1.3.0.utmp/src/log.c 2006-04-29 14:17:55.023163252 +0300
-@@ -54,31 +54,13 @@
-
- int log_wtmp(char *line, const char *name, const char *host,
- pr_netaddr_t *ip) {
-- struct stat buf;
- struct utmp ut;
- int res = 0;
-- static int fd = -1;
-+ static int washere = 0;
-
--#if ((defined(SVR4) || defined(__SVR4)) || \
-- (defined(__NetBSD__) && defined(HAVE_UTMPX_H))) && \
-- !(defined(LINUX) || defined(__hpux) || defined (_AIX))
-- /* This "auxilliary" utmp doesn't exist under linux. */
--#ifdef __sparcv9
-- struct futmpx utx;
-- time_t t;
--#else
-- struct utmpx utx;
--#endif
-- static int fdx = -1;
--
--#if !defined(WTMPX_FILE) && defined(_PATH_WTMPX)
--# define WTMPX_FILE _PATH_WTMPX
--#endif
--
-- if (fdx < 0 &&
-- (fdx = open(WTMPX_FILE, O_WRONLY|O_APPEND, 0)) < 0) {
-- pr_log_pri(PR_LOG_WARNING, "wtmpx %s: %s", WTMPX_FILE, strerror(errno));
-- return -1;
-+ if (!washere) {
-+ utmpname(_PATH_WTMP);
-+ washere = 1;
- }
-
- /* Unfortunately, utmp string fields are terminated by '\0' if they are
-@@ -87,52 +69,7 @@
- * Insane if you ask me. Unless there's massive uproar, I prefer to err on
- * the side of caution and always null-terminate our strings.
- */
-- if (fstat(fdx, &buf) == 0) {
-- memset(&utx, 0, sizeof(utx));
--
-- sstrncpy(utx.ut_user, name, sizeof(utx.ut_user));
-- sstrncpy(utx.ut_id, "ftp", sizeof(utx.ut_user));
-- sstrncpy(utx.ut_line, line, sizeof(utx.ut_line));
-- sstrncpy(utx.ut_host, host, sizeof(utx.ut_host));
-- utx.ut_pid = getpid();
--#if defined(__NetBSD__) && defined(HAVE_UTMPX_H)
-- memcpy(&utx.ut_ss, pr_netaddr_get_inaddr(ip), sizeof(utx.ut_ss));
-- gettimeofday(&utx.ut_tv, NULL);
--#else /* SVR4 */
-- utx.ut_syslen = strlen(utx.ut_host)+1;
--# ifdef __sparcv9
-- time(&t);
-- utx.ut_tv.tv_sec = (time32_t)t;
--# else
-- time(&utx.ut_tv.tv_sec);
--# endif
--#endif /* SVR4 */
--
-- if (*name)
-- utx.ut_type = USER_PROCESS;
-- else
-- utx.ut_type = DEAD_PROCESS;
--#ifdef HAVE_UT_UT_EXIT
-- utx.ut_exit.e_termination = 0;
-- utx.ut_exit.e_exit = 0;
--#endif /* HAVE_UT_UT_EXIT */
-- if (write(fdx, (char *)&utx, sizeof(utx)) != sizeof(utx))
-- ftruncate(fdx, buf.st_size);
--
-- } else {
-- pr_log_debug(DEBUG0, "%s fstat(): %s", WTMPX_FILE, strerror(errno));
-- res = -1;
-- }
--
--#else /* Non-SVR4 systems */
--
-- if (fd < 0 &&
-- (fd = open(WTMP_FILE, O_WRONLY|O_APPEND, 0)) < 0) {
-- pr_log_pri(PR_LOG_WARNING, "wtmp %s: %s", WTMP_FILE, strerror(errno));
-- return -1;
-- }
-
-- if (fstat(fd, &buf) == 0) {
- memset(&ut, 0, sizeof(ut));
- #ifdef HAVE_UTMAXTYPE
- # ifdef LINUX
-@@ -169,15 +106,12 @@
- #endif /* HAVE_UT_UT_HOST */
-
- time(&ut.ut_time);
-- if (write(fd, (char *)&ut, sizeof(ut)) != sizeof(ut))
-- ftruncate(fd, buf.st_size);
--
-- } else {
-- pr_log_debug(DEBUG0, "%s fstat(): %s",WTMP_FILE,strerror(errno));
-- res = -1;
-- }
--#endif /* SVR4 */
-
-+ setutent();
-+ while ((getutent())) ;
-+ pututline(&ut);
-+ if (!washere)
-+ endutent();
- return res;
- }
-
+++ /dev/null
-# $Id$
-
-ServerName "ProFTPD"
-ServerType standalone
-DeferWelcome off
-DefaultServer on
-
-# If you want .message files to work with browsers, you probably
-# want to uncomment the next line
-#MultilineRFC2228 on
-
-# Port 21 is the standard FTP port.
-Port 21
-# Umask 022 is a good standard umask to prevent new dirs and files
-# from being group and world writable.
-Umask 022
-
-# Set the user and group that the server normally runs at.
-User ftp
-Group ftp
-
-# use separate auth files instead of system auth
-#AuthUserFile /etc/ftpd/passwd
-#AuthGroupFile /etc/ftpd/group
-
-# Normally, we want files to be overwriteable.
-<Directory />
- AllowOverwrite on
-</Directory>
-
-# lock users to their homedir
-DefaultRoot ~
-
-# allow resume uploads and downloads
-AllowRetrieveRestart on
-AllowStoreRestart on
-
-# enable this to have your ftp server FXP gateway.
-# only enable this if you trust your users as it allows your ftp server to connect anywhere.
-# DO NOT enable this if you have anonymous logins enabled!
-#AllowForeignAddress on
-
-# NAT support
-# http://www.castaglia.org/proftpd/doc/contrib/ProFTPD-mini-HOWTO-NAT.html
-#MasqueradeAddress my.domain.com
-#PassivePorts 60000 65535
-
-# Do not announce server software at logon. for paranoids.
-#ServerIdent off
-
-# To prevent DoS attacks, set the maximum number of child processes
-# to 30. If you need to allow more than 30 concurrent connections
-# at once, simply increase this value. Note that this ONLY works
-# in standalone mode, in inetd mode you should use an inetd server
-# that allows you to limit maximum number of processes per service
-# (such as xinetd).
-MaxInstances 30
-
-# Idle
-TimeoutLogin 300
-TimeoutNoTransfer 300
-
-# Load additional (modules) config
-Include /etc/ftpd/conf.d/*.conf
+++ /dev/null
-SERVICE_NAME=ftp
-SOCK_TYPE=stream
-PROTOCOL=tcp
-PORT=21
-FLAGS=nowait
-USER=root
-SERVER=tcpd
-DAEMON=/usr/sbin/proftpd
-# No longer needed :) - baggins
-# FAMILY=ipv4
+++ /dev/null
-#!/bin/sh
-#
-# proftpd ProFTPD ftp server
-#
-# chkconfig: 345 85 15
-# description: ProFTPD is a highly configurable ftp daemon for unix and unix-like \
-# operating systems.
-# processname: proftpd
-# pidfile: /var/run/proftpd.pid
-# config: /etc/ftpd/proftpd.conf
-
-
-# Source function library
-. /etc/rc.d/init.d/functions
-
-# Get network config
-. /etc/sysconfig/network
-
-# Get service config
-[ -f /etc/sysconfig/proftpd ] && . /etc/sysconfig/proftpd
-
-# Check that networking is up.
-if is_yes "${NETWORKING}"; then
- if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
- msg_network_down proftpd
- exit 1
- fi
-else
- exit 0
-fi
-
-RETVAL=0
-# See how we were called.
-case "$1" in
- start)
- # Check if the service is already running?
- if [ ! -f /var/lock/subsys/proftpd ]; then
- msg_starting ProFTPD
- daemon proftpd $PROFTPD_OPTS
- RETVAL=$?
- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/proftpd
- else
- msg_already_running ProFTPD
- fi
- ;;
- stop)
- # Stop daemons.
- if [ -f /var/lock/subsys/proftpd ]; then
- msg_stopping ProFTPD
- killproc proftpd
- rm -f /var/lock/subsys/proftpd /var/run/proftpd* > /dev/null 2>&1
- else
- msg_not_running ProFTPD
- fi
- ;;
- status)
- status proftpd
- exit $?
- ;;
- restart|force-reload)
- $0 stop
- $0 start
- exit $?
- ;;
- *)
- msg_usage "$0 {start|stop|restart|force-reload|status}"
- exit 3
-esac
-
-exit $RETVAL
+++ /dev/null
-# Customized settings for proftpd
-
-# Nice level for proftpd
-SERVICE_RUN_NICE_LEVEL="+5"
-
-# Cmdline options
-PROFTPD_OPTS=""
-