boot_serial; check CRC for RX only if all data has arrived.

Signed-off-by: Marko Kiiskila <marko@apache.org>
diff --git a/boot/boot_serial/src/boot_serial.c b/boot/boot_serial/src/boot_serial.c
index b734b6a..32b3eb1 100644
--- a/boot/boot_serial/src/boot_serial.c
+++ b/boot/boot_serial/src/boot_serial.c
@@ -563,6 +563,7 @@
     int rc;
     uint16_t crc;
     uint16_t len;
+
 #ifdef __ZEPHYR__
     int err;
     err = base64_decode( &out[*out_off], maxout - *out_off, &rc, in, inlen - 2);
@@ -582,7 +583,9 @@
 
     if (*out_off > sizeof(uint16_t)) {
         len = ntohs(*(uint16_t *)out);
-
+        if (len != *out_off - sizeof(uint16_t)) {
+            return 0;
+        }
         len = min(len, *out_off - sizeof(uint16_t));
         out += sizeof(uint16_t);
 #ifdef __ZEPHYR__