dmi: fix date handling in dmi_get_year()
authorTejun Heo <tj@kernel.org>
Sun, 16 Aug 2009 12:01:22 +0000 (21:01 +0900)
committerJeff Garzik <jgarzik@redhat.com>
Wed, 9 Sep 2009 01:17:47 +0000 (21:17 -0400)
commit02c24fa87724bb3af969463cd74dc3b3feb24740
tree8ffcdc8e5aa79cc10f0658c11aaebe2d14d4aaf9
parentbd30add88cea831dfb854d564478f09ee66206b5
dmi: fix date handling in dmi_get_year()

Year parsing in dmi_get_year() had the following two bugs.

* "00" is treated as invalid instead of 2000 because zero return from
  simple_strtoul() is treated as error.

* "0N" where N >= 8 is treated as invalid of 200N because the leading
  0 is considered to specify octal.

Fix the above two bugs by using endptr to detect invalid number and
forcing decimal.

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/firmware/dmi_scan.c