#############################################################
TARGETS:=host-sed openwrt-code.bin
-PACKAGES:=oidentd iproute2 kmod-sched wshaper zlib openssl openssh pppoecd dropbear chillispot dhcp-fwd ip6tables kmod-ipt6 kmod-ipv6 kmod-nfs kmod-ppp-async kmod-ppp-mppe-mppc ppp pppoecd pptp-server kmod-tun fprobe libpcap libpthread pptp-client
+PACKAGES:=oidentd iproute2 kmod-sched wshaper zlib openssl openssh pppoecd dropbear chillispot dhcp-fwd ip6tables kmod-ipt6 kmod-ipv6 kmod-nfs kmod-ppp-async kmod-ppp-mppe-mppc ppp pppoecd pptp-server kmod-tun fprobe libpcap libpthread pptp-client vsftpd
#############################################################
#
--- /dev/null
+# vsftpd
+
+VSFTPD_VERSION:=1.2.2
+VSFTPD_RELEASE:=1
+
+VSFTPD_SOURCE:=vsftpd-$(VSFTPD_VERSION).tar.gz
+VSFTPD_SITE:=ftp://vsftpd.beasts.org/users/cevans/
+VSFTPD_DIR:=$(BUILD_DIR)/vsftpd-$(VSFTPD_VERSION)
+VSFTPD_CAT:=zcat
+
+VSFTPD_PATCH_DIR := $(SOURCE_DIR)/openwrt/patches/vsftpd
+
+VSFTPD_BUILD_DIR := $(BUILD_DIR)/vsftpd_$(VSFTPD_VERSION)-$(VSFTPD_RELEASE)
+VSFTPD_IPK_DIR := $(OPENWRT_IPK_DIR)/vsftpd
+VSFTPD_IPK := $(VSFTPD_BUILD_DIR)_$(ARCH).ipk
+
+
+$(DL_DIR)/$(VSFTPD_SOURCE):
+ $(WGET) -P $(DL_DIR) $(VSFTPD_SITE)/$(VSFTPD_SOURCE)
+
+
+$(VSFTPD_DIR)/.stamp-unpacked: $(DL_DIR)/$(VSFTPD_SOURCE)
+ $(VSFTPD_CAT) $(DL_DIR)/$(VSFTPD_SOURCE) | tar -C $(BUILD_DIR) -xvf -
+
+ touch $(VSFTPD_DIR)/.stamp-unpacked
+
+
+$(VSFTPD_DIR)/.stamp-patched: $(VSFTPD_DIR)/.stamp-unpacked
+ $(SOURCE_DIR)/patch-kernel.sh $(VSFTPD_DIR) $(VSFTPD_PATCH_DIR)
+
+ touch $(VSFTPD_DIR)/.stamp-patched
+
+
+$(VSFTPD_DIR)/.stamp-built: $(VSFTPD_DIR)/.stamp-patched
+ cd $(VSFTPD_DIR) ; \
+ $(MAKE) \
+ $(TARGET_CONFIGURE_OPTS) \
+ CFLAGS="$(TARGET_CFLAGS)" \
+
+ touch $(VSFTPD_DIR)/.stamp-built
+
+
+$(VSFTPD_BUILD_DIR): $(VSFTPD_DIR)/.stamp-built
+ mkdir -p $(VSFTPD_BUILD_DIR)
+
+ install -m0755 -d $(VSFTPD_BUILD_DIR)/usr/sbin
+ install -m0755 $(VSFTPD_DIR)/vsftpd $(VSFTPD_BUILD_DIR)/usr/sbin/
+
+ install -m0755 -d $(VSFTPD_BUILD_DIR)/etc
+ install -m0644 $(VSFTPD_IPK_DIR)/root/etc/vsftpd.conf $(VSFTPD_BUILD_DIR)/etc/
+ install -m0755 -d $(VSFTPD_BUILD_DIR)/etc/init.d
+ install -m0755 $(VSFTPD_IPK_DIR)/root/etc/init.d/vsftpd $(VSFTPD_BUILD_DIR)/etc/init.d/
+
+ $(STRIP) $(VSFTPD_BUILD_DIR)/usr/sbin/*
+
+
+$(VSFTPD_IPK): $(VSFTPD_BUILD_DIR)
+ cp -a $(VSFTPD_IPK_DIR)/CONTROL $(VSFTPD_BUILD_DIR)/
+ perl -pi -e "s/^Vers.*:.*$$/Version: $(VSFTPD_VERSION)-$(VSFTPD_RELEASE)/" $(VSFTPD_BUILD_DIR)/CONTROL/control
+ perl -pi -e "s/^Arch.*:.*$$/Architecture: $(ARCH)/" $(VSFTPD_BUILD_DIR)/CONTROL/control
+ cd $(BUILD_DIR); $(IPKG_BUILD) $(VSFTPD_BUILD_DIR)
+
+
+vsftpd-source: $(DL_DIR)/$(VSFTPD_SOURCE)
+
+vsftpd-ipk: ipkg-utils $(VSFTPD_IPK)
+
+vsftpd-clean:
+ rm -rf $(VSFTPD_DIR)
+ rm -rf $(VSFTPD_BUILD_DIR)
+ rm -rf $(VSFTPD_IPK)
--- /dev/null
+diff -ruN vsftpd-1.2.2-old/Makefile vsftpd-1.2.2-new/Makefile
+--- vsftpd-1.2.2-old/Makefile 2003-09-15 13:41:58.000000000 +0200
++++ vsftpd-1.2.2-new/Makefile 2004-05-25 00:25:37.000000000 +0200
+@@ -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 \
+diff -ruN vsftpd-1.2.2-old/tunables.c vsftpd-1.2.2-new/tunables.c
+--- vsftpd-1.2.2-old/tunables.c 2004-04-20 02:25:05.000000000 +0200
++++ vsftpd-1.2.2-new/tunables.c 2004-05-25 00:07:19.000000000 +0200
+@@ -78,7 +78,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";