diff options
Diffstat (limited to 'net-ftp/bsdftpd-ssl')
17 files changed, 354 insertions, 0 deletions
diff --git a/net-ftp/bsdftpd-ssl/Manifest b/net-ftp/bsdftpd-ssl/Manifest new file mode 100644 index 0000000..3939400 --- /dev/null +++ b/net-ftp/bsdftpd-ssl/Manifest @@ -0,0 +1,17 @@ +AUX auth.sslftp 935 RMD160 15e8e26956603a309519c580ec6adb8c9e2800e6 SHA1 c70ecfc35e91044a7087afe197c9c768b06591c6 SHA256 3b96a7a0a7c37ea29e90c45af9cdc7e441c1d93389a35d04ef93afc532768240 +AUX bsdftpd-ds-anonymous.patch.bz2 768 RMD160 499d6b90daf298aebfd12f218a16e864a3f48d88 SHA1 698017cdfff99cbc9677995613295e2792da3057 SHA256 97582e327cf06202db3206193cd84f5aae12c5943ae0e862dd616fadb68aa690 +AUX bsdftpd-ds-argmax.diff 589 RMD160 5c0e201c3f5bd581a0607d6fa19a23eeea43232e SHA1 c1ea10cf3dce478b11f294656c1d8359fe750602 SHA256 40e3c8bd365c9e93c2fab39878be735e8e6f138def824a079599fc10df6f9f02 +AUX bsdftpd-ds-cmdtab.diff 516 RMD160 2c4cff8ac85025a522a0f2752868cf1a631ecae4 SHA1 ead2dc44aea879e2dbe91e11acccc400ce8f08e2 SHA256 1981c8a6c67aec61311de88f2f5d8df8cb011bdff76bb5e4bf5d2acce5ba1d08 +AUX bsdftpd-ds-compile.patch 1898 RMD160 c37a1c5ca088e2b1e7efee5f9d424235aa7c7528 SHA1 234fec93670eae8bb28fe0a6b0b542bb79cec407 SHA256 6208ebb6a27794d108ecde2e5bad70952c15de57d91cfece5e6b47a47557fba1 +AUX bsdftpd-ds-extprog.patch.bz2 608 RMD160 22e4ac807cce0af2eab8587f4deec58c0d626d37 SHA1 dcc924792afdfadb598be87e2d1282f575c58563 SHA256 f30123fb91e16b572eb5803bf61f6b1a33ea212c419b7cac3fdd04f8c1938257 +AUX bsdftpd-ds-getline.diff 1767 RMD160 d2caa5da608963ca9a08768a3a877e9a81bf782e SHA1 eed7d26e9b37a09b2b336a827fbbde4d419d0ff6 SHA256 f3e8527df1649022882d702a53efb93a83d8640ecea5474032bf69ea4eb5a1b6 +AUX bsdftpd-ds-keypassword.patch.bz2 1162 RMD160 d96d3fa4f4a8f275104500df1f007b22a22a62c6 SHA1 d61f96bb29b49991c171c578b6eecdca78a0553a SHA256 fada73af7de8d9e9e4fc93bc2f93dfa5dac731d2161f6cab0bd67a94e49e2ee1 +AUX bsdftpd-ds-pport.patch.bz2 1210 RMD160 3013d11418562efadf1d6ddad070b7bc4aabf257 SHA1 a188fd76f9faf14b748c6c3910d0c52c3a0c3e17 SHA256 8354ea675c4503fd35a2c5f26cbdcc575e1ae403e14e5879b7cddc5731a8d87d +AUX bsdftpd-ds-termcap.patch.bz2 322 RMD160 fca285e05cd2b248be40c6862df3d77169999b87 SHA1 0b819f70ad062315c9a7cc81557e058d4b7836f4 SHA256 6703ebd7f61c7bdb5686754536be0b714eb4392036f332627dfea3f4613664d2 +AUX bsdftpd.pam 224 RMD160 172202763da083bcb02c0968531c11b428253d82 SHA1 e823192291fe8212078915b26a53d5eb2cc380e2 SHA256 5688e1e4b692047002e0b014022a52b7f2836ce25e30ee92eefac574916f6afd +AUX bsdftpd.sysconfig 297 RMD160 77dd2c9d061bd6f44678988cd2269e414ff52f11 SHA1 a932ebf5b269c738975ed68e2a01a77b9d812ea5 SHA256 8c6aa6eab45035df2a4416aa1350ed838972d3f3ea253f03449aca1b59639b1c +AUX bsdftpd.sysinit 657 RMD160 849752223533cc36ca3883adcf298ac239b31ef9 SHA1 ace30d1061b4cc565a07d81e7d2c52bad90b2bbd SHA256 1dd52acaee0aef4b42559de05416634fb71bc7a240d693890fd865e008670f28 +AUX x509.auth 83 RMD160 0670566f51e7eccb1312988e9a77cef02ca939c0 SHA1 0631ce725ff90217c50dc3d900669ffd5cbf0f7a SHA256 162055fedc8f3e3e7b74da581492ac38a8f347b8ef8d94f9505e196cc15e6175 +DIST bsdftpd-ssl-1.0.2.tar.bz2 267043 RMD160 f91098b477489ff522769b31e7d14fb0c86c5d51 SHA1 1c07ac55a0340df3b11600f67e2137d80d19daa0 SHA256 82876c16defb72237a1eaa3177b45b115b2bba9abf35294b81bf8e400792396d +EBUILD bsdftpd-ssl-1.0.2-r1.ebuild 1451 RMD160 fabf1d5c73268bedb4e092a8ebcabfa73f76d582 SHA1 d90d121d484e53d65c6904bebcefd5d5921a69e2 SHA256 7ba3e1eeb7fcdb547b3e5bc2b0324300ff661cc7fa509367ba424da02f238f83 +EBUILD bsdftpd-ssl-1.0.2-r2.ebuild 1668 RMD160 51b4f84e47e106023b8291e8adda531a838ae929 SHA1 e203711795e0850264c195e63bd6aebb3c84e7ee SHA256 7e43fdf772612d1db141b5847d79965faa4c1c9c7320f91ac00be01b6d27787a diff --git a/net-ftp/bsdftpd-ssl/bsdftpd-ssl-1.0.2-r1.ebuild b/net-ftp/bsdftpd-ssl/bsdftpd-ssl-1.0.2-r1.ebuild new file mode 100644 index 0000000..6ebae69 --- /dev/null +++ b/net-ftp/bsdftpd-ssl/bsdftpd-ssl-1.0.2-r1.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: + +inherit eutils + +DESCRIPTION="BSD SSL enabled FTP server" +SRC_URI="http://dside.dyndns.org/files/darklin/bsdftpd-ssl-1.0.2.tar.bz2" +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="amd64 x86" +RDEPEND="sys-libs/ncurses dev-util/byacc" + +src_unpack() { + unpack ${P}.tar.bz2 + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-keypassword.patch.bz2 + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-extprog.patch.bz2 + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-anonymous.patch.bz2 + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-pport.patch.bz2 + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-termcap.patch.bz2 + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-compile.patch +} + +src_compile() { + ./config.sh Linux + make || die +} + +src_install() { + into /usr + mkdir -p ${D}/usr/bin/ + mkdir -p ${D}/usr/sbin + make install DESTDIR=${D} INSTALLTOP=${D}/usr + mkdir -p ${D}/etc/init.d/ + mkdir -p ${D}/etc/conf.d/ + mkdir -p ${D}/etc/pam.d/ + + install -m 0755 ${FILESDIR}/bsdftpd.sysinit ${D}/etc/init.d/bsdftpd + install -m 0644 ${FILESDIR}/bsdftpd.sysconfig ${D}/etc/conf.d/bsdftpd + install -m 0644 ${FILESDIR}/bsdftpd.pam ${D}/etc/pam.d/ftpd + install -m 0755 ${FILESDIR}/auth.sslftp ${D}/usr/bin + install -m 0644 ${FILESDIR}/x509.auth ${D}/etc +} diff --git a/net-ftp/bsdftpd-ssl/bsdftpd-ssl-1.0.2-r2.ebuild b/net-ftp/bsdftpd-ssl/bsdftpd-ssl-1.0.2-r2.ebuild new file mode 100644 index 0000000..2748a8a --- /dev/null +++ b/net-ftp/bsdftpd-ssl/bsdftpd-ssl-1.0.2-r2.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: + +inherit eutils + +DESCRIPTION="BSD SSL enabled FTP server" +SRC_URI="http://dside.dyndns.org/files/darklin/bsdftpd-ssl-1.0.2.tar.bz2" +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="amd64 x86" +RDEPEND="sys-libs/ncurses dev-util/byacc" + +src_unpack() { + unpack ${P}.tar.bz2 + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-keypassword.patch.bz2 + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-extprog.patch.bz2 + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-anonymous.patch.bz2 + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-pport.patch.bz2 + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-termcap.patch.bz2 + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-compile.patch + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-argmax.diff + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-cmdtab.diff + EPATCH_OPTS="-p1 -d ${P}" epatch ${FILESDIR}/bsdftpd-ds-getline.diff +} + +src_compile() { + ./config.sh Linux + make || die +} + +src_install() { + into /usr + mkdir -p ${D}/usr/bin/ + mkdir -p ${D}/usr/sbin + make install DESTDIR=${D} INSTALLTOP=${D}/usr + mkdir -p ${D}/etc/init.d/ + mkdir -p ${D}/etc/conf.d/ + mkdir -p ${D}/etc/pam.d/ + + install -m 0755 ${FILESDIR}/bsdftpd.sysinit ${D}/etc/init.d/bsdftpd + install -m 0644 ${FILESDIR}/bsdftpd.sysconfig ${D}/etc/conf.d/bsdftpd + install -m 0644 ${FILESDIR}/bsdftpd.pam ${D}/etc/pam.d/ftpd + install -m 0755 ${FILESDIR}/auth.sslftp ${D}/usr/bin + install -m 0644 ${FILESDIR}/x509.auth ${D}/etc +} diff --git a/net-ftp/bsdftpd-ssl/files/auth.sslftp b/net-ftp/bsdftpd-ssl/files/auth.sslftp new file mode 100644 index 0000000..539140d --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/auth.sslftp @@ -0,0 +1,43 @@ +#! /usr/bin/perl + +# Output must be at least 8 bytes + +sub return_error { + print STDOUT "200\r\n\r\n"; + exit; +} + +sub return_ok { + $user=@_[0]; + print STDOUT "100\r\n$user\r\n"; + exit; +} + +$/="\r\n"; +$user=<STDIN>;chomp($user); +$/="\n"; +$mode=0; +while (<>) { + if (($mode==0)&&($_ =~ /-----BEGIN CERTIFICATE-----/)) { $mode = 1; } + elsif (($mode==1)&&($_ =~ /-----END CERTIFICATE-----/)) { $mode = 2; } + if ($mode) { + $_ =~ /^(.*)[\n\r]+$/; + $cert.=$1; + } + if ($mode==2) { last; } +} + +#$cert=join "", @cert_lines; +$cert =~ m/-----BEGIN CERTIFICATE-----(.*)-----END CERTIFICATE-----/; +$client_cert = $1; + +open(ucf, "/opt/ssl/user_certs/$user.crt") or return_error(); +@cert_lines=<ucf>; +chomp(@cert_lines); +$cert=join "", @cert_lines; +close(ucf); +$cert =~ m/-----BEGIN CERTIFICATE-----(.*)-----END CERTIFICATE-----/; +$user_cert = $1; + +if (($user_cert cmp $client_cert) == 0) { return_ok($user); } +return_error(); diff --git a/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-anonymous.patch.bz2 b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-anonymous.patch.bz2 Binary files differnew file mode 100644 index 0000000..0a18ecb --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-anonymous.patch.bz2 diff --git a/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-argmax.diff b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-argmax.diff new file mode 100644 index 0000000..8f425db --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-argmax.diff @@ -0,0 +1,17 @@ +diff -dPNur bsdftpd-ssl-1.0.2.orig/contrib/libbsdport/libc/gen/glob.c bsdftpd-ssl-1.0.2/contrib/libbsdport/libc/gen/glob.c +--- bsdftpd-ssl-1.0.2.orig/contrib/libbsdport/libc/gen/glob.c 2003-10-24 21:53:18.000000000 +0000 ++++ bsdftpd-ssl-1.0.2/contrib/libbsdport/libc/gen/glob.c 2012-01-13 20:16:21.000000000 +0000 +@@ -79,6 +79,13 @@ + #include <string.h> + #include <unistd.h> + ++#if defined(_SC_ARG_MAX) ++# if defined(ARG_MAX) ++# undef ARG_MAX ++# endif ++# define ARG_MAX sysconf (_SC_ARG_MAX) ++#endif ++ + #include "collate.h" + /* SKYNICK: from collate.c */ + int __collate_load_error = 1; diff --git a/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-cmdtab.diff b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-cmdtab.diff new file mode 100644 index 0000000..4ea1912 --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-cmdtab.diff @@ -0,0 +1,20 @@ +diff -dPNur bsdftpd-ssl-1.0.2.orig/ftp/ftp_var.h bsdftpd-ssl-1.0.2/ftp/ftp_var.h +--- bsdftpd-ssl-1.0.2.orig/ftp/ftp_var.h 2004-05-30 19:19:37.000000000 +0000 ++++ bsdftpd-ssl-1.0.2/ftp/ftp_var.h 2012-01-13 20:30:15.000000000 +0000 +@@ -61,7 +61,6 @@ + #endif /* LINUX */ + #endif /* !SMALL */ + +-#include "extern.h" + + #define HASHBYTES 1024 + #define FTPBUFLEN MAXPATHLEN + 200 +@@ -200,6 +199,8 @@ + struct macel macros[16]; + char macbuf[4096]; + ++#include "extern.h" ++ + #include "sslapp.h" + #include "ssl_port_ftps.h" + diff --git a/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-compile.patch b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-compile.patch new file mode 100644 index 0000000..e49d2ad --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-compile.patch @@ -0,0 +1,89 @@ +diff -dPNur bsdftpd-ssl-1.0.2/ftp/ftp.c bsdftpd-ssl-1.0.2-new/ftp/ftp.c +--- bsdftpd-ssl-1.0.2/ftp/ftp.c 2004-07-04 23:00:32.000000000 +0500 ++++ bsdftpd-ssl-1.0.2-new/ftp/ftp.c 2006-04-05 05:41:54.000000000 +0500 +@@ -1544,6 +1544,7 @@ + prt[1] &= 0xff; + error = 0; + epsv_done: ++ ; + } else + error = 1; + +@@ -1867,6 +1868,7 @@ + + return NULL; + default: ++ ; + } + + X509_free(x509_ssl_con); +@@ -1982,6 +1984,7 @@ + + return NULL; + default: ++ ; + } + + X509_free(x509_ssl_con); +diff -dPNur bsdftpd-ssl-1.0.2/ftp/util.c bsdftpd-ssl-1.0.2-new/ftp/util.c +--- bsdftpd-ssl-1.0.2/ftp/util.c 2004-05-31 03:24:47.000000000 +0500 ++++ bsdftpd-ssl-1.0.2-new/ftp/util.c 2006-04-05 05:42:14.000000000 +0500 +@@ -987,6 +987,7 @@ + ssl_log_msgn(bio_err,"Reason: Certificate revoked"); + break; + default: ++ ; + } + + warnx("TLS/SSL connection to server failed"); +diff -dPNur bsdftpd-ssl-1.0.2/ftpd/ftpd.c bsdftpd-ssl-1.0.2-new/ftpd/ftpd.c +--- bsdftpd-ssl-1.0.2/ftpd/ftpd.c 2006-04-05 04:55:31.000000000 +0500 ++++ bsdftpd-ssl-1.0.2-new/ftpd/ftpd.c 2006-04-05 04:57:30.000000000 +0500 +@@ -2322,6 +2322,7 @@ + SSL_get_shutdown(ssl_data_con); + break; + default: ++ ; + } + } + SSL_free(ssl_data_con); +@@ -2445,6 +2446,7 @@ + SSL_get_shutdown(ssl_data_con); + break; + default: ++ ; + } + } + SSL_free(ssl_data_con); +@@ -2696,6 +2698,7 @@ + + return NULL; + default: ++ ; + } + + X509_free(x509_ssl_con); +@@ -2857,6 +2860,7 @@ + + return NULL; + default: ++ ; + } + + X509_free(x509_ssl_con); +@@ -4185,6 +4189,7 @@ + SSL_get_shutdown(ssl_data_con); + break; + default: ++ ; + } + } + SSL_free(ssl_data_con); +@@ -4299,6 +4304,7 @@ + SSL_get_shutdown(ssl_data_con); + break; + default: ++ ; + } + } + SSL_free(ssl_data_con); diff --git a/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-extprog.patch.bz2 b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-extprog.patch.bz2 Binary files differnew file mode 100644 index 0000000..b473e30 --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-extprog.patch.bz2 diff --git a/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-getline.diff b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-getline.diff new file mode 100644 index 0000000..7aaf626 --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-getline.diff @@ -0,0 +1,45 @@ +diff -dPNur bsdftpd-ssl-1.0.2.orig/ftpd/extern.h bsdftpd-ssl-1.0.2/ftpd/extern.h +--- bsdftpd-ssl-1.0.2.orig/ftpd/extern.h 2004-04-18 12:20:14.000000000 +0000 ++++ bsdftpd-ssl-1.0.2/ftpd/extern.h 2012-01-13 20:21:33.000000000 +0000 +@@ -47,7 +47,7 @@ + void ftpd_logwtmp(char *, char *, struct sockaddr *addr); + int ftpd_pclose(FILE *); + FILE *ftpd_popen(char *, char *); +-char *getline(char *, int, FILE *); ++char *mygetline(char *, int, FILE *); + void lreply(int, const char *, ...); + void makedir(char *); + void nack(char *); +diff -dPNur bsdftpd-ssl-1.0.2.orig/ftpd/ftpcmd.y bsdftpd-ssl-1.0.2/ftpd/ftpcmd.y +--- bsdftpd-ssl-1.0.2.orig/ftpd/ftpcmd.y 2004-05-30 18:55:11.000000000 +0000 ++++ bsdftpd-ssl-1.0.2/ftpd/ftpcmd.y 2012-01-13 20:21:27.000000000 +0000 +@@ -1374,7 +1374,7 @@ + * getline - a hacked up version of fgets to ignore TELNET escape codes. + */ + char * +-getline(char *s, int n, FILE *iop) ++mygetline(char *s, int n, FILE *iop) + { + int c; + register char *cs; +@@ -1522,7 +1522,7 @@ + case CMD: + (void) signal(SIGALRM, toolong); + (void) alarm((unsigned) timeout); +- if (getline(cbuf, sizeof(cbuf)-1, stdin) == NULL) { ++ if (mygetline(cbuf, sizeof(cbuf)-1, stdin) == NULL) { + reply(221, "You could at least say goodbye."); + dologout(0); + } +diff -dPNur bsdftpd-ssl-1.0.2.orig/ftpd/ftpd.c bsdftpd-ssl-1.0.2/ftpd/ftpd.c +--- bsdftpd-ssl-1.0.2.orig/ftpd/ftpd.c 2012-01-13 19:55:37.000000000 +0000 ++++ bsdftpd-ssl-1.0.2/ftpd/ftpd.c 2012-01-13 20:21:48.000000000 +0000 +@@ -3750,7 +3750,7 @@ + tv.tv_usec=0; + if (select(fileno(stdin)+1, &mask, NULL, NULL, &tv)) { + #endif /*USE_SSL*/ +- if (getline(cp, 7, stdin) == NULL) { ++ if (mygetline(cp, 7, stdin) == NULL) { + reply(221, "You could at least say goodbye."); + dologout(0); + } diff --git a/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-keypassword.patch.bz2 b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-keypassword.patch.bz2 Binary files differnew file mode 100644 index 0000000..e3cea58 --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-keypassword.patch.bz2 diff --git a/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-pport.patch.bz2 b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-pport.patch.bz2 Binary files differnew file mode 100644 index 0000000..a105ddf --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-pport.patch.bz2 diff --git a/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-termcap.patch.bz2 b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-termcap.patch.bz2 Binary files differnew file mode 100644 index 0000000..a8a67cc --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/bsdftpd-ds-termcap.patch.bz2 diff --git a/net-ftp/bsdftpd-ssl/files/bsdftpd.pam b/net-ftp/bsdftpd-ssl/files/bsdftpd.pam new file mode 100644 index 0000000..836e5bb --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/bsdftpd.pam @@ -0,0 +1,5 @@ +#%PAM-1.0 +auth required /lib/security/pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed +auth required /lib/security/pam_shells.so +auth include system-auth +account include system-auth diff --git a/net-ftp/bsdftpd-ssl/files/bsdftpd.sysconfig b/net-ftp/bsdftpd-ssl/files/bsdftpd.sysconfig new file mode 100644 index 0000000..ae24158 --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/bsdftpd.sysconfig @@ -0,0 +1,7 @@ +BSDFTPDSSL_SSL_CERT=/opt/ssl/server_certs/server.crt +BSDFTPDSSL_SSL_KEY=/opt/ssl/server_keys/server.key +BSDFTPDSSL_SSL_PASSWORD=/etc/apc.pwd +BSDFTPDSSL_SSL_CHAIN=/opt/ssl/ca/chain.crt +BSDFTPDSSL_SSL_USERS=/opt/ssl/user_certs/ +BSDFTPDSSL_FIRST_PASSIVE_PORT=40000 +BSDFTPDSSL_LAST_PASSIVE_PORT=45000 diff --git a/net-ftp/bsdftpd-ssl/files/bsdftpd.sysinit b/net-ftp/bsdftpd-ssl/files/bsdftpd.sysinit new file mode 100644 index 0000000..942c062 --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/bsdftpd.sysinit @@ -0,0 +1,20 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: + +depend() { + need net +} + +start() { + ebegin "Starting BSD FTPD - SSL" + ftpd -h -S wu-ext -X wu-ext -l -l -B $BSDFTPDSSL_FIRST_PASSIVE_PORT:$BSDFTPDSSL_LAST_PASSIVE_PORT -D -z secure -z cert=$BSDFTPDSSL_SSL_CERT -z key=$BSDFTPDSSL_SSL_KEY -z verify=1 -z auth=1 -z CAfile=$BSDFTPDSSL_SSL_CHAIN -z CApath=$BSDFTPDSSL_SSL_USERS -z certsok -z KEYpassword=$BSDFTPDSSL_SSL_PASSWORD -z defau -z refnu -z cipher=HIGH + eend $? +} + +stop() { + ebegin "Stopping BSD FTPD - SSL" + killall ${KILL_OPTS} ftpd + eend $? +} diff --git a/net-ftp/bsdftpd-ssl/files/x509.auth b/net-ftp/bsdftpd-ssl/files/x509.auth new file mode 100644 index 0000000..06a5890 --- /dev/null +++ b/net-ftp/bsdftpd-ssl/files/x509.auth @@ -0,0 +1,2 @@ +ftpd:allow:/CN:-p/usr/bin/perl /usr/bin/auth.sslftp +ftpd:allow:*:-f~/certs/ftp.crt |