bitmap_parse — convert an ASCII hex string into a bitmap.
int bitmap_parse ( | const char __user * ubuf, |
unsigned int ubuflen, | |
unsigned long * maskp, | |
int nmaskbits) ; |
ubuf
pointer to buffer in user space containing string.
ubuflen
buffer size in bytes. If string is smaller than this then it must be terminated with a \0.
maskp
pointer to bitmap array that will contain result.
nmaskbits
size of bitmap, in bits.
Commas group hex digits into chunks. Each chunk defines exactly 32
bits of the resultant bitmask. No chunk may specify a value larger
than 32 bits (-EOVERFLOW
), and if a chunk specifies a smaller value
then leading 0-bits are prepended. -EINVAL
is returned for illegal
characters and for grouping errors such as “1,,5”, “,44”, “,” and "".
Leading and trailing whitespace accepted, but not embedded whitespace.