diff options
author | Eli Schwartz <eschwartz@archlinux.org> | 2020-05-10 06:32:39 +0200 |
---|---|---|
committer | Andrew Gregory <andrew@archlinux.org> | 2020-06-18 11:01:25 +0200 |
commit | 68418c54427b2ecbd5f882ffad261e0ba6e67c42 (patch) | |
tree | 93921c0e86c1fb8715df28b1c59e6ebd706bc155 | |
parent | bb50e8d73afda7f17777c464bd7bfa127a749b8d (diff) | |
download | pacman-68418c54427b2ecbd5f882ffad261e0ba6e67c42.tar.gz pacman-68418c54427b2ecbd5f882ffad261e0ba6e67c42.tar.xz |
Log invalid conf settings as an error
This is not a warning, _parse_options() returns failure without even
parsing further lines and the attempted pacman/pacman-conf program
execution immediately aborts. Warnings are for when e.g. later on if we
don't recognize a setting at all, we skip over it and have enough
confidence in this to continue executing the program.
The current implementation results in pacman-conf aborting with:
warning: config file /etc/pacman.conf, line 60: invalid value for 'ParallelDownloads' : '2.5'
error parsing '/etc/pacman.conf'
or pacman -Syu aborting with the entirely more cryptic:
warning: config file /etc/pacman.conf, line 59: invalid value for 'ParallelDownloads' : '2.5'
and this isn't just a problem for the newly added ParallelDownloads
setting, either, you could get the same problem if you specified a
broken XferCommand, but that's harder as it's more accepting of input
and you probably don't hit this except with unbalanced quotes.
Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
(cherry picked from commit 8e769ddb8a59a9fbacf4614283d2fb519f022386)
-rw-r--r-- | src/pacman/conf.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/pacman/conf.c b/src/pacman/conf.c index 44f5656a..f964283d 100644 --- a/src/pacman/conf.c +++ b/src/pacman/conf.c @@ -631,7 +631,7 @@ static int _parse_options(const char *key, char *value, } else if(strcmp(key, "XferCommand") == 0) { char **c; if((config->xfercommand_argv = wordsplit(value)) == NULL) { - pm_printf(ALPM_LOG_WARNING, + pm_printf(ALPM_LOG_ERROR, _("config file %s, line %d: invalid value for '%s' : '%s'\n"), file, linenum, "XferCommand", value); return 1; |