From 2e472189c1a818b83158e305140adbb03fdc29f9 Mon Sep 17 00:00:00 2001 From: Sami Kerola Date: Tue, 2 Oct 2012 21:15:18 +0100 Subject: [PATCH] pg: check numeric user inputs Signed-off-by: Sami Kerola Signed-off-by: Karel Zak --- text-utils/Makemodule.am | 4 ++-- text-utils/pg.c | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/text-utils/Makemodule.am b/text-utils/Makemodule.am index 23185eaa6a..f2c10ebc6f 100644 --- a/text-utils/Makemodule.am +++ b/text-utils/Makemodule.am @@ -59,11 +59,11 @@ pg_SOURCES = text-utils/pg.c if HAVE_TINFO more_LDADD = $(LDADD) -ltinfo -pg_LDADD = $(LDADD) -ltinfo @NCURSES_LIBS@ +pg_LDADD = $(LDADD) libcommon.la -ltinfo @NCURSES_LIBS@ ul_LDADD = $(LDADD) -ltinfo else more_LDADD = $(LDADD) @NCURSES_LIBS@ -pg_LDADD = $(LDADD) @NCURSES_LIBS@ +pg_LDADD = $(LDADD) libcommon.la @NCURSES_LIBS@ ul_LDADD = $(LDADD) @NCURSES_LIBS@ endif diff --git a/text-utils/pg.c b/text-utils/pg.c index 9ade866ed8..fa5639be29 100644 --- a/text-utils/pg.c +++ b/text-utils/pg.c @@ -64,6 +64,7 @@ #include "widechar.h" #include "all-io.h" #include "closestream.h" +#include "strutils.h" #define READBUF LINE_MAX /* size of input buffer */ #define CMDBUF 255 /* size of command buffer */ @@ -1623,7 +1624,8 @@ main(int argc, char **argv) goto endargs; case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case '0': - pagelen = atoi(argv[arg] + i); + pagelen = strtol_or_err(argv[arg] + 1, + _("failed to parse number of lines per page")); havepagelen = 1; goto nextarg; case 'c': @@ -1687,7 +1689,8 @@ endargs: /*NOTREACHED*/ case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case '0': - startline = atoi(argv[arg] + 1); + startline = strtol_or_err(argv[arg] + 1, + _("failed to parse number of lines per page")); break; case '/': searchfor = argv[arg] + 2; -- 2.47.2