diff --git a/libraries/liblutil/passwd.c b/libraries/liblutil/passwd.c
index 3ce1ae975742eb56d62b39634491c975883d1a82..f16b49a2bc3f9d79f9b8717f175e3b8646458728 100644
--- a/libraries/liblutil/passwd.c
+++ b/libraries/liblutil/passwd.c
@@ -547,8 +547,7 @@ static int chk_smd5(
 	unsigned char *orig_pass = NULL;
 
 	/* safety check */
-	if (LUTIL_BASE64_DECODE_LEN(passwd->bv_len) <
-		sizeof(MD5digest)+SALT_SIZE) {
+	if (LUTIL_BASE64_DECODE_LEN(passwd->bv_len) <= sizeof(MD5digest)) {
 		return LUTIL_PASSWD_ERR;
 	}
 
@@ -560,7 +559,7 @@ static int chk_smd5(
 
 	rc = lutil_b64_pton(passwd->bv_val, orig_pass, passwd->bv_len);
 
-	if (rc < (int)(sizeof(MD5digest)+SALT_SIZE)) {
+	if (rc <= (int)(sizeof(MD5digest))) {
 		ber_memfree(orig_pass);
 		return LUTIL_PASSWD_ERR;
 	}