opnsense-src/secure/lib/libssh/Makefile
Ed Maste 38a52bd3b5 ssh: update to OpenSSH 9.1p1
Release notes are available at https://www.openssh.com/txt/release-9.1

9.1 contains fixes for three minor memory safety problems; these have
lready been merged to the copy of OpenSSH 9.0 that is in the FreeBSD base
system.

Some highlights copied from the release notes:

Potentially-incompatible changes
--------------------------------

 * ssh(1), sshd(8): SetEnv directives in ssh_config and sshd_config
   are now first-match-wins to match other directives. Previously
   if an environment variable was multiply specified the last set
   value would have been used. bz3438

 * ssh-keygen(8): ssh-keygen -A (generate all default host key types)
   will no longer generate DSA keys, as these are insecure and have
   not been used by default for some years.

New features
------------

 * ssh(1), sshd(8): add a RequiredRSASize directive to set a minimum
   RSA key length. Keys below this length will be ignored for user
   authentication and for host authentication in sshd(8).

 * sftp-server(8): add a "users-groups-by-id@openssh.com" extension
   request that allows the client to obtain user/group names that
   correspond to a set of uids/gids.

 * sftp(1): use "users-groups-by-id@openssh.com" sftp-server
   extension (when available) to fill in user/group names for
   directory listings.

 * sftp-server(8): support the "home-directory" extension request
   defined in draft-ietf-secsh-filexfer-extensions-00. This overlaps
   a bit with the existing "expand-path@openssh.com", but some other
   clients support it.

 * ssh-keygen(1), sshd(8): allow certificate validity intervals,
   sshsig verification times and authorized_keys expiry-time options
   to accept dates in the UTC time zone in addition to the default
   of interpreting them in the system time zone. YYYYMMDD and
   YYMMDDHHMM[SS] dates/times will be interpreted as UTC if suffixed
   with a 'Z' character.

   Also allow certificate validity intervals to be specified in raw
   seconds-since-epoch as hex value, e.g. -V 0x1234:0x4567890. This
   is intended for use by regress tests and other tools that call
   ssh-keygen as part of a CA workflow. bz3468

 * sftp(1): allow arguments to the sftp -D option, e.g. sftp -D
   "/usr/libexec/sftp-server -el debug3"

 * ssh-keygen(1): allow the existing -U (use agent) flag to work
   with "-Y sign" operations, where it will be interpreted to require
   that the private keys is hosted in an agent; bz3429

MFC after:	2 weeks
Relnotes:	Yes
Sponsored by:	The FreeBSD Foundation
2022-10-19 10:27:11 -04:00

69 lines
1.9 KiB
Makefile

# $FreeBSD$
.include <src.opts.mk>
.include "${SRCTOP}/secure/ssh.mk"
LIB= ssh
PRIVATELIB= true
SHLIB_MAJOR= 5
SRCS= ssh_api.c ssherr.c \
sshbuf.c sshkey.c sshbuf-getput-basic.c \
sshbuf-misc.c sshbuf-getput-crypto.c krl.c bitmap.c
SRCS+= authfd.c authfile.c \
canohost.c channels.c cipher.c cipher-aes.c cipher-aesctr.c \
cleanup.c \
compat.c fatal.c hostfile.c \
log.c match.c moduli.c nchan.c packet.c \
readpass.c ttymodes.c xmalloc.c addr.c addrmatch.c \
atomicio.c dispatch.c mac.c misc.c utf8.c \
monitor_fdpass.c rijndael.c ssh-dss.c ssh-ecdsa.c ssh-ecdsa-sk.c \
ssh-ed25519-sk.c ssh-rsa.c dh.c \
msg.c progressmeter.c dns.c entropy.c umac.c umac128.c \
ssh-pkcs11.c smult_curve25519_ref.c \
poly1305.c chacha.c cipher-chachapoly.c cipher-chachapoly-libcrypto.c \
ssh-ed25519.c digest-openssl.c digest-libc.c \
hmac.c sc25519.c ge25519.c fe25519.c ed25519.c verify.c hash.c \
kex.c kexdh.c kexgex.c kexecdh.c kexc25519.c \
kexgexc.c kexgexs.c \
kexsntrup761x25519.c sntrup761.c kexgen.c \
sftp-realpath.c platform-pledge.c platform-tracing.c platform-misc.c \
sshbuf-io.c
SRCS+= ssh-sk-client.c
PACKAGE= ssh
# gss-genr.c should be in $SRCS but causes linking problems, so it is
# compiled directly into sshd instead.
# Portability layer
SRCS+= bcrypt_pbkdf.c blowfish.c bsd-misc.c bsd-signal.c explicit_bzero.c \
fmt_scaled.c freezero.c glob.c \
libressl-api-compat.c \
openssl-compat.c port-net.c \
recallocarray.c strtonum.c timingsafe_bcmp.c vis.c xcrypt.c
.if ${MK_LDNS} == "no"
SRCS+= getrrsetbyname.c
.else
LDNSDIR= ${SRCTOP}/contrib/ldns
CFLAGS+= -DHAVE_LDNS=1 -I${LDNSDIR}
SRCS+= getrrsetbyname-ldns.c
LIBADD+= ldns
.endif
.if ${MK_GSSAPI} != "no" && ${MK_KERBEROS_SUPPORT} != "no"
CFLAGS+= -include krb5_config.h
SRCS+= krb5_config.h
.endif
.if defined(LOCALBASE)
CFLAGS+= -D_PATH_SSH_ASKPASS_DEFAULT='"${LOCALBASE}/bin/ssh-askpass"'
.endif
NO_LINT=
LIBADD+= crypto crypt z
.include <bsd.lib.mk>
.PATH: ${SSHDIR} ${SSHDIR}/openbsd-compat