iSome more overflow checks - dedup - deduplicating backup program Err bitreich.org 70 hgit clone git://bitreich.org/dedup/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/dedup/ URL:git://bitreich.org/dedup/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/dedup/ bitreich.org 70 1Log /scm/dedup/log.gph bitreich.org 70 1Files /scm/dedup/files.gph bitreich.org 70 1Refs /scm/dedup/refs.gph bitreich.org 70 1Tags /scm/dedup/tag bitreich.org 70 1README /scm/dedup/file/README.gph bitreich.org 70 1LICENSE /scm/dedup/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit 3609b47d0d3af4279f5b9988a92dd47c4a06a777 /scm/dedup/commit/3609b47d0d3af4279f5b9988a92dd47c4a06a777.gph bitreich.org 70 1parent 945cb23311f465794117121580c362dc5f67de83 /scm/dedup/commit/945cb23311f465794117121580c362dc5f67de83.gph bitreich.org 70 hAuthor: sin URL:mailto:sin@2f30.org bitreich.org 70 iDate: Wed, 27 Feb 2019 09:42:00 +0000 Err bitreich.org 70 i Err bitreich.org 70 iSome more overflow checks Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M types.c | 10 ++++++++-- Err bitreich.org 70 i Err bitreich.org 70 i1 file changed, 8 insertions(+), 2 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/types.c b/types.c /scm/dedup/file/types.c.gph bitreich.org 70 i@@ -156,8 +156,14 @@ write_snapshot(int fd, struct snapshot *snap) Err bitreich.org 70 i Err bitreich.org 70 i snprintf(fmt, sizeof(fmt), "q'%d'%dq", MSGSIZE, MDSIZE); Err bitreich.org 70 i Err bitreich.org 70 i- snap->size = SNAPHDR_LEN; Err bitreich.org 70 i- snap->size += snap->nr_blk_descs * BLKDESC_LEN; Err bitreich.org 70 i+ if (mul_overflow(snap->nr_blk_descs, BLKDESC_LEN)) Err bitreich.org 70 i+ errx(1, "write_snapshot: overflow"); Err bitreich.org 70 i+ snap->size = snap->nr_blk_descs * BLKDESC_LEN; Err bitreich.org 70 i+ Err bitreich.org 70 i+ if (add_overflow(SNAPHDR_LEN, snap->size)) Err bitreich.org 70 i+ errx(1, "write_snapshot: overflow"); Err bitreich.org 70 i+ snap->size += SNAPHDR_LEN; Err bitreich.org 70 i+ Err bitreich.org 70 i n = pack(buf, fmt, Err bitreich.org 70 i snap->size, Err bitreich.org 70 i snap->msg, Err bitreich.org 70 .