From 38386bd482c0a8102a79958cb3eddcb97a167ca3 Mon Sep 17 00:00:00 2001 From: Con Kolivas Date: Fri, 9 Mar 2018 17:39:40 +1100 Subject: [PATCH] CVE-2017-8842 Fix divide-by-zero in bufRead::get --- libzpaq/libzpaq.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libzpaq/libzpaq.h b/libzpaq/libzpaq.h index 93387da..cbe211d 100644 --- a/libzpaq/libzpaq.h +++ b/libzpaq/libzpaq.h @@ -465,7 +465,8 @@ struct bufRead: public libzpaq::Reader { int get() { if (progress && !(*s_len % 128)) { - int pct = (total_len - *s_len) * 100 / total_len; + int pct = (total_len > 0) ? + (total_len - *s_len) * 100 / total_len : 100; if (pct / 10 != *last_pct / 10) { int i; option value='koszko' selected='selected'>koszko Wojtek's customized Guix
aboutsummaryrefslogtreecommitdiff
path: root/nix/libstore/gc.cc
AgeCommit message (Expand)Author
2019-10-16daemon: Remove traces of 'NIX_ROOT_FINDER'....This is a followup to 2e3e5d21988fc2cafb2a9eaf4b00976ea425629d. * build-aux/test-env.in: Remove mentions of 'NIX_ROOT_FINDER'. * nix/libstore/gc.cc (LocalStore::collectGarbage): Adjust comment accordingly. Ludovic Courtès
2019-09-08daemon: Invoke 'guix gc --list-busy' instead of 'list-runtime-roots'....* nix/scripts/list-runtime-roots.in: Remove. * guix/store/roots.scm (%proc-directory): New variable. (proc-file-roots, proc-exe-roots, proc-cwd-roots) (proc-fd-roots, proc-maps-roots, proc-environ-roots) (referenced-files, canonicalize-store-item, busy-store-items): New procedures, taken from 'list-runtime-roots.in'. * nix/libstore/globals.hh (Settings)[guixProgram]: New field. * nix/libstore/globals.cc (Settings::processEnvironment): Initialize 'guixProgram'. * nix/libstore/gc.cc (addAdditionalRoots): Drop code related to 'NIX_ROOT_FINDER'. Run "guix gc --list-busy". * nix/local.mk (nodist_pkglibexec_SCRIPTS): Remove 'scripts/list-runtime-roots'. * config-daemon.ac: Don't output nix/scripts/list-runtime-roots. * build-aux/pre-inst-env.in: Don't set 'NIX_ROOT_FINDER'. Set 'GUIX'. * doc/guix.texi (Invoking guix gc): Document '--list-busy'. * guix/scripts/gc.scm (show-help, %options): Add "--list-busy". (guix-gc)[list-busy]: New procedure. Handle the 'list-busy' action. Ludovic Courtès
2019-08-30daemon: Don't reply on 'st_blocks'....Ported by Ludovic Courtès <ludo@gnu.org> from <https://github.com/NixOS/nix/commit/a2c4fcd5e9782dc8d2998773380c7171ee53b813>. * nix/libstore/gc.cc (LocalStore::removeUnusedLinks): Use 'st.st_size' instead of 'st.st_blocks * 512'. * nix/libutil/util.cc (_deletePath): Likewise. Eelco Dolstra