| # Copyright 1999-2013 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Id$ |
| |
| inherit eutils pam user |
| |
| DESCRIPTION="FTP layout package" |
| HOMEPAGE="https://www.gentoo.org/" |
| SRC_URI="" |
| |
| LICENSE="GPL-2" |
| SLOT="0" |
| KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd" |
| IUSE="pam" |
| |
| DEPEND="pam? ( virtual/pam ) |
| !<net-ftp/proftpd-1.2.10-r6 |
| !<net-ftp/pure-ftpd-1.0.20-r2 |
| !<net-ftp/vsftpd-2.0.3-r1" |
| |
| S=${WORKDIR} |
| |
| pkg_setup() { |
| # Check if home exists |
| local exists=false |
| [[ -d "${ROOT}home/ftp" ]] && exists=true |
| |
| # Add our default ftp user |
| enewgroup ftp 21 |
| enewuser ftp 21 -1 /home/ftp ftp |
| |
| # If home did not exist and does now then we created it in the enewuser |
| # command. Now we have to change it's permissions to something sane. |
| if [[ ${exists} == "false" && -d "${ROOT}home/ftp" ]] ; then |
| chown root:ftp "${ROOT}"home/ftp |
| fi |
| } |
| |
| src_install() { |
| # The ftpusers file is a list of people who are NOT allowed |
| # to use the ftp service. |
| insinto /etc |
| doins "${FILESDIR}/ftpusers" || die |
| |
| # Ideally we would create the home directory here with a dodir. |
| # But we cannot until bug #9849 is solved - so we kludge in pkg_postinst() |
| |
| cp "${FILESDIR}/ftp-pamd-include" "${T}" || die |
| if use elibc_FreeBSD; then |
| sed -i -e "/pam_listfile.so/s/^.*$/account required pam_ftpusers.so no_warn disallow/" \ |
| "${T}"/ftp-pamd-include || die |
| fi |
| newpamd "${T}"/ftp-pamd-include ftp |
| } |