commit: fe482c16046a260c1a71958d1bd2a6fc8b643fe4
parent a0535dee8ac59a9abc51249c604b887fcab32a60
Author: Michael Forney <mforney@mforney.org>
Date: Mon, 23 Oct 2017 00:55:15 -0700
openssh: Add support for aarch64
Diffstat:
3 files changed, 29 insertions(+), 3 deletions(-)
diff --git a/pkg/openssh/README.md b/pkg/openssh/README.md
@@ -0,0 +1,25 @@
+# openssh
+
+## config.h
+Generated with
+
+ ./configure \
+ --disable-wtmp \
+ --without-pie \
+ CPPFLAGS='-I/src/oasis/out/pkg/zlib' \
+ LDFLAGS='-L/src/oasis/out/pkg/libressl -L/src/oasis/out/pkg/openbsd -L/src/oasis/out/pkg/zlib' \
+ LIBS='-lbsd -lcrypto'
+
+Several changes were made:
+* `SECCOMP_AUDIT_ARCH` is removed and instead defined in `gen.lua` dependent on
+ the target toolchain architecture.
+* `HAVE_READPASSPHRASE` and `HAVE_STRNVIS` are undefined because although we do
+ build them into `libbsd.a`, we don't include the whole openbsd header
+ directory.
+* `HAVE_PLEDGE` is defined because we have a stub definition in
+ `pkg/openbsd/include/unistd.h`.
+* `SIZEOF_*` are undefined because they are only used if C99 `int*_t` are not
+ available.
+* `_PATH_BTMP`, `_PATH_PASSWD_PROG`, `_PATH_SSH_PIDDIR` are moved to a top
+ section along with a number of other paths which are normally defined
+ with flags by the Makefile or automatically by `pathnames.h`.
diff --git a/pkg/openssh/config.h b/pkg/openssh/config.h
@@ -1,7 +1,7 @@
-#define ASKPASS_PROGRAM "/libexec/ssh-askpass"
-#define LOGIN_PROGRAM "/bin/login"
+#define SSHDIR "/etc/ssh"
#define _PATH_BTMP "/var/log/btmp"
#define _PATH_PASSWD_PROG "/bin/passwd"
+#define _PATH_PRIVSEP_CHROOT_DIR "/var/empty"
#define _PATH_SFTP_SERVER "/libexec/sftp-server"
#define _PATH_SSH_ASKPASS_DEFAULT "/libexec/ssh-askpass"
#define _PATH_SSH_KEY_SIGN "/libexec/ssh-keysign"
@@ -536,7 +536,6 @@
/* #undef SANDBOX_SKIP_RLIMIT_NOFILE */
/* #undef SANDBOX_SOLARIS */
/* #undef SANDBOX_SYSTRACE */
-#define SECCOMP_AUDIT_ARCH AUDIT_ARCH_X86_64
/* #undef SETEUID_BREAKS_SETUID */
/* #undef SIZEOF_INT */
/* #undef SIZEOF_LONG_INT */
diff --git a/pkg/openssh/gen.lua b/pkg/openssh/gen.lua
@@ -1,6 +1,8 @@
+local arch = config.target_toolchain:match('[^-]*')
cflags{
'-D _XOPEN_SOURCE=600',
'-D _DEFAULT_SOURCE',
+ '-D SECCOMP_AUDIT_ARCH=AUDIT_ARCH_'..arch:upper(),
'-I $dir',
'-I $srcdir',
'-I $srcdir/openbsd-compat',