From 7a27e6571bd5e8d2f5ae270025453040078ae6eb Mon Sep 17 00:00:00 2001 From: "Andrey A. Chernov" Date: Sat, 1 Sep 2001 22:42:47 +0000 Subject: [PATCH] File positions are off_t nowdays, not long, so: strtol -> strtoll fseek -> fseeko NOTE: that fseek not works for >long offsets files per POSIX: [EOVERFLOW] For fseek( ), the resulting file offset would be a value which cannot be represented correctly in an object of type long. --- usr.bin/hexdump/display.c | 2 +- usr.bin/hexdump/hexsyntax.c | 2 +- usr.bin/hexdump/odsyntax.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/usr.bin/hexdump/display.c b/usr.bin/hexdump/display.c index 1b281961e25d..a09a5715e4f6 100644 --- a/usr.bin/hexdump/display.c +++ b/usr.bin/hexdump/display.c @@ -356,7 +356,7 @@ doskip(fname, statok) } } if (S_ISREG(sb.st_mode)) { - if (fseek(stdin, skip, SEEK_SET)) + if (fseeko(stdin, skip, SEEK_SET)) err(1, "%s", fname); address += skip; skip = 0; diff --git a/usr.bin/hexdump/hexsyntax.c b/usr.bin/hexdump/hexsyntax.c index f3bf5878dafe..72ec69f338ef 100644 --- a/usr.bin/hexdump/hexsyntax.c +++ b/usr.bin/hexdump/hexsyntax.c @@ -104,7 +104,7 @@ newsyntax(argc, argvp) add("\"%07.7_ax \" 8/2 \" %06o \" \"\\n\""); break; case 's': - if ((skip = strtol(optarg, &p, 0)) < 0) + if ((skip = strtoll(optarg, &p, 0)) < 0) errx(1, "%s: bad skip value", optarg); switch(*p) { case 'b': diff --git a/usr.bin/hexdump/odsyntax.c b/usr.bin/hexdump/odsyntax.c index 65a160e64453..8823a9cf34f5 100644 --- a/usr.bin/hexdump/odsyntax.c +++ b/usr.bin/hexdump/odsyntax.c @@ -214,7 +214,7 @@ odoffset(argc, argvp) base = 10; } - skip = strtol(num, (char **)&end, base ? base : 8); + skip = strtoll(num, (char **)&end, base ? base : 8); /* if end isn't the same as p, we got a non-octal digit */ if (end != p) {