a6e6570102
Without this patch, the devuser element attempts to find public keys by iterating over the string "rsa dsa". When two keys are grouped together in quotes, a bash for loop treats it as a single key. You can see the issue this causes when debug output is turned on: + for fmt in '"rsa dsa"' + '[' -f '/home/krinkle/.ssh/id_rsa dsa.pub' ']' This is not a reasonably named key to look for, so this patch removes the quotes so that the loop will look for id_rsa.pub and id_dsa.pub separately. Change-Id: I0b5b1abd14013de85d90e76a95918a8071a5e013
20 lines
497 B
Bash
Executable file
20 lines
497 B
Bash
Executable file
#!/bin/bash
|
|
|
|
if [ ${DIB_DEBUG_TRACE:-0} -gt 0 ]; then
|
|
set -x
|
|
fi
|
|
set -eu
|
|
set -o pipefail
|
|
|
|
if [ -n "$DIB_DEV_USER_AUTHORIZED_KEYS" ]; then
|
|
if [ -f "$DIB_DEV_USER_AUTHORIZED_KEYS" ]; then
|
|
cat $DIB_DEV_USER_AUTHORIZED_KEYS >> $TMP_HOOKS_PATH/devuser-ssh-authorized-keys
|
|
fi
|
|
else
|
|
for fmt in rsa dsa; do
|
|
if [ -f "$HOME/.ssh/id_$fmt.pub" ]; then
|
|
cat $HOME/.ssh/id_$fmt.pub >> $TMP_HOOKS_PATH/devuser-ssh-authorized-keys
|
|
break
|
|
fi
|
|
done
|
|
fi
|