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>