SUMMARY="Secure Shell client and server (remote login program)" DESCRIPTION="OpenSSH is a free version of the SSH connectivity tools that \ technical users of the Internet rely on. Users of telnet, rlogin, and ftp may \ not realize that their password is transmitted across the Internet \ unencrypted, but it is. OpenSSH encrypts all traffic (including passwords) to effectively eliminate \ eavesdropping, connection hijacking, and other attacks. Additionally, OpenSSH \ provides secure tunneling capabilities and several authentication methods, and \ supports all SSH protocol versions. The OpenSSH suite replaces rlogin and telnet with the ssh program, rcp with \ scp, and ftp with sftp. Also included is sshd (the server side of the \ package), and the other utilities like ssh-add, ssh-agent, ssh-keysign, \ ssh-keyscan, ssh-keygen and sftp-server." HOMEPAGE="http://www.openssh.com/" COPYRIGHT="2005-2020 Tatu Ylonen et al." LICENSE="OpenSSH" REVISION="1" SOURCE_URI="https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-$portVersion.tar.gz" CHECKSUM_SHA256="4590890ea9bb9ace4f71ae331785a3a5823232435161960ed5fc86588f331fe9" PATCHES="openssh-$portVersion.patchset" ADDITIONAL_FILES=" sshd_keymaker.sh fix_openssh_config_paths.sh " ARCHITECTURES="all" GLOBAL_WRITABLE_FILES=" settings/ssh directory keep-old settings/ssh/ssh_config keep-old settings/ssh/sshd_config keep-old " USER_SETTINGS_FILES=" settings/ssh directory settings/ssh/ssh_config template data/openssh/ssh_config.default settings/ssh/sshd_config template data/openssh/sshd_config.default " POST_INSTALL_SCRIPTS=" $relativePostInstallDir/sshd_keymaker.sh $relativePostInstallDir/fix_openssh_config_paths.sh " sshdUserHomeDir="/packages/$portVersionedName-$REVISION/.self/$relativeDataDir/openssh/empty" PACKAGE_USERS=" sshd real-name \"sshd user\" home \"$sshdUserHomeDir\" shell \"/bin/true\" groups \"sshd\" " PACKAGE_GROUPS="sshd" PROVIDES=" openssh = $portVersion compat >= 5 cmd:scp = $portVersion compat >= 5 cmd:sftp = $portVersion compat >= 5 cmd:sftp_server = $portVersion compat >= 5 cmd:ssh = $portVersion compat >= 5 cmd:ssh_add = $portVersion compat >= 5 cmd:ssh_agent = $portVersion compat >= 5 cmd:ssh_copy_id = $portVersion compat >= 5 cmd:ssh_keygen = $portVersion compat >= 5 cmd:ssh_keyscan = $portVersion compat >= 5 cmd:ssh_keysign = $portVersion compat >= 5 cmd:ssh_pkcs11_helper = $portVersion compat >= 5 cmd:sshd = $portVersion compat >= 5 " REQUIRES=" haiku cmd:grep cmd:login cmd:passwd cmd:sed lib:libcrypto lib:libedit lib:libncurses lib:libssl lib:libz " BUILD_REQUIRES=" haiku_devel devel:libcrypto devel:libedit devel:libncurses devel:libssl devel:libz " BUILD_PREREQUIRES=" cmd:aclocal cmd:autoconf cmd:automake cmd:gcc cmd:ld cmd:libtoolize cmd:make cmd:pkg_config " PATCH() { echo 'AC_CONFIG_MACRO_DIR([m4])' >> configure.ac } BUILD() { mkdir -p m4 aclocal --install -I m4 libtoolize --force --copy aclocal -I m4 autoconf defaultPath=".:/boot/home/config/non-packaged/bin:/boot/home/config/bin" defaultPath+=":/boot/system/non-packaged/bin:/boot/system/bin:/bin" defaultPath+=":/boot/system/apps:/boot/system/preferences" # Note: override sysconfdir and libexecdir since ssh doesn't create # subdirectories as it should. PATH_PASSWD_PROG=$portPackageLinksDir/cmd~passwd/bin/passwd \ LOGIN_PROGRAM=$portPackageLinksDir/cmd~login/bin/login \ runConfigure ./configure \ --sysconfdir=$sysconfDir/ssh \ --libexecdir=$libExecDir/openssh \ --with-privsep-path=$dataDir/openssh/empty \ --with-pid-dir=$prefix/var/run \ --with-default-path="$defaultPath" \ --with-md5-passwords \ --disable-utmpx \ --with-libedit \ --with-stackprotect=no make $jobArgs } INSTALL() { make install-nokeys mkdir -p $postInstallDir cp -f $portDir/additional-files/sshd_keymaker.sh $postInstallDir cp -f $portDir/additional-files/fix_openssh_config_paths.sh $postInstallDir install -m 755 contrib/ssh-copy-id $binDir install -m 644 contrib/ssh-copy-id.1 $manDir/man1 local USER_SETTINGS_DIR="`finddir B_USER_SETTINGS_DIRECTORY`" sed -i \ -e "s| ~/\.ssh/| $USER_SETTINGS_DIR/ssh/|" \ $sysconfDir/ssh/ssh_config local SYSTEM_SETTINGS_DIR="`finddir B_SYSTEM_SETTINGS_DIRECTORY`" local VAR_DIR="`finddir B_SYSTEM_VAR_DIRECTORY`" local LIB_DIR="`finddir B_SYSTEM_LIB_DIRECTORY`" sed -i \ -e "s|$sysconfDir/ssh/|$SYSTEM_SETTINGS_DIR/ssh/|" \ -e "s|$prefix/var/run/|$VAR_DIR/run/|" \ -e "s|$libExecDir/openssh/|$LIB_DIR/openssh/|" \ $sysconfDir/ssh/sshd_config mkdir -p $dataDir/openssh/empty cp $sysconfDir/ssh/ssh_config $dataDir/openssh/ssh_config.default cp $sysconfDir/ssh/sshd_config $dataDir/openssh/sshd_config.default } TEST() { make tests }