All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/8] fdisk: make CHS user values more robust
@ 2012-04-16  9:44 Davidlohr Bueso
  2012-04-17 18:19 ` Petr Uzel
  0 siblings, 1 reply; 3+ messages in thread
From: Davidlohr Bueso @ 2012-04-16  9:44 UTC (permalink / raw)
  To: Karel Zak; +Cc: util-linux

From: Davidlohr Bueso <dave@gnu.org>

Signed-off-by: Davidlohr Bueso <dave@gnu.org>
---
 fdisk/cfdisk.c |    6 +++---
 fdisk/fdisk.c  |    8 ++++----
 fdisk/sfdisk.c |    9 +++++----
 3 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/fdisk/cfdisk.c b/fdisk/cfdisk.c
index a6cf01e..33624bb 100644
--- a/fdisk/cfdisk.c
+++ b/fdisk/cfdisk.c
@@ -2776,7 +2776,7 @@ main(int argc, char **argv)
 	    arrow_cursor = TRUE;
 	    break;
 	case 'c':
-	    user_cylinders = cylinders = atoll(optarg);
+		user_cylinders = cylinders = strtoll_or_err(optarg, _("cannot parse amount of cylinders"));
 	    if (cylinders <= 0) {
 		fprintf(stderr, "%s: %s\n", argv[0], _("Illegal cylinders value"));
 		exit(1);
@@ -2786,14 +2786,14 @@ main(int argc, char **argv)
 	    use_partition_table_geometry = TRUE;
 	    break;
 	case 'h':
-	    user_heads = heads = atoi(optarg);
+	    user_heads = heads = strtol_or_err(optarg, _("cannot parse amount of heads"));
 	    if (heads <= 0 || heads > MAX_HEADS) {
 		fprintf(stderr, "%s: %s\n", argv[0], _("Illegal heads value"));
 		exit(1);
 	    }
 	    break;
 	case 's':
-	    user_sectors = sectors = atoi(optarg);
+	    user_sectors = sectors = strtol_or_err(optarg, _("cannot parse amount of sectors"));
 	    if (sectors <= 0 || sectors > MAX_SECTORS) {
 		fprintf(stderr, "%s: %s\n", argv[0], _("Illegal sectors value"));
 		exit(1);
diff --git a/fdisk/fdisk.c b/fdisk/fdisk.c
index cf64fa7..0ccabb7 100644
--- a/fdisk/fdisk.c
+++ b/fdisk/fdisk.c
@@ -2914,7 +2914,7 @@ main(int argc, char **argv) {
 			   so cannot be combined with multiple disks,
 			   and te same goes for the C/H/S options.
 			*/
-			sector_size = atoi(optarg);
+			sector_size = strtol_or_err(optarg, _("cannot parse sector size"));
 			if (sector_size != 512 && sector_size != 1024 &&
 			    sector_size != 2048 && sector_size != 4096)
 				usage(stderr);
@@ -2922,7 +2922,7 @@ main(int argc, char **argv) {
 			user_set_sector_size = 1;
 			break;
 		case 'C':
-			user_cylinders = atoi(optarg);
+			user_cylinders =  strtol_or_err(optarg, _("cannot parse amount of cylinders"));
 			break;
 		case 'c':
 			dos_compatible_flag = 0;	/* default */
@@ -2936,12 +2936,12 @@ main(int argc, char **argv) {
 			usage(stdout);
 			break;
 		case 'H':
-			user_heads = atoi(optarg);
+			user_heads =  strtol_or_err(optarg, _("cannot parse amount of heads"));
 			if (user_heads <= 0 || user_heads > 256)
 				user_heads = 0;
 			break;
 		case 'S':
-			user_sectors = atoi(optarg);
+			user_sectors =  strtol_or_err(optarg, _("cannot parse amount of sectors"));
 			if (user_sectors <= 0 || user_sectors >= 64)
 				user_sectors = 0;
 			break;
diff --git a/fdisk/sfdisk.c b/fdisk/sfdisk.c
index 95e5828..8bd27da 100644
--- a/fdisk/sfdisk.c
+++ b/fdisk/sfdisk.c
@@ -55,6 +55,7 @@
 #include "canonicalize.h"
 #include "rpmatch.h"
 #include "closestream.h"
+#include "strutils.h"
 
 /*
  * Table of contents:
@@ -2643,7 +2644,7 @@ main(int argc, char **argv) {
 	    activate = 1;
 	    break;
 	case 'C':
-	    U.cylinders = atoi(optarg);
+	    U.cylinders = strtoll_or_err(optarg, _("cannot parse amount of cylinders"));
 	    break;
 	case 'D':
 	    DOS = 1;
@@ -2652,13 +2653,13 @@ main(int argc, char **argv) {
 	    DOS_extended = 1;
 	    break;
 	case 'H':
-	    U.heads = atoi(optarg);
+	    U.heads = strtol_or_err(optarg, _("cannot parse amount of heads"));
 	    break;
 	case 'L':
 	    Linux = 1;
 	    break;
 	case 'N':
-	    one_only = atoi(optarg);
+	    one_only = strtol_or_err(optarg, _("cannot parse amount of partitions"));
 	    break;
 	case 'I':
 	    restore_sector_file = optarg;
@@ -2670,7 +2671,7 @@ main(int argc, char **argv) {
 	    opt_reread = 1;
 	    break;
 	case 'S':
-	    U.sectors = atoi(optarg);
+	    U.sectors = strtol_or_err(optarg, _("cannot parse amount of sectors"));
 	    break;
 	case 'T':
 	    list_types();
-- 
1.7.4.1

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 1/8] fdisk: make CHS user values more robust
  2012-04-16  9:44 [PATCH 1/8] fdisk: make CHS user values more robust Davidlohr Bueso
@ 2012-04-17 18:19 ` Petr Uzel
  2012-04-23 10:13   ` Karel Zak
  0 siblings, 1 reply; 3+ messages in thread
From: Petr Uzel @ 2012-04-17 18:19 UTC (permalink / raw)
  To: Davidlohr Bueso; +Cc: util-linux

[-- Attachment #1: Type: text/plain, Size: 1196 bytes --]

On Mon, Apr 16, 2012 at 11:44:33AM +0200, Davidlohr Bueso wrote:
> From: Davidlohr Bueso <dave@gnu.org>
> 
> Signed-off-by: Davidlohr Bueso <dave@gnu.org>
> ---
>  fdisk/cfdisk.c |    6 +++---
>  fdisk/fdisk.c  |    8 ++++----
>  fdisk/sfdisk.c |    9 +++++----
>  3 files changed, 12 insertions(+), 11 deletions(-)
> 
> diff --git a/fdisk/cfdisk.c b/fdisk/cfdisk.c
> index a6cf01e..33624bb 100644
> --- a/fdisk/cfdisk.c
> +++ b/fdisk/cfdisk.c
> @@ -2776,7 +2776,7 @@ main(int argc, char **argv)
>  	    arrow_cursor = TRUE;
>  	    break;
>  	case 'c':
> -	    user_cylinders = cylinders = atoll(optarg);
> +		user_cylinders = cylinders = strtoll_or_err(optarg, _("cannot parse amount of cylinders"));

s/amount/number ?

dtto below

>  	    if (cylinders <= 0) {
>  		fprintf(stderr, "%s: %s\n", argv[0], _("Illegal cylinders value"));
>  		exit(1);
> @@ -2786,14 +2786,14 @@ main(int argc, char **argv)
>  	    use_partition_table_geometry = TRUE;
>  	    break;
>  	case 'h':
> -	    user_heads = heads = atoi(optarg);
> +	    user_heads = heads = strtol_or_err(optarg, _("cannot parse amount of heads"));

[SNIP]

--
Petr Uzel
IRC: ptr_uzl @ freenode

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH 1/8] fdisk: make CHS user values more robust
  2012-04-17 18:19 ` Petr Uzel
