Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
Fix assert.
Vsevolod Stakhov committed 11 years ago
commit 39bc9d1e8be545df1d6855a89e06c201d1cb7554
parent 07b4845
2 files changed +2 -2
modified libpkg/pkg_checksum.c
@@ -187,7 +187,7 @@ pkg_checksum_generate(struct pkg *pkg, char *dest, size_t destlen,

	i = snprintf(dest, destlen, "%d%c%d%c", PKG_CHECKSUM_CUR_VERSION,
		PKG_CKSUM_SEPARATOR, type, PKG_CKSUM_SEPARATOR);
-
	assert(i + checksum_types[type].hlen <= destlen);
+
	assert(i < destlen);
	checksum_types[type].encfunc(bdigest, blen, dest + i, destlen - i);

	LL_FREE(entries, free);
modified libpkg/private/pkg.h
@@ -587,7 +587,7 @@ bool ucl_object_emit_file(const ucl_object_t *obj, enum ucl_emitter emit_type,
pkg_object* pkg_emit_object(struct pkg *pkg, short flags);

/* Hash is in format <version>:<typeid>:<hexhash> */
-
#define PKG_CHECKSUM_SHA256_LEN (SHA256_DIGEST_LENGTH * 2 + 10)
+
#define PKG_CHECKSUM_SHA256_LEN (SHA256_DIGEST_LENGTH * 2 + sizeof("100") * 2 + 2)
#define PKG_CHECKSUM_CUR_VERSION 1

int pkg_checksum_generate(struct pkg *pkg, char *dest, size_t destlen,