Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 1 Oct 1998 16:22:18 -0400 (EDT)
From:      Bill Fumerola <billf@jade.chc-chimes.com>
To:        FreeBSD-gnats-submit@FreeBSD.ORG
Subject:   ports/8124: new port: net/proftpd-devel
Message-ID:  <199810012022.QAA21612@jade.chc-chimes.com>

next in thread | raw e-mail | index | archive | help

>Number:         8124
>Category:       ports
>Synopsis:       new port: net/proftpd-devel
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:
>Keywords:
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Oct  1 13:30:01 PDT 1998
>Last-Modified:
>Originator:     Bill Fumerola
>Organization:
Computer Horizons Corp
>Release:        FreeBSD 2.2.7-STABLE i386
>Environment:
>Description:

A port for proftpd, tracking the devel tree, which I had to use recently
for it's advanced logging options, instead of the normal proftpd port. So
I thought to myself, hey, someone else might want this, and so here it
is..

Praise to Stephane Legrand for the original proftpd port, of which most of
the following code/script/patches are ripped off from.

>How-To-Repeat:
>Fix:
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	.
#	./Makefile
#	./pkg
#	./pkg/COMMENT
#	./pkg/DESCR
#	./pkg/PLIST
#	./patches
#	./patches/patch-aa
#	./patches/patch-ad
#	./patches/patch-ab
#	./patches/patch-ae
#	./patches/patch-af
#	./patches/patch-ac
#	./patches/patch-ag
#	./files
#	./files/md5
#
echo c - .
mkdir -p . > /dev/null 2>&1
echo x - ./Makefile
sed 's/^X//' >./Makefile << 'END-of-./Makefile'
X# New ports collection makefile for:	proftpd
X# Version required:	1.1.7pre1
X# Date created:		16 Sept 1998
X# Whom:			Stephane Legrand
X#
X# $Id: $
X#
X
XDISTNAME=	proftpd-1.1.7pl1
XPKGNAME=	proftpd-1.1.7
XCATEGORIES=	net
XMASTER_SITES=	ftp://ftp.proftpd.org/devel/
X
XMAINTAINER=	billf@chc-chimes.com
X
XMAN1=	ftpwho.1 ftpcount.1
XMAN8=	proftpd.8 ftpshut.8
X
XUSE_GMAKE=	yes
XUSE_AUTOCONF=	yes
X
X#
X# - "configure --prefix=..." doesn't seem to work :(
X#   do a "sed" to set prefix to $PREFIX
X#
X# - do a "sed" to set the config dir to ${PREFIX}/etc
X#
X
Xpost-configure:
X
X	${MV} ${WRKSRC}/config.h ${WRKSRC}/config.h.pre_sed
X	${SED}	-e 's:\/etc\/proftpd\.conf:${PREFIX}\/etc\/proftpd.conf:' \
X		< ${WRKSRC}/config.h.pre_sed > ${WRKSRC}/config.h
X
X	@${MV} ${WRKSRC}/src/proftpd.8 ${WRKSRC}/src/proftpd.8.pre_sed
X	@${SED}	-e 's:/etc:${PREFIX}/etc:' \
X		-e 's:/usr/sbin/proftpd:${PREFIX}/libexec/proftpd:' \
X		-e 's:/usr/sbin:${PREFIX}/sbin:' \
X		-e 's:/usr/bin:${PREFIX}/bin:' \
X		< ${WRKSRC}/src/proftpd.8.pre_sed > ${WRKSRC}/src/proftpd.8
X
X	@${MV} ${WRKSRC}/src/ftpshut.8 ${WRKSRC}/src/ftpshut.8.pre_sed
X	@${SED}	-e 's:/usr/sbin:${PREFIX}/sbin:' \
X		-e 's:/etc:/var/run:' \
X		< ${WRKSRC}/src/ftpshut.8.pre_sed > ${WRKSRC}/src/ftpshut.8
X
X	@${MV} ${WRKSRC}/src/ftpwho.1 ${WRKSRC}/src/ftpwho.1.pre_sed
X	@${SED}	-e 's:/usr/bin:${PREFIX}/bin:' \
X		< ${WRKSRC}/src/ftpwho.1.pre_sed > ${WRKSRC}/src/ftpwho.1
X
X	@${MV} ${WRKSRC}/src/ftpcount.1 ${WRKSRC}/src/ftpcount.1.pre_sed
X	@${SED}	-e 's:/usr/bin:${PREFIX}/bin:' \
X		< ${WRKSRC}/src/ftpcount.1.pre_sed > ${WRKSRC}/src/ftpcount.1
X
Xpost-install:
X	strip ${PREFIX}/bin/ftpcount \
X		${PREFIX}/bin/ftpwho \
X		${PREFIX}/libexec/proftpd \
X		${PREFIX}/sbin/ftpshut \
X
X.include <bsd.port.mk>
END-of-./Makefile
echo c - ./pkg
mkdir -p ./pkg > /dev/null 2>&1
echo x - ./pkg/COMMENT
sed 's/^X//' >./pkg/COMMENT << 'END-of-./pkg/COMMENT'
XHighly configurable ftp daemon.
END-of-./pkg/COMMENT
echo x - ./pkg/DESCR
sed 's/^X//' >./pkg/DESCR << 'END-of-./pkg/DESCR'
XProFTPD is a highly configurable ftp daemon for unix
Xand unix-like operating systems. ProFTPD is designed
Xto be somewhat of a "drop-in" replacement for wu-ftpd.
X
XFull online documentation is available at 
Xhttp://www.proftpd.org/, including a server
Xconfiguration directive reference manual.
X
X- Stephane Legrand
Xstephane@lituus.fr
END-of-./pkg/DESCR
echo x - ./pkg/PLIST
sed 's/^X//' >./pkg/PLIST << 'END-of-./pkg/PLIST'
Xbin/ftpcount
Xbin/ftpwho
Xetc/proftpd.conf
Xlibexec/proftpd
Xsbin/ftpshut
END-of-./pkg/PLIST
echo c - ./patches
mkdir -p ./patches > /dev/null 2>&1
echo x - ./patches/patch-aa
sed 's/^X//' >./patches/patch-aa << 'END-of-./patches/patch-aa'
X--- sample-configurations/basic.conf.orig	Sun Mar  1 21:51:51 1998
X+++ sample-configurations/basic.conf	Wed Jul  1 19:04:28 1998
X@@ -1,3 +1,8 @@
X+#
X+# To have more informations about Proftpd configuration
X+# look at : http://www.proftpd.org/
X+#
X+
X # This is a basic ProFTPD configuration file (rename it to 
X # 'proftpd.conf' for actual use.  It establishes a single server
X # and a single anonymous login.  It assumes that you have a user/group
X@@ -23,24 +28,38 @@
X   AllowOverwrite		on
X </Directory>
X 
X-# A basic anonymous configuration, no upload directories.
X-<Anonymous ~ftp>
X-  User				ftp
X-  Group				ftp
X-  # We want clients to be able to login with "anonymous" as well as "ftp"
X-  UserAlias			anonymous ftp
X-
X-  # Limit the maximum number of anonymous logins
X-  MaxClients			10
X-
X-  # We want 'welcome.msg' displayed at login, and '.message' displayed
X-  # in each newly chdired directory.
X-  DisplayLogin			welcome.msg
X-  DisplayFirstChdir		.message
X-
X-  # Limit WRITE everywhere in the anonymous chroot
X-  <Limit WRITE>
X-    DenyAll
X-  </Limit>
X 
X-</Anonymous>
X+#########################################################################
X+#									#
X+# Uncomment lines with only one # to allow basic anonymous access	#
X+#									#
X+#########################################################################
X+
X+### A basic anonymous configuration, no upload directories.
X+# <Anonymous ~ftp>
X+#  User				ftp
X+#  Group				ftp
X+  ### We want clients to be able to login with "anonymous" as well as "ftp"
X+  # UserAlias			anonymous ftp
X+
X+  ### Limit the maximum number of anonymous logins
X+  # MaxClients			10
X+
X+  ### It is wise when making an 'ftp' user that you either block its
X+  ### ability to login either via /etc/login.access or my giving it
X+  ### an invalid shell.
X+  ### Uncomment this if the 'ftp' user you made has an invalid shell
X+
X+  # RequireValidShell		off
X+
X+  ### We want 'welcome.msg' displayed at login, and '.message' displayed
X+  ### in each newly chdired directory.
X+  # DisplayLogin			welcome.msg
X+  # DisplayFirstChdir		.message
X+
X+  ### Limit WRITE everywhere in the anonymous chroot
X+  # <Limit WRITE>
X+  #  DenyAll
X+  # </Limit>
X+
X+# </Anonymous>
END-of-./patches/patch-aa
echo x - ./patches/patch-ad
sed 's/^X//' >./patches/patch-ad << 'END-of-./patches/patch-ad'
X--- src/log.c.orig	Wed Sep 16 16:10:41 1998
X+++ src/log.c	Sat Sep 16 16:13:58 1998
X@@ -44,7 +44,7 @@
X static int syslog_discard = FALSE;
X static int logstderr = TRUE;
X static int debug_level = DEBUG0;	/* Default is no debug logging */
X+static int facility = LOG_FTP;
X-static int facility = LOG_DAEMON;
X static int set_facility = -1;
X static char *syslog_fn = NULL;
X static char *syslog_hostname;
X@@ -677,7 +677,7 @@
X   log(priority,facility,buf);
X }
X 
X+/* Like log_pri(), but sends the log entry in the LOG_FTP
X-/* Like log_pri(), but sends the log entry in the LOG_AUTHPRIV
X  * facility (presumable it doesn't need to be seen by everyone
X  */
X 
X@@ -692,7 +692,7 @@
X 
X   buf[1023] = '\0';
X 
X+  log(priority,LOG_FTP,buf);
X-  log(priority,LOG_AUTHPRIV,buf);
X }
X 
X /* Disable logging to stderr, should be done right before forking
END-of-./patches/patch-ad
echo x - ./patches/patch-ab
sed 's/^X//' >./patches/patch-ab << 'END-of-./patches/patch-ab'
X--- src/proftpd.8.orig	Sun Jun  7 16:26:39 1998
X+++ src/proftpd.8	Sun Jun  7 16:27:44 1998
X@@ -19,6 +19,12 @@
X may be invoked by the Internet "super-server" inetd(8) each time a
X connection to the FTP service is made, or alternatively it can be run as a
X stand-alone daemon.
X+.br
X+.PP
X+Each successful and failed ftp(1) session is logged using syslog with a
X+facility of LOG_FTP.  Note: LOG_FTP messages are not displayed
X+by syslogd(8) by default, and may have to be enabled in syslogd(8)'s 
X+configuration file.
X .SH OPTIONS
X .TP 12
X .B \-h,\--help
END-of-./patches/patch-ab
echo x - ./patches/patch-ae
sed 's/^X//' >./patches/patch-ae << 'END-of-./patches/patch-ae'
X--- modules//mod_auth.c.orig	Sun Jun  7 16:17:57 1998
X+++ modules/mod_auth.c	Sun Jun  7 16:21:29 1998
X@@ -177,7 +177,7 @@
X   /* Is this the proper behavior when timing out? */
X   send_response_async(R_421,"Login Timeout (%d seconds): closing control connection.",
X                       TimeoutLogin);
X-  schedule(main_exit,0,(void*)LOG_NOTICE,"FTP login timed out, disconnected.",
X+  schedule(main_exit,0,(void*)LOG_INFO,"FTP login timed out, disconnected.",
X            (void*)0,NULL);
X   remove_timer(TIMER_IDLE,ANY_MODULE);
X   remove_timer(TIMER_NOXFER,ANY_MODULE);
X@@ -763,10 +763,10 @@
X   }
X 
X   if(c)
X-    log_auth(LOG_NOTICE,"ANONYMOUS FTP login as '%s' from %s [%s]",
X+    log_auth(LOG_INFO,"ANONYMOUS FTP login as '%s' from %s [%s]",
X     origuser,session.c->remote_name,inet_ntoa(*session.c->remote_ipaddr));
X   else
X-    log_auth(LOG_NOTICE,"FTP login as '%s' from %s [%s]",
X+    log_auth(LOG_INFO,"FTP login as '%s' from %s [%s]",
X     origuser,session.c->remote_name,inet_ntoa(*session.c->remote_ipaddr));
X 
X   session.user = pstrdup(permanent_pool,auth_map_uid(pw->pw_uid));
X@@ -987,7 +987,7 @@
X       send_response(R_530,"%s",
X                     sreplace(cmd->tmp_pool,maxstr,"%m",maxn,NULL));
X 
X-      log_auth(LOG_NOTICE,"connection refused (max clients %d)",
X+      log_auth(LOG_INFO,"connection refused (max clients %d)",
X                max);
X       end_login(0);
X     }
END-of-./patches/patch-ae
echo x - ./patches/patch-af
sed 's/^X//' >./patches/patch-af << 'END-of-./patches/patch-af'
X--- Makefile.in.old	Wed Sep 16 17:31:59 1998
X+++ Makefile.in	Wed Sep 16 17:33:37 1998
X@@ -17,6 +17,7 @@
X sbindir=@sbindir@
X etcdir=@etcdir@
X mandir=@mandir@
X+libexecdir=@libexecdir@
X 
X include ./Make.rules
X include ./Make.modules
X@@ -65,10 +66,7 @@
X 	rm -f proftpd ftpcount ftpwho ftpshut core
X 
X install-proftpd:
X-	$(INSTALL_SBIN) proftpd $(sbindir)/proftpd
X-	if [ ! -f $(sbindir)/in.proftpd ] ; then \
X-	  ln -s $(sbindir)/proftpd $(sbindir)/in.proftpd; \
X-	fi
X+	$(INSTALL_SBIN) proftpd $(libexecdir)/proftpd
X 
X install-utils:
X 	$(INSTALL_BIN) ftpcount $(bindir)/ftpcount
END-of-./patches/patch-af
echo x - ./patches/patch-ac
sed 's/^X//' >./patches/patch-ac << 'END-of-./patches/patch-ac'
X--- configure.orig	Wed May 20 03:50:43 1998
X+++ configure	Wed Jul  1 18:48:48 1998
X@@ -526,14 +526,11 @@
X 
X ac_aux_dir=
X for ac_dir in ./ $srcdir/./; do
X-  if test -f $ac_dir/install-sh -o -f $ac_dir/config.guess -o -f $ac_dir/config.sub; then
X+  if test -f $ac_dir/install-sh; then
X     ac_aux_dir=$ac_dir
X-    if test -f $ac_dir/install-sh; then
X-      ac_install_sh="$ac_aux_dir/install-sh -c"
X-    fi
X+    ac_install_sh="$ac_aux_dir/install-sh -c"
X     break
X-  fi
X-  if test -f $ac_dir/install.sh; then
X+  elif test -f $ac_dir/install.sh; then
X     ac_aux_dir=$ac_dir
X     ac_install_sh="$ac_aux_dir/install.sh -c"
X     break
X@@ -669,7 +666,7 @@
X EOF
X 
X cat >> confdefs.h <<\EOF
X-#define SHUTMSG_PATH "/etc/shutmsg"
X+#define SHUTMSG_PATH "/var/run/shutmsg"
X EOF
X 
X cat >> confdefs.h <<\EOF
END-of-./patches/patch-ac
echo x - ./patches/patch-ag
sed 's/^X//' >./patches/patch-ag << 'END-of-./patches/patch-ag'
X--- configure.in.orig	Wed Sep 16 17:51:46 1998
X+++ configure.in	Wed Sep 16 17:52:07 1998
X@@ -136,7 +136,7 @@
X dnl Checks for installation user/group
X 
X test x"$install_user" = x && install_user='root'
X-test x"$install_group" = x && install_group='root'
X+test x"$install_group" = x && install_group='wheel'
X 
X AC_SUBST(install_user)
X AC_SUBST(install_group)
END-of-./patches/patch-ag
echo c - ./files
mkdir -p ./files > /dev/null 2>&1
echo x - ./files/md5
sed 's/^X//' >./files/md5 << 'END-of-./files/md5'
XMD5 (proftpd-1.1.7pl1.tar.gz) = b39e149f806f3c346488ef650a49ea46
END-of-./files/md5
exit


>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199810012022.QAA21612>