24 lines · 383 B · C
RawDownload
#include <linux/dcache.h>#include "internal.h" unsigned name_to_int(const struct qstr *qstr){	const char *name = qstr->name;	int len = qstr->len;	unsigned n = 0; 	if (len > 1 && *name == '0')		goto out;	do {		unsigned c = *name++ - '0';		if (c > 9)			goto out;		if (n >= (~0U-9)/10)			goto out;		n *= 10;		n += c;	} while (--len > 0);	return n;out:	return ~0U;}