/** * Validate a length-delimited string has only UTF-8 characters * @param len the length of the string in "data" * @param data the bytes to check for valid UTF-8 characters * @return 1 (true) if the string has only UTF-8 characters, 0 (false) otherwise */ int UTF8_validate(int len, char* data) { char* curdata = NULL; int rc = 0; FUNC_ENTRY; curdata = UTF8_char_validate(len, data); while (curdata && (curdata < data + len)) curdata = UTF8_char_validate(len, curdata); rc = curdata != NULL; FUNC_EXIT_RC(rc); return rc; }
/** * Validate a length-delimited string has only UTF-8 characters * @param len the length of the string in "data" * @param data the bytes to check for valid UTF-8 characters * @return 1 (true) if the string has only UTF-8 characters, 0 (false) otherwise */ int UTF8_validate(int len, const char* data) { const char* curdata = NULL; int rc = 0; FUNC_ENTRY; if (len == 0) { rc = 1; goto exit; } curdata = UTF8_char_validate(len, data); while (curdata && (curdata < data + len)) curdata = UTF8_char_validate(len, curdata); rc = curdata != NULL; exit: FUNC_EXIT_RC(rc); return rc; }