pkgsrc の openssh が修正されたとのことで下記の4つのファイルを置換して再度ビルドしました。
$ bmake clean
$ bmake
エラーでした。
---------------------------------------------------------------
gcc -D_ALL_SOURCE -O -I/usr/pkg/include -Wall -Wpointer-arith -Wuninitialized -Wsign-compare -Wformat-security -fno-builtin-memset -I. -I. -I/usr/pkg/include -I/usr/pkg/include -DIOV_MAX=16 -I/usr/local/bind/include -I/usr/pkg/include -DSSHDIR=\"/usr/pkg/etc/ssh\" -D_PATH_SSH_PROGRAM=\"/usr/pkg/bin/ssh\" -D_PATH_SSH_ASKPASS_DEFAULT=\"/usr/pkg/bin/ssh-askpass\" -D_PATH_SFTP_SERVER=\"/usr/pkg/libexec/sftp-server\" -D_PATH_SSH_KEY_SIGN=\"/usr/pkg/libexec/ssh-keysign\" -D_PATH_SSH_PKCS11_HELPER=\"/usr/pkg/libexec/ssh-pkcs11-helper\" -D_PATH_SSH_PIDDIR=\"/var/run\" -D_PATH_PRIVSEP_CHROOT_DIR=\"/var/empty\" -DSSH_RAND_HELPER=\"/usr/pkg/libexec/ssh-rand-helper\" -DHAVE_CONFIG_H -c loginrec.c
loginrec.c: In function `lastlog_openseek':
loginrec.c:1497: error: invalid application of `sizeof' to an incomplete type
loginrec.c: In function `lastlog_write_entry':
loginrec.c:1526: error: storage size of `last' isn't known
loginrec.c:1526: warning: unused variable `last'
loginrec.c: In function `lastlog_get_entry':
loginrec.c:1579: error: storage size of `last' isn't known
loginrec.c:1579: warning: unused variable `last'
---------------------------------------------------------------
obacheさんからのコメントでMakefileを修正しました。
CONFIGURE_ARGS+= --disable-lastlog
---------------------------------------------------------------
PKG_SYSCONFSUBDIR= ssh
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --with-mantype=man
CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR:Q}
CONFIGURE_ARGS+= --with-pid-dir=${SSH_PID_DIR:Q}
CONFIGURE_ARGS+= --with-ssl-dir=${SSLBASE:Q}
CONFIGURE_ARGS+= --with-tcp-wrappers=${BUILDLINK_PREFIX.tcp_wrappers}
CONFIGURE_ARGS+= --disable-lastlog # 追加しました。
.if ${OPSYS} != "Interix"
CONFIGURE_ARGS+= --with-privsep-path=${OPENSSH_CHROOT:Q}
CONFIGURE_ARGS+= --with-privsep-user=${OPENSSH_USER:Q}
.endif
---------------------------------------------------------------
$ bmake clean
$ bmake
=> Creating /usr/pkgsrc/security/openssh/work/sshd
無事にビルドが成功しました。
$ bmake install
===========================================================================
The following directories are used by openssh-5.5.1 and
have the wrong ownership and/or permissions:
/usr/pkg/etc/ssh (m=755, o=197609, g=131616)
===========================================================================
===========================================================================
The following files should be created for openssh-5.5.1:
/etc/rc.d/sshd (m=0755)
[/usr/pkg/share/examples/rc.d/sshd]
===========================================================================
=> Please note the following:
===========================================================================
$NetBSD: MESSAGE.Interix,v 1.1 2005/03/07 23:29:49 tv Exp $
OpenSSH on Interix has some important caveats:
* Hostname resolution uses the BIND resolver library rather than Windows
native lookup services. This requires that /etc/resolv.conf be set up
properly with a "nameserver" line; see resolv.conf(5). In most
installations, this was generated automatically when Services for UNIX
was installed (based on the name server in use at that time).
* Currently, UsePrivilegeSeparation does not work properly, so it defaults
to "no" on Interix.
* Network drives and encrypted local files may not be accessible after
logging in through sshd thanks to the way the Windows security API works.
A workaround is to "exec su USERNAME" after logging in, which will use
the password to create a proper Windows access credential key.
===========================================================================
=> Registering installation for openssh-5.5.1
openssh-5.5.1 requires installed package openssl-0.9.8q
openssh-5.5.1 requires installed package tcp_wrappers-7.6.1nb4
openssh-5.5.1 requires installed package zlib-1.2.3
無事にインストール終了しました。
Makefile に
CONFIGURE_ARGS+= --disable-lastlog
とかつけてもダメでしょうか?