On Sat, May 16, 2020 at 02:25:43PM +0200, Denis Fondras wrote:

> Small diff to fix size printing.
> 
> Before :
> $ doas scan_ffs -v sd0
> block 55167 id 758d4818,f2894c98 size -859043093
> 
> After:
> $ doas ./obj/scan_ffs -v sd0
> block 55167 id 758d4818,f2894c98 size 3435924203

I do not think this is right. The field is int32_t, if it is negative,
something is wrong.

        -Otto

> 
> Index: scan_ffs.c
> ===================================================================
> RCS file: /cvs/src/sbin/scan_ffs/scan_ffs.c,v
> retrieving revision 1.23
> diff -u -p -r1.23 scan_ffs.c
> --- scan_ffs.c        28 Jun 2019 13:32:46 -0000      1.23
> +++ scan_ffs.c        16 May 2020 12:19:18 -0000
> @@ -70,7 +70,7 @@ ufsscan(int fd, daddr_t beg, daddr_t end
>                       sb = (struct fs*)(&buf[n]);
>                       if (sb->fs_magic == FS_MAGIC) {
>                               if (flags & FLAG_VERBOSE)
> -                                     printf("block %lld id %x,%x size %d\n",
> +                                     printf("block %lld id %x,%x size %u\n",
>                                           (long long)(blk + (n/512)),
>                                           sb->fs_id[0], sb->fs_id[1],
>                                           sb->fs_ffs1_size);
> 

Reply via email to