diff --git a/package/shadow/shadow.mk b/package/shadow/shadow.mk index 2ba7a0e03e..cf05fc1bdc 100644 --- a/package/shadow/shadow.mk +++ b/package/shadow/shadow.mk @@ -140,4 +140,19 @@ define SHADOW_PERMISSIONS $(SHADOW_SUBORDINATE_IDS_PERMISSIONS) endef +ifeq ($(BR2_TARGET_GENERIC_PASSWD_SHA256),y) +SHADOW_ENCRYPT_METHOD = SHA256 +else ifeq ($(BR2_TARGET_GENERIC_PASSWD_SHA512),y) +SHADOW_ENCRYPT_METHOD = SHA512 +endif + +ifneq ($(SHADOW_ENCRYPT_METHOD),) +define SHADOW_SET_ENCRYPT_METHOD + $(SED) 's/^[#]\?ENCRYPT_METHOD .*/ENCRYPT_METHOD $(SHADOW_ENCRYPT_METHOD)/' \ + $(TARGET_DIR)/etc/login.defs +endef + +SHADOW_POST_INSTALL_TARGET_HOOKS += SHADOW_SET_ENCRYPT_METHOD +endif + $(eval $(autotools-package))