summaryrefslogtreecommitdiff
path: root/package/cfgfs/src/wraps.c
diff options
context:
space:
mode:
Diffstat (limited to 'package/cfgfs/src/wraps.c')
-rw-r--r--package/cfgfs/src/wraps.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/package/cfgfs/src/wraps.c b/package/cfgfs/src/wraps.c
index 288f6dbab..0364c7b71 100644
--- a/package/cfgfs/src/wraps.c
+++ b/package/cfgfs/src/wraps.c
@@ -77,6 +77,14 @@ fwcf_pack(char *odata, size_t i, int algo, size_t *dstsz)
/* 12 bytes header, padding to 4-byte boundary, 4 bytes trailer */
k = ((j + 19) / 4) * 4;
+
+#if DEF_FLASHPART > 0xFFFFFF
+# error DEF_FLASHPART too large
+#endif
+ if (k > DEF_FLASHPART)
+ errx(1, "%lu bytes too large for flash partition of %lu KiB",
+ (u_long)k, DEF_FLASHPART / 1024UL);
+
/* padded to size of flash block */
#if (DEF_FLASHBLOCK & 3)
# error DEF_FLASHBLOCK must be dword-aligned