On Wed, Mar 22, 2017 at 01:32:09PM +0100, Patrick Wildt wrote: > > apparently the "create_size" option does currently not work. This is > because the strsuftoll() function uses "long long" compares which limits > the positive maximum to LLONG_MAX. Unfortunately the maximum is always > set to ULLONG_MAX, which is treated as -1 and cannot be a reasonable > maximum value. This diff basically changes the maximum to LLONG_MAX. > > Opinions? ok?
The two affected options (create_size and offset) are off_t, so your diff makes sense. Go ahead. > > Patrick > > diff --git a/usr.sbin/makefs/msdos.c b/usr.sbin/makefs/msdos.c > index a60af9adaa5..863349c09e4 100644 > --- a/usr.sbin/makefs/msdos.c > +++ b/usr.sbin/makefs/msdos.c > @@ -63,7 +63,7 @@ msdos_prep_opts(fsinfo_t *fsopts) > .minimum = _min, \ > .maximum = sizeof(_type) == 1 ? 0xff : \ > (sizeof(_type) == 2 ? 0xffff : \ > - (sizeof(_type) == 4 ? 0xffffffff : 0xffffffffffffffffLL)), \ > + (sizeof(_type) == 4 ? 0xffffffff : 0x7fffffffffffffffLL)), \ > }, > ALLOPTS > #undef AOPT >