From 220f914135c967aeb05e745c9e3c8555330de830 Mon Sep 17 00:00:00 2001
From: Cecil Hugh Watson <knoppmyth@gmail.com>
Date: Sat, 6 Jun 2009 00:03:31 -0700
Subject: Initial inclusion of vsftpd.

---
 abs/extra-testing/community/vsftpd/PKGBUILD       | 52 +++++++++++++++++++++++
 abs/extra-testing/community/vsftpd/run            | 13 ++++++
 abs/extra-testing/community/vsftpd/vsftpd.d       | 40 +++++++++++++++++
 abs/extra-testing/community/vsftpd/vsftpd.install | 22 ++++++++++
 abs/extra-testing/community/vsftpd/vsftpd.xinetd  | 10 +++++
 5 files changed, 137 insertions(+)
 create mode 100644 abs/extra-testing/community/vsftpd/PKGBUILD
 create mode 100644 abs/extra-testing/community/vsftpd/run
 create mode 100644 abs/extra-testing/community/vsftpd/vsftpd.d
 create mode 100644 abs/extra-testing/community/vsftpd/vsftpd.install
 create mode 100644 abs/extra-testing/community/vsftpd/vsftpd.xinetd

diff --git a/abs/extra-testing/community/vsftpd/PKGBUILD b/abs/extra-testing/community/vsftpd/PKGBUILD
new file mode 100644
index 0000000..3c4213e
--- /dev/null
+++ b/abs/extra-testing/community/vsftpd/PKGBUILD
@@ -0,0 +1,52 @@
+# $Id: PKGBUILD 29700 2009-03-11 22:18:56Z hugo $
+# Maintainer: Andreas Radke <andyrtr@archlinux.org>
+# Contributor: judd <jvinet@zeroflux.org>
+
+pkgname=vsftpd
+pkgver=2.1.0
+pkgrel=3
+pkgdesc="Very Secure FTP daemon"
+arch=('i686' 'x86_64')
+license=('GPL')
+backup=(etc/vsftpd.conf etc/xinetd.d/vsftpd)
+url="http://vsftpd.beasts.org/"
+#makedepends=('vim')
+depends=('glibc' 'pam' 'tcp_wrappers>=7.6-8' 'openssl>=0.9.8j-1' 'libcap>=2.16')
+install=vsftpd.install
+source=(ftp://vsftpd.beasts.org/users/cevans/vsftpd-$pkgver.tar.gz \
+        vsftpd.xinetd vsftpd.d run)
+md5sums=('7890b54e7ffa6106ffbdfda53f47fa41'
+         'b07fd4609c70063c1d6b20142910c1a6'
+         'e46ed8e4c4a6e6a3de59f60b98e4f569'
+	 '8abbed7cc75f9a9d2944e0e83c8dd90d')
+
+build() {
+  cd ${srcdir}/${pkgname}-${pkgver}
+  # build-time config
+  sed \
+    -e 's|^#undef VSF_BUILD_TCPWRAPPERS$|#define VSF_BUILD_TCPWRAPPERS|' \
+    -e 's|^#undef VSF_BUILD_SSL$|#define VSF_BUILD_SSL|' \
+    -i builddefs.h
+  make CFLAGS="${CFLAGS}" || return 1
+  install -D -m755 vsftpd ${pkgdir}/usr/sbin/vsftpd || return 1
+  install -D -m644 vsftpd.conf ${pkgdir}/etc/vsftpd.conf || return 1
+  install -D -m644 vsftpd.8 ${pkgdir}/usr/share/man/man8/vsftpd.8 || return 1
+  install -D -m644 vsftpd.conf.5 ${pkgdir}/usr/share/man/man5/vsftpd.conf.5 || return 1
+  install -D -m644 ../vsftpd.xinetd ${pkgdir}/etc/xinetd.d/vsftpd  || return 1
+  install -D -m755 ../vsftpd.d ${pkgdir}/etc/rc.d/vsftpd || return 1
+  mkdir -p $startdir/pkg/usr/share/empty
+#  ex ${pkgdir}/etc/vsftpd.conf <<_EOF
+#2
+#i
+##
+## Use this to use vsftpd in standalone mode, otherwise it runs through (x)inetd
+##listen=YES
+#.
+#w
+#q
+#_EOF
+#}
+# Below added for LinHES
+  mkdir -p $startdir/pkg/etc/sv/vsftpd/supervise
+  cp $startdir/src/run $startdir/pkg/etc/sv/vsftpd/
+}
diff --git a/abs/extra-testing/community/vsftpd/run b/abs/extra-testing/community/vsftpd/run
new file mode 100644
index 0000000..1fd5202
--- /dev/null
+++ b/abs/extra-testing/community/vsftpd/run
@@ -0,0 +1,13 @@
+#!/bin/sh
+exec 2>&1
+. /etc/profile
+. /etc/systemconfig
+export TERM=linux
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+stat_runit "Starting VSFTPD"
+export HOME=/root
+
+# Start vsftpd
+/usr/sbin/vsftpd /etc/vsftpd.conf
diff --git a/abs/extra-testing/community/vsftpd/vsftpd.d b/abs/extra-testing/community/vsftpd/vsftpd.d
new file mode 100644
index 0000000..b43a6d0
--- /dev/null
+++ b/abs/extra-testing/community/vsftpd/vsftpd.d
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/vsftpd`
+case "$1" in
+	start)
+		stat_busy "Starting vsftpd FTP Daemon"
+		if [ -z "$PID" ]; then 
+			/usr/sbin/vsftpd &
+			PID=`pidof -o %PPID /usr/sbin/vsftpd`
+			if [ -z $PID ]; then
+				stat_fail
+			else
+				add_daemon vsftpd
+				stat_done
+			fi
+		else
+			stat_fail
+		fi
+	;;
+	stop)
+		stat_busy "Stopping vsftpd FTP Daemon"
+		[ ! -z "$PID" ]  && kill $PID &> /dev/null
+		if [ $? -gt 0 ]; then
+			stat_fail
+		else
+			rm_daemon vsftpd
+			stat_done
+		fi
+	;;
+	restart)
+		$0 stop
+		sleep 1
+		$0 start
+	;;
+	*)
+		echo "usage: $0 {start|stop|restart}"  
+esac
diff --git a/abs/extra-testing/community/vsftpd/vsftpd.install b/abs/extra-testing/community/vsftpd/vsftpd.install
new file mode 100644
index 0000000..3bbb2cc
--- /dev/null
+++ b/abs/extra-testing/community/vsftpd/vsftpd.install
@@ -0,0 +1,22 @@
+# arg 1:  the new package version
+post_install() {
+  if [ -f lib/modules/`uname -r`/kernel/security/capability.ko ]; then
+    echo ">>> It appears that your current kernel has linux security"
+    echo ">>> capabilities built as a module.  vsftpd requires this"
+    echo ">>> functionality to operate."
+    echo ">>>"
+    echo ">>> To activate the module, please load it now (modprobe capability)."
+    echo ">>> Also, you should add it to your MODULES array in rc.conf, so"
+    echo ">>> it will be activated automatically at boot-up."
+  fi
+# Below added for LinHES
+  add_service.sh vsftpd
+}
+
+post_upgrade() {
+  post_install $1
+}
+
+post_remove() {
+	remove_service.sh vsftpd
+}
diff --git a/abs/extra-testing/community/vsftpd/vsftpd.xinetd b/abs/extra-testing/community/vsftpd/vsftpd.xinetd
new file mode 100644
index 0000000..eff2eb3
--- /dev/null
+++ b/abs/extra-testing/community/vsftpd/vsftpd.xinetd
@@ -0,0 +1,10 @@
+service ftp
+{
+        socket_type             = stream
+        wait                    = no
+        user                    = root
+        server                  = /usr/sbin/vsftpd
+        log_on_success  += HOST DURATION
+        log_on_failure  += HOST
+        disable                 = yes
+}
-- 
cgit v0.12

