odp-util: Fix parsing of Ethertypes 0x8000 and above.
authorBen Pfaff <blp@nicira.com>
Thu, 18 Aug 2011 17:33:32 +0000 (10:33 -0700)
committerBen Pfaff <blp@nicira.com>
Thu, 18 Aug 2011 18:37:44 +0000 (11:37 -0700)
commitfac2e5163cb349ec33d8d2bdda2e73f35e50d4d5
tree60485c3708108d21eb0fb76961b7943f9b0b8255
parent338fb44ad67e59f09664f502f2c4325cff1e5080
odp-util: Fix parsing of Ethertypes 0x8000 and above.

An existing comment in the function being updated explains the problem:

    * Many of the sscanf calls in this function use oversized destination
    * fields because some sscanf() implementations truncate the range of %i
    * directives, so that e.g. "%"SCNi16 interprets input of "0xfedc" as a
    * value of 0x7fff.  The other alternatives are to allow only a single
    * radix (e.g. decimal or hexadecimal) or to write more sophisticated
    * parsers.
lib/odp-util.c