Commit 1a899839 authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

udeflate: Verify zlib FCHECK

parent cb2f614c
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -12,6 +12,7 @@
#define UDEFLATE_ERR_BLOCK (-4)
#define UDEFLATE_ERR_CHECKSUM (-5)
#define UDEFLATE_ERR_OUTPUT_LENGTH (-6)
#define UDEFLATE_ERR_FCHECK (-7)

int8_t udeflate(unsigned char *input_buf, uint16_t input_len,
		unsigned char *output_buf, uint16_t output_len);
+4 −0
Original line number Diff line number Diff line
@@ -422,6 +422,10 @@ int8_t udeflate_zlib(unsigned char *input_buf, uint16_t input_len,
		return UDEFLATE_ERR_FDICT;
	}

	if ((((uint16_t)input_buf[0] << 8) | input_buf[1]) % 31) {
		return UDEFLATE_ERR_FCHECK;
	}

	uint8_t ret =
	    udeflate(input_buf + 2, input_len - 2, output_buf, output_len);