helper: Make unhexify() robust on invalid data 92/3792/2
authorMarc Schink <openocd-dev@marcschink.de>
Sun, 22 May 2016 17:44:27 +0000 (19:44 +0200)
committerAndreas Fritiofson <andreas.fritiofson@gmail.com>
Mon, 17 Oct 2016 08:28:05 +0000 (09:28 +0100)
commit674141e8a7a6413cb803d90c2a20150260015f81
tree62296ce0bfefecce10134718de8c4a81c5cb50ef
parent10aeff925936a43e873acfd0068b1eea03781051
helper: Make unhexify() robust on invalid data

The current implementation is not suitable for user provided data
because it does not detect invalid inputs in many cases. For example,
the string "aa0xbb" is successfully converted to the 3 bytes: 0xaa,
0x00 and 0xbb. An other example is "aabi" which is successfully
converted to the 2 bytes: 0xaa and 0x0b. Both are obviously incorrect.

Make unhexify() robust on invalid data and use more appropriate data
types for its parameters. Also, add a small documentation for the
function.

Change-Id: Idb799beb86fc608b066c8a76365021ed44c7f890
Signed-off-by: Marc Schink <openocd-dev@marcschink.de>
Reviewed-on: http://openocd.zylin.com/3792
Tested-by: jenkins
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
src/helper/binarybuffer.c
src/helper/binarybuffer.h
src/jtag/drivers/ti_icdi_usb.c
src/rtos/rtos.c
src/server/gdb_server.c