[Bug 191263] [patch] dd(1): Incorrect casting of arguments

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon Oct 27 11:38:27 UTC 2014


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191263

--- Comment #9 from commit-hook at freebsd.org ---
A commit references this bug:

Author: pi
Date: Mon Oct 27 11:38:19 UTC 2014
New revision: 273734
URL: https://svnweb.freebsd.org/changeset/base/273734

Log:
  bin/dd: Fix incorrect casting of arguments

  dd(1) casts many of its numeric arguments from uintmax_t to intmax_t
  and back again to detect whether or not the original arguments were
  negative. This caused wrong behaviour in some boundary cases:

  $ dd if=/dev/zero of=/dev/null count=18446744073709551615
  dd: count cannot be negative

  After the fix:

  $ dd if=/dev/zero of=/dev/null count=18446744073709551615
  dd: count: Result too large

  PR:        191263
  Submitted by:    will at worrbase.com
  Approved by:    cognet@

Changes:
  head/bin/dd/args.c
  head/bin/dd/conv.c
  head/bin/dd/dd.c
  head/bin/dd/dd.h
  head/bin/dd/position.c

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list