Quite a bit of change to OpenSSH made:

Add "/usr/local/bin" to _PATH_STDPATH (makes scp work inbound, for instance.)
Fetch OpenSSH from OpenBSD's src tree.  This uses a script and ftp(1).
Add strlcpy.c to ssh/lib, so this port should build on 3.X now.
Make TCP_WRAPPERS conditional on /usr/include/tcpd.h like the PR, so it
 should build on older RELEASEs without TCP Wrappers.

The PR is still open because I am taking more from it.

PR:		ports/14653
This commit is contained in:
Brian Feldman 1999-11-11 14:33:23 +00:00
parent 5900eca274
commit ac3b838e7f
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=23032
4 changed files with 96 additions and 5 deletions

View File

@ -8,12 +8,14 @@
DISTNAME= OpenSSH-1.2
CATEGORIES= security
MASTER_SITES= http://www.FreeBSD.org/~green/
MASTER_SITES= # see ${SCRIPTDIR}/fetchit
MAINTAINER= green@FreeBSD.org
LIB_DEPENDS= crypto.1:${PORTSDIR}/security/openssl
RESTRICTED= "Links with cryptographic code."
# Here, MANDIR is concetenated to DESTDIR which all forms the man install dir...
MAKE_ENV= DESTDIR=${PREFIX} MANDIR=/man/man
.if defined(USA_RESIDENT) && ${USA_RESIDENT} == YES
@ -21,8 +23,21 @@ MAKE_ENV+= CRYPTOLIBS="-L${PREFIX}/lib -lcrypto -lRSAglue -lrsaref"
.else
MAKE_ENV+= CRYPTOLIBS="-L${PREFIX}/lib -lcrypto"
.endif
.if !exists(/usr/include/tcpd.h)
MAKE_ENV+= TCP_WRAPPERS=NO
.endif
NO_CHECKSUM= YES
WRKSRC= ${WRKDIR}/ssh
do-fetch:
.if !exists(${WRKDIR}/.fetch_done)
@${SETENV} WRKDIR=${WRKDIR} ${SCRIPTDIR}/fetchit)
.endif
@${TOUCH} ${WRKDIR}/.fetch_done
do-extract:
@${CP} ${FILESDIR}/strlcpy.c ${WRKSRC}/lib/
pre-install:
@cd ${WRKSRC} && ${MAKE} DESTDIR=${PREFIX} distribution

View File

@ -1 +1 @@
MD5 (OpenSSH-1.2.tar.gz) = 3b5a1f2a098d28a0b10e6281630f5c40

View File

@ -1,6 +1,14 @@
diff -ru /home/green/ssh/lib/Makefile ./lib/Makefile
--- /home/green/ssh/lib/Makefile Wed Oct 27 03:33:00 1999
+++ ./lib/Makefile Mon Nov 8 00:06:40 1999
--- ./lib/Makefile.orig Thu Nov 11 05:32:55 1999
+++ ./lib/Makefile Thu Nov 11 08:54:34 1999
@@ -4,7 +4,7 @@
SRCS= authfd.c authfile.c bufaux.c buffer.c canohost.c channels.c \
cipher.c compat.c compress.c crc32.c deattack.c hostfile.c \
log.c match.c mpaux.c nchan.c packet.c readpass.c rsa.c \
- tildexpand.c ttymodes.c uidswap.c xmalloc.c
+ tildexpand.c ttymodes.c uidswap.c xmalloc.c strlcpy.c
NOPROFILE= yes
NOPIC= yes
@@ -13,6 +13,7 @@
@echo -n

View File

@ -0,0 +1,68 @@
/* $OpenBSD: strlcpy.c,v 1.4 1999/05/01 18:56:41 millert Exp $ */
/*
* Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#if defined(LIBC_SCCS) && !defined(lint)
static char *rcsid = "$OpenBSD: strlcpy.c,v 1.4 1999/05/01 18:56:41 millert Exp $";
#endif /* LIBC_SCCS and not lint */
#include <sys/types.h>
#include <string.h>
/*
* Copy src to string dst of size siz. At most siz-1 characters
* will be copied. Always NUL terminates (unless siz == 0).
* Returns strlen(src); if retval >= siz, truncation occurred.
*/
size_t strlcpy(dst, src, siz)
char *dst;
const char *src;
size_t siz;
{
register char *d = dst;
register const char *s = src;
register size_t n = siz;
/* Copy as many bytes as will fit */
if (n != 0 && --n != 0) {
do {
if ((*d++ = *s++) == 0)
break;
} while (--n != 0);
}
/* Not enough room in dst, add NUL and traverse rest of src */
if (n == 0) {
if (siz != 0)
*d = '\0'; /* NUL-terminate dst */
while (*s++)
;
}
return(s - src - 1); /* count does not include NUL */
}