Files
haikuports/net-misc/openssh/additional-files/fix_openssh_config_paths.sh
fbrosson 8a585d344a openssh: fix paths in {ssh,sshd}_config to ease future upgrades. (#329)
Also add a post-install script, fix_openssh_config_paths.sh, which
makes the required changes to both ssh_config and sshd_config in
/boot/system/settings/ssh/ if needed. Original files are saved with
a .bak suffix. Moreover, default config files are also available in
/system/data/openssh/ as ssh_config.default and sshd_config.default.
2016-06-07 23:57:21 +00:00

26 lines
903 B
Bash
Executable File

#!/bin/sh
SYSTEM_SETTINGS_DIR="`finddir B_SYSTEM_SETTINGS_DIRECTORY`"
USER_SETTINGS_DIR="`finddir B_USER_SETTINGS_DIRECTORY`"
VAR_DIR="`finddir B_SYSTEM_VAR_DIRECTORY`"
LIB_DIR="`finddir B_SYSTEM_LIB_DIRECTORY`"
SSH_CONFIG="$SYSTEM_SETTINGS_DIR/ssh/ssh_config"
SSHD_CONFIG="$SYSTEM_SETTINGS_DIR/ssh/sshd_config"
if [ -f "$SSH_CONFIG" ] && grep -q 'IdentityFile ~/\.ssh/' "$SSH_CONFIG"; then
sed --in-place=.bak \
-e "s| ~/\.ssh/| $USER_SETTINGS_DIR/ssh/|" \
$SYSTEM_SETTINGS_DIR/ssh/ssh_config
fi
if [ -f "$SSHD_CONFIG" ] && grep -q '/packages/openssh-' "$SSHD_CONFIG"; then
sed --in-place=.bak \
-e "s|/packages/openssh-[-0-9p\.]\{3,\}/\.settings/ssh/|$SYSTEM_SETTINGS_DIR/ssh/|" \
-e "s|/packages/openssh-[-0-9p\.]\{3,\}/\.self/var/run/|$VAR_DIR/run/|" \
-e "s|/packages/openssh-[-0-9p\.]\{3,\}/\.self/lib/openssh/|$LIB_DIR/openssh/|" \
$SYSTEM_SETTINGS_DIR/ssh/sshd_config
fi
true