@ 2012-04-23 10:13   ` Karel Zak
  0 siblings, 0 replies; 3+ messages in thread
From: Karel Zak @ 2012-04-23 10:13 UTC (permalink / raw)
  To: Davidlohr Bueso, util-linux

On Tue, Apr 17, 2012 at 08:19:03PM +0200, Petr Uzel wrote:
> On Mon, Apr 16, 2012 at 11:44:33AM +0200, Davidlohr Bueso wrote:
> > From: Davidlohr Bueso <dave@gnu.org>
> > 
> > Signed-off-by: Davidlohr Bueso <dave@gnu.org>
> > ---
> >  fdisk/cfdisk.c |    6 +++---
> >  fdisk/fdisk.c  |    8 ++++----
> >  fdisk/sfdisk.c |    9 +++++----
> >  3 files changed, 12 insertions(+), 11 deletions(-)

 Applied, thanks.

> > +		user_cylinders = cylinders = strtoll_or_err(optarg, _("cannot parse amount of cylinders"));
> 
> s/amount/number ?

 Fixed.

-- 
 Karel Zak  <kzak@redhat.com>
 http://karelzak.blogspot.com

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-04-23 10:13 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-16  9:44 [PATCH 1/8] fdisk: make CHS user values more robust Davidlohr Bueso
2012-04-17 18:19 ` Petr Uzel
2012-04-23 10:13   ` Karel Zak

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.