aboutsummaryrefslogtreecommitdiff
path: root/ftp/bsdftpd-ssl
diff options
context:
space:
mode:
authorLi-Wen Hsu <lwhsu@FreeBSD.org>2012-06-26 17:11:21 +0000
committerLi-Wen Hsu <lwhsu@FreeBSD.org>2012-06-26 17:11:21 +0000
commit5c8564e8a3f07366d90df303009755d95760696a (patch)
tree65832945e180de9461cf7772a6cc858d68022b06 /ftp/bsdftpd-ssl
parent2812ddbe36527133f221725db845ec0f088276bc (diff)
downloadports-5c8564e8a3f07366d90df303009755d95760696a.tar.gz
ports-5c8564e8a3f07366d90df303009755d95760696a.zip
Notes
Diffstat (limited to 'ftp/bsdftpd-ssl')
-rw-r--r--ftp/bsdftpd-ssl/Makefile20
-rw-r--r--ftp/bsdftpd-ssl/files/patch-ftpd-logwtmp.c72
-rw-r--r--ftp/bsdftpd-ssl/files/patch-gcc421
-rw-r--r--ftp/bsdftpd-ssl/pkg-plist12
4 files changed, 88 insertions, 37 deletions
diff --git a/ftp/bsdftpd-ssl/Makefile b/ftp/bsdftpd-ssl/Makefile
index 01d798a1d811..0af9302d8e1b 100644
--- a/ftp/bsdftpd-ssl/Makefile
+++ b/ftp/bsdftpd-ssl/Makefile
@@ -7,25 +7,26 @@
PORTNAME= bsdftpd-ssl
PORTVERSION= 1.1.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= ftp
-MASTER_SITES= http://bsdftpd.org/files/bsdftpd-ssl/archive/1.1/src/
-DISTNAME= bsdftpd-ssl-${PORTVERSION}
+MASTER_SITES= http://bsdftpd.org/files/bsdftpd-ssl/archive/1.1/src/ \
+ http://www.sourcefiles.org/System/Daemons/FTP/
+.if defined(CLIENT_ONLY)
+PKGNAMESUFFIX= -client
+.endif
MAINTAINER= skynick@mail.sc.ru
+COMMENT= Secure FTP server with the TLS/SSL support
+.if defined(CLIENT_ONLY)
+COMMENT= FTP command-line client utility with the TLS/SSL support
+.endif
USE_OPENSSL= yes
.include <bsd.port.pre.mk>
-.if ${OSVERSION} > 900007
-BROKEN= fails to build with new utmpx
-.endif
-
# Client only part
.if defined(CLIENT_ONLY)
-PKGNAMESUFFIX= -client
-COMMENT= FTP command-line client utility with the TLS/SSL support
DESCR= ${FILESDIR}/pkg-descr.client
PLIST= ${FILESDIR}/pkg-plist.client
.endif
@@ -33,7 +34,6 @@ PLIST= ${FILESDIR}/pkg-plist.client
MAN1= ftps.1
# Server part
.if !defined(CLIENT_ONLY)
-COMMENT= Secure FTP server with the TLS/SSL support
MAN5= ftpchroot.5 xferlog.5
MAN8= ftpd.8
MLINKS= ftpd.8 ftpd-ssl.8 ftpchroot.5 ftpchroot-ssl.5
diff --git a/ftp/bsdftpd-ssl/files/patch-ftpd-logwtmp.c b/ftp/bsdftpd-ssl/files/patch-ftpd-logwtmp.c
new file mode 100644
index 000000000000..1347aa3b665a
--- /dev/null
+++ b/ftp/bsdftpd-ssl/files/patch-ftpd-logwtmp.c
@@ -0,0 +1,72 @@
+diff -urN bsdftpd-ssl-1.1.0.ORI/ftpd/logwtmp.c ftpd/logwtmp.c
+--- bsdftpd-ssl-1.1.0.ORI/ftpd/logwtmp.c 2004-12-20 02:44:42.000000000 +0800
++++ ftpd/logwtmp.c 2012-06-15 15:34:03.000000000 +0800
+@@ -48,13 +48,18 @@
+ #include <arpa/inet.h>
+ #include <sys/socket.h>
+
++#include <sys/param.h>
++#if __FreeBSD_version < 900007
+ #include <fcntl.h>
+ #include <time.h>
+-#if 0 /* Original FreeBSD 5.0 code */
++#if 1 /* Original FreeBSD 5.0 code */
+ #include <timeconv.h>
+ #endif
+ #include <netdb.h>
+ #include <utmp.h>
++#else
++#include <utmpx.h>
++#endif
+ #include <unistd.h>
+ #include <stdio.h>
+ #include <string.h>
+@@ -63,6 +68,7 @@
+
+ #include <port_base.h>
+
++#ifndef _UTMPX_H_
+ static int fd = -1;
+
+ /*
+@@ -94,7 +100,7 @@
+ (void)strncpy(ut.ut_line, line, sizeof(ut.ut_line));
+ (void)strncpy(ut.ut_name, name, sizeof(ut.ut_name));
+ (void)strncpy(ut.ut_host, host, sizeof(ut.ut_host));
+-#if 0 /* Original FreeBSD 5.0 code */
++#if 1 /* Original FreeBSD 5.0 code */
+ ut.ut_time = _time_to_time32(time(NULL));
+ #else /* Portable code from FreeBSD 4.8 */
+ (void)time(&ut.ut_time);
+@@ -104,3 +110,31 @@
+ (void)ftruncate(fd, buf.st_size);
+ }
+ }
++#else /* Original FreeBSD 9.0 code */
++void
++ftpd_logwtmp(char *id, char *user, struct sockaddr *addr)
++{
++ struct utmpx ut;
++
++ memset(&ut, 0, sizeof(ut));
++
++ if (user != NULL) {
++ /* Log in. */
++ ut.ut_type = USER_PROCESS;
++ (void)strncpy(ut.ut_user, user, sizeof(ut.ut_user));
++ if (addr != NULL)
++ realhostname_sa(ut.ut_host, sizeof(ut.ut_host),
++ addr, addr->sa_len);
++ } else {
++ /* Log out. */
++ ut.ut_type = DEAD_PROCESS;
++ }
++
++ ut.ut_pid = getpid();
++ gettimeofday(&ut.ut_tv, NULL);
++ (void)strncpy(ut.ut_id, id, sizeof(ut.ut_id));
++ (void)strncpy(ut.ut_line, "ftpd", sizeof(ut.ut_line));
++
++ pututxline(&ut);
++}
++#endif
diff --git a/ftp/bsdftpd-ssl/files/patch-gcc4 b/ftp/bsdftpd-ssl/files/patch-gcc4
index 1f3ba1d36fc9..0b8c8f53a10b 100644
--- a/ftp/bsdftpd-ssl/files/patch-gcc4
+++ b/ftp/bsdftpd-ssl/files/patch-gcc4
@@ -151,27 +151,6 @@ diff -urN bsdftpd-ssl-1.1.0.ORI/ftpd/ftpd.c ftpd/ftpd.c
char *p, *a;
if (pdata >= 0) /* close old port if one set */
-diff -urN bsdftpd-ssl-1.1.0.ORI/ftpd/logwtmp.c ftpd/logwtmp.c
---- bsdftpd-ssl-1.1.0.ORI/ftpd/logwtmp.c 2004-12-19 21:44:42.000000000 +0300
-+++ ftpd/logwtmp.c 2007-08-26 15:37:16.000000000 +0400
-@@ -50,7 +50,7 @@
-
- #include <fcntl.h>
- #include <time.h>
--#if 0 /* Original FreeBSD 5.0 code */
-+#if 1 /* Original FreeBSD 5.0 code */
- #include <timeconv.h>
- #endif
- #include <netdb.h>
-@@ -94,7 +94,7 @@
- (void)strncpy(ut.ut_line, line, sizeof(ut.ut_line));
- (void)strncpy(ut.ut_name, name, sizeof(ut.ut_name));
- (void)strncpy(ut.ut_host, host, sizeof(ut.ut_host));
--#if 0 /* Original FreeBSD 5.0 code */
-+#if 1 /* Original FreeBSD 5.0 code */
- ut.ut_time = _time_to_time32(time(NULL));
- #else /* Portable code from FreeBSD 4.8 */
- (void)time(&ut.ut_time);
diff -urN bsdftpd-ssl-1.1.0.ORI/port/bsd_prog.mk port/bsd_prog.mk
--- bsdftpd-ssl-1.1.0.ORI/port/bsd_prog.mk 2003-04-05 13:42:20.000000000 +0400
+++ port/bsd_prog.mk 2007-08-26 14:53:23.000000000 +0400
diff --git a/ftp/bsdftpd-ssl/pkg-plist b/ftp/bsdftpd-ssl/pkg-plist
index b8ebd34c578b..4b12a2871489 100644
--- a/ftp/bsdftpd-ssl/pkg-plist
+++ b/ftp/bsdftpd-ssl/pkg-plist
@@ -16,12 +16,12 @@ libexec/ftpd
%%PORTDOCS%%%%DOCSDIR%%/docs/standards.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/verify.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/x509_auth.txt
-%%PORTDOCS%%%%EXAMPLESDIR%%/README
-%%PORTDOCS%%%%EXAMPLESDIR%%/ftpchroot
-%%PORTDOCS%%%%EXAMPLESDIR%%/ftpusers
-%%PORTDOCS%%%%EXAMPLESDIR%%/rc.conf.d/bsdftpd_ssl
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/README
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/ftpchroot
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/ftpusers
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/rc.conf.d/bsdftpd_ssl
%%PORTDOCS%%@dirrm %%DOCSDIR%%/cert
%%PORTDOCS%%@dirrm %%DOCSDIR%%/docs
%%PORTDOCS%%@dirrm %%DOCSDIR%%
-%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%/rc.conf.d
-%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%
+%%PORTEXAMPLES%%@dirrm %%EXAMPLESDIR%%/rc.conf.d
+%%PORTEXAMPLES%%@dirrm %%EXAMPLESDIR%%