e05e4de693
When mksh is selected, /bin/mksh is not added to /etc/shells (see man shells). So, login tools like dropbear reject the ssh connections for users using mksh as shell in /etc/passwd. buildroot authpriv.warn dropbear[853]: User 'kubu' has invalid shell, rejected Signed-off-by: Romain Naour <romain.naour@smile.fr> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
33 lines
967 B
Makefile
33 lines
967 B
Makefile
################################################################################
|
|
#
|
|
# mksh
|
|
#
|
|
################################################################################
|
|
|
|
MKSH_VERSION = R55
|
|
MKSH_SOURCE = mksh-$(MKSH_VERSION).tgz
|
|
MKSH_SITE = https://www.mirbsd.org/MirOS/dist/mir/mksh
|
|
# For MirOS License see https://www.mirbsd.org/TaC-mksh.txt
|
|
MKSH_LICENSE = MirOS, ISC
|
|
MKSH_LICENSE_FILES = mksh.1
|
|
|
|
define MKSH_BUILD_CMDS
|
|
cd $(@D) && $(TARGET_MAKE_ENV) \
|
|
TARGET_OS=Linux $(TARGET_CONFIGURE_OPTS) \
|
|
sh ./Build.sh
|
|
endef
|
|
|
|
define MKSH_INSTALL_TARGET_CMDS
|
|
$(INSTALL) -m 0755 -D $(@D)/mksh $(TARGET_DIR)/bin/mksh
|
|
endef
|
|
|
|
# Add /bin/mksh to /etc/shells otherwise some login tools like dropbear
|
|
# can reject the user connection. See man shells.
|
|
define MKSH_ADD_MKSH_TO_SHELLS
|
|
grep -qsE '^/bin/mksh$$' $(TARGET_DIR)/etc/shells \
|
|
|| echo "/bin/mksh" >> $(TARGET_DIR)/etc/shells
|
|
endef
|
|
MKSH_TARGET_FINALIZE_HOOKS += MKSH_ADD_MKSH_TO_SHELLS
|
|
|
|
$(eval $(generic-package))
|