Eduardo Habkost e3f9fe2d40 cutils: unsigned int parsing functions
There are lots of duplicate parsing code using strto*() in QEMU, and
most of that code is broken in one way or another. Even the visitors
code have duplicate integer parsing code[1]. This introduces functions
to help parsing unsigned int values: parse_uint() and parse_uint_full().

Parsing functions for signed ints and floats will be submitted later.

parse_uint_full() has all the checks made by opts_type_uint64() at
opts-visitor.c:

 - Check for NULL (returns -EINVAL)
 - Check for negative numbers (returns -EINVAL)
 - Check for empty string (returns -EINVAL)
 - Check for overflow or other errno values set by strtoll() (returns
   -errno)
 - Check for end of string (reject invalid characters after number)
   (returns -EINVAL)

parse_uint() does everything above except checking for the end of the
string, so callers can continue parsing the remainder of string after
the number.

Unit tests included.

[1] string-input-visitor.c:parse_int() could use the same parsing code
    used by opts-visitor.c:opts_type_int(), instead of duplicating that
    logic.

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2013-02-04 14:38:33 -06:00
2013-01-10 15:11:53 -06:00
2013-01-26 13:15:35 +00:00
2013-01-25 10:49:46 -02:00
2012-12-19 08:29:06 +01:00
2013-01-18 19:06:57 +01:00
2013-02-01 15:53:11 -06:00
2013-02-01 18:05:30 -06:00
2013-01-21 09:17:16 +01:00
2013-02-01 15:53:11 -06:00
2013-01-21 09:17:16 +01:00
2013-01-30 16:03:57 +00:00
2013-02-01 15:53:11 -06:00
2013-02-01 15:53:11 -06:00
2012-12-20 23:08:47 +01:00
2013-01-25 11:46:50 -02:00
2013-01-30 10:42:29 +01:00
2013-01-26 13:15:35 +00:00
2012-12-20 23:09:25 +01:00
2013-01-17 10:24:52 -02:00
2013-02-01 11:03:02 -06:00
2013-02-01 11:02:55 -06:00
2013-02-01 18:05:30 -06:00
2013-01-15 04:09:14 +01:00

Read the documentation in qemu-doc.html or on http://wiki.qemu.org

- QEMU team
Description
No description provided
Readme 404 MiB
Languages
C 82.6%
C++ 6.5%
Python 3.4%
Dylan 2.9%
Shell 1.6%
Other 2.8%