From 5d988967f1bc1baf24ec09dbafa403f6b85982d4 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Mon, 24 Jul 2006 18:45:15 +0000 Subject: [PATCH] port vsftpd to buildroot-ng SVN-Revision: 4266 --- net/vsftpd/Makefile | 59 ++++++++++++++++++++++++++++++ net/vsftpd/files/vsftpd.conf | 17 +++++++++ net/vsftpd/files/vsftpd.init | 15 ++++++++ net/vsftpd/patches/chroot.patch | 11 ++++++ net/vsftpd/patches/destdir.patch | 47 ++++++++++++++++++++++++ net/vsftpd/patches/find-libs.patch | 14 +++++++ 6 files changed, 163 insertions(+) create mode 100644 net/vsftpd/Makefile create mode 100644 net/vsftpd/files/vsftpd.conf create mode 100644 net/vsftpd/files/vsftpd.init create mode 100644 net/vsftpd/patches/chroot.patch create mode 100644 net/vsftpd/patches/destdir.patch create mode 100644 net/vsftpd/patches/find-libs.patch diff --git a/net/vsftpd/Makefile b/net/vsftpd/Makefile new file mode 100644 index 0000000000..174f1eea95 --- /dev/null +++ b/net/vsftpd/Makefile @@ -0,0 +1,59 @@ +# +# Copyright (C) 2006 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=vsftpd +PKG_VERSION:=2.0.4 +PKG_RELEASE:=1 + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=ftp://vsftpd.beasts.org/users/cevans/ +PKG_MD5SUM:=c0bf8c7b8e15ab15827172786fc56115 +PKG_CAT:=zcat + +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install + +include $(INCLUDE_DIR)/package.mk + +define Package/vsftpd + SECTION:=net + CATEGORY:=Network + TITLE:=A fast and secure FTP server + DESCRIPTION:=A fast and secure FTP server. + URL:=http://vsftpd.beasts.org/ +endef + +define Package/vsftpd/conffiles +/etc/vsftpd.conf +endef + +define Build/Configure +endef + +define Build/Compile + rm -rf $(PKG_INSTALL_DIR) + mkdir -p $(PKG_INSTALL_DIR) + $(MAKE) -C $(PKG_BUILD_DIR) \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS)" \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + vsftpd install +endef + +define Package/vsftpd/install + install -d -m0755 $(1)/etc + install -m0644 ./files/vsftpd.conf $(1)/etc/vsftpd.conf + install -d -m0755 $(1)/etc/init.d + install -m0755 ./files/vsftpd.init $(1)/etc/init.d/vsftpd + install -d -m0755 $(1)/usr/sbin + $(CP) $(PKG_INSTALL_DIR)/usr/sbin/vsftpd $(1)/usr/sbin/ +endef + +$(eval $(call BuildPackage,vsftpd)) diff --git a/net/vsftpd/files/vsftpd.conf b/net/vsftpd/files/vsftpd.conf new file mode 100644 index 0000000000..f3ba34f507 --- /dev/null +++ b/net/vsftpd/files/vsftpd.conf @@ -0,0 +1,17 @@ +background=YES +listen=YES +anonymous_enable=NO +local_enable=YES +write_enable=YES +local_umask=022 +check_shell=NO +#dirmessage_enable=YES +#ftpd_banner=Welcome to blah FTP service. +session_support=NO +#syslog_enable=YES +#userlist_enable=YES +#userlist_deny=NO +#userlist_file=/etc/vsftpd.users +#xferlog_enable=YES +#xferlog_file=/var/log/vsftpd.log +#xferlog_std_format=YES diff --git a/net/vsftpd/files/vsftpd.init b/net/vsftpd/files/vsftpd.init new file mode 100644 index 0000000000..4d4f4f240d --- /dev/null +++ b/net/vsftpd/files/vsftpd.init @@ -0,0 +1,15 @@ +#!/bin/sh + +RUN_D=/var/run/vsftpd + +case $1 in + start) + [ -d $RUN_D ] || mkdir -p $RUN_D + vsftpd + ;; + *) + echo "usage: $0 (start)" + exit 1 +esac + +exit $? diff --git a/net/vsftpd/patches/chroot.patch b/net/vsftpd/patches/chroot.patch new file mode 100644 index 0000000000..e80d1377b3 --- /dev/null +++ b/net/vsftpd/patches/chroot.patch @@ -0,0 +1,11 @@ +--- vsftpd-2.0.4-orig/tunables.c 2006-01-07 20:32:44.000000000 +0100 ++++ vsftpd-2.0.4/tunables.c 2006-01-11 18:25:15.000000000 +0100 +@@ -92,7 +92,7 @@ + unsigned int tunable_max_per_ip = 0; + unsigned int tunable_trans_chunk_size = 0; + +-const char* tunable_secure_chroot_dir = "/usr/share/empty"; ++const char* tunable_secure_chroot_dir = "/var/run/vsftpd"; + const char* tunable_ftp_username = "ftp"; + const char* tunable_chown_username = "root"; + const char* tunable_xferlog_file = "/var/log/xferlog"; diff --git a/net/vsftpd/patches/destdir.patch b/net/vsftpd/patches/destdir.patch new file mode 100644 index 0000000000..13f3954753 --- /dev/null +++ b/net/vsftpd/patches/destdir.patch @@ -0,0 +1,47 @@ +--- vsftpd-2.0.4-orig/Makefile 2005-06-29 00:24:03.000000000 +0200 ++++ vsftpd-2.0.4/Makefile 2006-01-11 18:29:12.000000000 +0100 +@@ -17,6 +17,8 @@ + ssl.o sysutil.o sysdeputil.o + + ++DESTDIR = ++ + .c.o: + $(CC) -c $*.c $(CFLAGS) $(IFLAGS) + +@@ -24,21 +26,20 @@ + $(CC) -o vsftpd $(OBJS) $(LINK) $(LIBS) $(LDFLAGS) + + install: +- if [ -x /usr/local/sbin ]; then \ +- $(INSTALL) -m 755 vsftpd /usr/local/sbin/vsftpd; \ +- else \ +- $(INSTALL) -m 755 vsftpd /usr/sbin/vsftpd; fi +- if [ -x /usr/local/man ]; then \ +- $(INSTALL) -m 644 vsftpd.8 /usr/local/man/man8/vsftpd.8; \ +- $(INSTALL) -m 644 vsftpd.conf.5 /usr/local/man/man5/vsftpd.conf.5; \ +- elif [ -x /usr/share/man ]; then \ +- $(INSTALL) -m 644 vsftpd.8 /usr/share/man/man8/vsftpd.8; \ +- $(INSTALL) -m 644 vsftpd.conf.5 /usr/share/man/man5/vsftpd.conf.5; \ +- else \ +- $(INSTALL) -m 644 vsftpd.8 /usr/man/man8/vsftpd.8; \ +- $(INSTALL) -m 644 vsftpd.conf.5 /usr/man/man5/vsftpd.conf.5; fi +- if [ -x /etc/xinetd.d ]; then \ +- $(INSTALL) -m 644 xinetd.d/vsftpd /etc/xinetd.d/vsftpd; fi ++ mkdir -p $(DESTDIR)/usr/sbin ++ $(INSTALL) -m 755 vsftpd $(DESTDIR)/usr/sbin/ ++ mkdir -p $(DESTDIR)/usr/share/man/man8 ++ $(INSTALL) -m 644 vsftpd.8 $(DESTDIR)/usr/share/man/man8/ ++ mkdir -p $(DESTDIR)/usr/share/man/man5 ++ $(INSTALL) -m 644 vsftpd.conf.5 $(DESTDIR)/usr/share/man/man5/ ++ mkdir -p $(DESTDIR)/etc/xinetd.d ++ $(INSTALL) -m 644 xinetd.d/vsftpd $(DESTDIR)/etc/xinetd.d/ ++ ++uninstall: ++ rm -f $(DESTDIR)/usr/sbin/vsftpd ++ rm -f $(DESTDIR)/usr/share/man/man8/vsftpd.8 ++ rm -f $(DESTDIR)/usr/share/man/man5/vsftpd.conf.5 ++ rm -f $(DESTDIR)/etc/xinetd.d/vsftpd + + clean: + rm -f *.o *.swp vsftpd diff --git a/net/vsftpd/patches/find-libs.patch b/net/vsftpd/patches/find-libs.patch new file mode 100644 index 0000000000..ae8e9f7dbf --- /dev/null +++ b/net/vsftpd/patches/find-libs.patch @@ -0,0 +1,14 @@ +diff -ruN vsftpd-1.2.2-orig/Makefile vsftpd-1.2.2-3/Makefile +--- vsftpd-1.2.2-orig/Makefile 2003-09-15 13:41:58.000000000 +0200 ++++ vsftpd-1.2.2-3/Makefile 2005-03-09 22:23:12.000000000 +0100 +@@ -5,8 +5,8 @@ + #CFLAGS = -g + CFLAGS = -O2 -Wall -W -Wshadow #-pedantic -Werror -Wconversion + +-LIBS = `./vsf_findlibs.sh` +-LINK = -Wl,-s ++LIBS = -lcrypt -lnsl ++LINK = + + OBJS = main.o utility.o prelogin.o ftpcmdio.o postlogin.o privsock.o \ + tunables.o ftpdataio.o secbuf.o ls.o \ -- 2.30.2