load_ecryptfs_key() {
# override the eCryptfs key path name from the 'ecryptfskey=' parameter in the kernel
# command line
- ECRYPTFSKEYARG=$(getarg ecryptfskey=)
- [ $? -eq 0 ] \
- && ECRYPTFSKEY=${ECRYPTFSKEYARG}
+ if ECRYPTFSKEYARG=$(getarg ecryptfskey=); then
+ ECRYPTFSKEY=${ECRYPTFSKEYARG}
+ fi
# set the default value
[ -z "${ECRYPTFSKEY}" ] \
fi
# read the eCryptfs encrypted key blob
- KEYBLOB=$(cat ${ECRYPTFSKEYPATH})
+ KEYBLOB=$(cat "${ECRYPTFSKEYPATH}")
# load the eCryptfs encrypted key blob
- ECRYPTFSKEYID=$(keyctl add ${ECRYPTFSKEYTYPE} ${ECRYPTFSKEYDESC} "load ${KEYBLOB}" @u)
- [ $? -eq 0 ] || {
+ if ! ECRYPTFSKEYID=$(keyctl add ${ECRYPTFSKEYTYPE} ${ECRYPTFSKEYDESC} "load ${KEYBLOB}" @u); then
info "eCryptfs: failed to load the eCryptfs key: ${ECRYPTFSKEYDESC}"
return 1
- }
+ fi
return 0
}
unload_ecryptfs_key() {
# unlink the eCryptfs encrypted key
- keyctl unlink ${ECRYPTFSKEYID} @u || {
+ keyctl unlink "${ECRYPTFSKEYID}" @u || {
info "eCryptfs: failed to unlink the eCryptfs key: ${ECRYPTFSKEYDESC}"
return 1
}
mount_ecryptfs() {
# read the configuration from the config file
+ # shellcheck disable=SC1090
[ -f "${ECRYPTFSCONFIG}" ] \
- && . ${ECRYPTFSCONFIG}
+ && . "${ECRYPTFSCONFIG}"
# load the eCryptfs encrypted key
load_ecryptfs_key || return 1
# build the mount options variable
ECRYPTFS_MOUNT_OPTS="ecryptfs_sig=${ECRYPTFSKEYDESC}"
- [ ! -z "${ECRYPTFS_EXTRA_MOUNT_OPTS}" ] \
+ [ -n "${ECRYPTFS_EXTRA_MOUNT_OPTS}" ] \
&& ECRYPTFS_MOUNT_OPTS="${ECRYPTFS_MOUNT_OPTS},${ECRYPTFS_EXTRA_MOUNT_OPTS}"
# mount the eCryptfs filesystem
info "Mounting the configured eCryptfs filesystem"
- mount -i -t ecryptfs -o${ECRYPTFS_MOUNT_OPTS} ${ECRYPTFSSRCMNT} ${ECRYPTFSDSTMNT} > /dev/null || {
+ mount -i -t ecryptfs -o${ECRYPTFS_MOUNT_OPTS} "${ECRYPTFSSRCMNT}" "${ECRYPTFSDSTMNT}" > /dev/null || {
info "eCryptfs: mount of the eCryptfs filesystem failed"
return 1
}