Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 31 Mar 2001 13:51:28 +0200 (CEST)
From:      Anders Nordby <anders@fix.no>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/26243: New port: ftp/oftpd
Message-ID:  <20010331115128.B73933C8E@totem.fix.no>

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

>Number:         26243
>Category:       ports
>Synopsis:       New port: ftp/oftpd
>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:   Sat Mar 31 04:00:01 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     Anders Nordby
>Release:        FreeBSD 4.2-STABLE i386
>Organization:
Fluxpod Information eXchange
>Environment:

Tested in:

4.2-STABLE from January

FreeBSD current.localnet 5.0-20010116-CURRENT FreeBSD 5.0-20010116-CURRENT #0: Tue Jan 16 16:30:03 GMT 2001     root@usw2.freebsd.org:/usr/src/sys/compile/GENERIC  i386

>Description:

New port of oftpd, a threaded, anonymous only FTP server designed for security.

>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:
#
#	oftpd
#	oftpd/pkg-plist
#	oftpd/pkg-descr
#	oftpd/pkg-comment
#	oftpd/distinfo
#	oftpd/Makefile
#	oftpd/files
#	oftpd/files/patch-file_list.c
#	oftpd/files/patch-ftp_command.c
#	oftpd/files/patch-af_portability.c
#	oftpd/files/patch-ftp_listener.c
#	oftpd/files/patch-ftp_session.c
#	oftpd/files/patch-configure
#
echo c - oftpd
mkdir -p oftpd > /dev/null 2>&1
echo x - oftpd/pkg-plist
sed 's/^X//' >oftpd/pkg-plist << 'END-of-oftpd/pkg-plist'
Xlibexec/oftpd
Xshare/doc/oftpd/README
Xshare/doc/oftpd/AUTHORS
Xshare/doc/oftpd/ChangeLog
Xshare/doc/oftpd/NEWS
Xshare/doc/oftpd/TODO
Xshare/doc/oftpd/BUGS
X@dirrm share/doc/oftpd
END-of-oftpd/pkg-plist
echo x - oftpd/pkg-descr
sed 's/^X//' >oftpd/pkg-descr << 'END-of-oftpd/pkg-descr'
Xoftpd is designed to be as secure as an anonymous FTP server can possibly be.
XIt runs as non-root for most of the time, and uses the Unix chroot() command to
Xhide most of the systems directories from external users - they cannot change
Xinto them even if the server is totally compromised! It contains its own
Xdirectory change code, so that it can run efficiently as a threaded server, and
Xits own directory listing code (most FTP servers execute the system "ls"
Xcommand to list files).
X
XWWW: http://www.time-travellers.org/oftpd/
END-of-oftpd/pkg-descr
echo x - oftpd/pkg-comment
sed 's/^X//' >oftpd/pkg-comment << 'END-of-oftpd/pkg-comment'
XA threaded, anonymous only FTP server designed for security
END-of-oftpd/pkg-comment
echo x - oftpd/distinfo
sed 's/^X//' >oftpd/distinfo << 'END-of-oftpd/distinfo'
XMD5 (oftpd-0.3.3.tar.gz) = 5aedb3495fa262400e71b454a4bd9470
END-of-oftpd/distinfo
echo x - oftpd/Makefile
sed 's/^X//' >oftpd/Makefile << 'END-of-oftpd/Makefile'
X# Ports collection makefile for:  oftpd
X# Date created:			  31 March 2001
X# Whom:				  Anders Nordby <anders@fix.no>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	oftpd
XPORTVERSION=	0.3.3
XCATEGORIES=	ftp
XMASTER_SITES=	http://www.time-travellers.org/oftpd/ \
X		http://www.freenix.no/~anders/
X
XMAINTAINER=	anders@fix.no
X
XGNU_CONFIGURE=	yes
X
XDOCFILES=	README AUTHORS ChangeLog NEWS TODO BUGS
X
XCFLAGS+=	-D_THREAD_SAFE
X
Xdo-install:
X	${INSTALL_PROGRAM} ${WRKSRC}/src/oftpd ${PREFIX}/libexec/oftpd
X.if !defined(NOPORTDOCS)
X	${INSTALL} -d -m 555 ${PREFIX}/share/doc/oftpd
X.for i in ${DOCFILES}
X	${INSTALL_DATA} ${WRKSRC}/${i} ${PREFIX}/share/doc/oftpd
X.endfor
X.endif
X
Xpost-install:
X	@${ECHO} "================================================================================"
X	@${ECHO} "oftpd only runs standalone, not from inetd."
X	@${ECHO} "Try ${PREFIX}/libexec/oftpd -h to see command line options."
X	@${ECHO} "Create a README file in the root anonymous FTP dir to have it displayed to"
X	@${ECHO} "users upon login."
X	@${ECHO} "================================================================================"
X
X.include <bsd.port.mk>
END-of-oftpd/Makefile
echo c - oftpd/files
mkdir -p oftpd/files > /dev/null 2>&1
echo x - oftpd/files/patch-file_list.c
sed 's/^X//' >oftpd/files/patch-file_list.c << 'END-of-oftpd/files/patch-file_list.c'
X--- src/file_list.c.old	Sat Mar 31 11:27:00 2001
X+++ src/file_list.c	Sat Mar 31 11:37:38 2001
X@@ -186,7 +186,11 @@
X     /* do a glob() */
X     memset(&glob_buf, 0, sizeof(glob_buf));
X     glob_ret = glob(pattern, GLOB_ERR, NULL, &glob_buf);
X+#ifndef GLOB_NOMATCH /* FreeBSD rocks your world */
X+    if (glob_ret == GLOB_NOCHECK) {
X+#else
X     if (glob_ret == GLOB_NOMATCH) {
X+#endif
X         fdprintf(out, "total 0\r\n");
X         return 1;
X     } else if (glob_ret == GLOB_NOSPACE) {
END-of-oftpd/files/patch-file_list.c
echo x - oftpd/files/patch-ftp_command.c
sed 's/^X//' >oftpd/files/patch-ftp_command.c << 'END-of-oftpd/files/patch-ftp_command.c'
X--- src/ftp_command.c.old	Sat Mar 31 11:43:43 2001
X+++ src/ftp_command.c	Sat Mar 31 11:44:01 2001
X@@ -6,6 +6,7 @@
X #include <string.h>
X #include <ctype.h>
X #include <stdio.h>
X+#include <sys/types.h>
X #include <sys/socket.h>
X #include <netinet/in.h>
X #include <arpa/inet.h>
END-of-oftpd/files/patch-ftp_command.c
echo x - oftpd/files/patch-af_portability.c
sed 's/^X//' >oftpd/files/patch-af_portability.c << 'END-of-oftpd/files/patch-af_portability.c'
X--- src/af_portability.h.old	Sat Mar 31 12:00:46 2001
X+++ src/af_portability.h	Sat Mar 31 12:01:00 2001
X@@ -2,6 +2,7 @@
X #define AF_PORTABILITY_H
X 
X #include <netinet/in.h>
X+#include <sys/types.h>
X #include <sys/socket.h>
X 
X /* _x_ must be a pointer to a sockaddr structure */
END-of-oftpd/files/patch-af_portability.c
echo x - oftpd/files/patch-ftp_listener.c
sed 's/^X//' >oftpd/files/patch-ftp_listener.c << 'END-of-oftpd/files/patch-ftp_listener.c'
X--- src/ftp_listener.c.old	Sat Mar 31 12:01:10 2001
X+++ src/ftp_listener.c	Sat Mar 31 12:01:24 2001
X@@ -3,6 +3,7 @@
X  */
X 
X #include <config.h>
X+#include <sys/types.h>
X #include <sys/socket.h>
X #include <netinet/in.h>
X #include <arpa/inet.h>
END-of-oftpd/files/patch-ftp_listener.c
echo x - oftpd/files/patch-ftp_session.c
sed 's/^X//' >oftpd/files/patch-ftp_session.c << 'END-of-oftpd/files/patch-ftp_session.c'
X--- src/ftp_session.c.orig	Thu Mar 29 00:41:18 2001
X+++ src/ftp_session.c	Sat Mar 31 12:07:49 2001
X@@ -3,13 +3,13 @@
X  */
X 
X #include <config.h>
X+#include <sys/types.h>
X #include <netinet/in.h>
X #include <string.h>
X #include <stdio.h>
X #include <stdarg.h>
X #include <sys/stat.h>
X #include <unistd.h>
X-#include <sys/types.h>
X #include <fcntl.h>
X #include <sys/socket.h>
X #include <errno.h>
END-of-oftpd/files/patch-ftp_session.c
echo x - oftpd/files/patch-configure
sed 's/^X//' >oftpd/files/patch-configure << 'END-of-oftpd/files/patch-configure'
X--- configure.old	Sat Mar 31 12:13:17 2001
X+++ configure	Sat Mar 31 12:14:16 2001
X@@ -1121,14 +1121,14 @@
X fi
X 
X 
X-echo $ac_n "checking for main in -lpthread""... $ac_c" 1>&6
X-echo "configure:1126: checking for main in -lpthread" >&5
X+echo $ac_n "checking for main with -pthread""... $ac_c" 1>&6
X+echo "configure:1126: checking for main with -pthread" >&5
X ac_lib_var=`echo pthread'_'main | sed 'y%./+-%__p_%'`
X if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
X   echo $ac_n "(cached) $ac_c" 1>&6
X else
X   ac_save_LIBS="$LIBS"
X-LIBS="-lpthread  $LIBS"
X+LIBS="-pthread  $LIBS"
X cat > conftest.$ac_ext <<EOF
X #line 1134 "configure"
X #include "confdefs.h"
X@@ -1158,7 +1158,7 @@
X #define $ac_tr_lib 1
X EOF
X 
X-  LIBS="-lpthread $LIBS"
X+  LIBS="-pthread $LIBS"
X 
X else
X   echo "$ac_t""no" 1>&6
X@@ -2311,14 +2311,14 @@
X fi
X done
X 
X-echo $ac_n "checking for pthread_create in -lpthread""... $ac_c" 1>&6
X-echo "configure:2316: checking for pthread_create in -lpthread" >&5
X+echo $ac_n "checking for pthread_create with -pthread""... $ac_c" 1>&6
X+echo "configure:2316: checking for pthread_create with -pthread" >&5
X ac_lib_var=`echo pthread'_'pthread_create | sed 'y%./+-%__p_%'`
X if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
X   echo $ac_n "(cached) $ac_c" 1>&6
X else
X   ac_save_LIBS="$LIBS"
X-LIBS="-lpthread  $LIBS"
X+LIBS="$LIBS"
X cat > conftest.$ac_ext <<EOF
X #line 2324 "configure"
X #include "confdefs.h"
X@@ -2352,7 +2352,7 @@
X #define $ac_tr_lib 1
X EOF
X 
X-  LIBS="-lpthread $LIBS"
X+  LIBS="$LIBS"
X 
X else
X   echo "$ac_t""no" 1>&6
END-of-oftpd/files/patch-configure
exit

>Release-Note:
>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?20010331115128.B73933C8E>