From b48b7a7689b15754938c77449d59c16fc3765b1f Mon Sep 17 00:00:00 2001
From: John Crispin <john@openwrt.org>
Date: Thu, 5 Mar 2015 20:25:02 +0000
Subject: [PATCH] mtd: fix md5sum error checking

In mtd_verify(), the return value of md5sum() has been
interpreted as error if nonzero, while the function
returns number of processed bytes, which caused
mtd_verify() to always fail.

This patch fixes error checking to interpret only
negative values as errors.

Signed-off-by: Zefir Kurtisi <zefir.kurtisi@neratec.com>

SVN-Revision: 44605
---
 package/system/mtd/src/mtd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package/system/mtd/src/mtd.c b/package/system/mtd/src/mtd.c
index 72b9ddfe21..741b57b480 100644
--- a/package/system/mtd/src/mtd.c
+++ b/package/system/mtd/src/mtd.c
@@ -337,7 +337,7 @@ mtd_verify(const char *mtd, char *file)
 	if (quiet < 2)
 		fprintf(stderr, "Verifying %s against %s ...\n", mtd, file);
 
-	if (stat(file, &s) || md5sum(file, f_md5)) {
+	if (stat(file, &s) || md5sum(file, f_md5) < 0) {
 		fprintf(stderr, "Failed to hash %s\n", file);
 		return -1;
 	}
-- 
2.30.2