From 296857bde8dbe965bcfe5e96cf06d37c297d9315 Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Fri, 18 Feb 2011 05:55:34 +0200 Subject: [PATCH] Added uni_utf8_data_is_valid(). --- src/lib/unichar.c | 7 +++++++ src/lib/unichar.h | 2 ++ 2 files changed, 9 insertions(+) diff --git a/src/lib/unichar.c b/src/lib/unichar.c index 6beea290d1..d0a6d9d866 100644 --- a/src/lib/unichar.c +++ b/src/lib/unichar.c @@ -388,3 +388,10 @@ bool uni_utf8_str_is_valid(const char *str) return uni_utf8_find_invalid_pos((const unsigned char *)str, strlen(str), &i) == 0; } + +bool uni_utf8_data_is_valid(const unsigned char *data, size_t size) +{ + size_t i; + + return uni_utf8_find_invalid_pos(data, size, &i) == 0; +} diff --git a/src/lib/unichar.h b/src/lib/unichar.h index ce8222b6fd..7a03d80463 100644 --- a/src/lib/unichar.h +++ b/src/lib/unichar.h @@ -75,5 +75,7 @@ bool uni_utf8_get_valid_data(const unsigned char *input, size_t size, buffer_t *buf); /* Returns TRUE if string is valid UTF-8 input. */ bool uni_utf8_str_is_valid(const char *str); +/* Returns TRUE if data contains only valid UTF-8 input. */ +bool uni_utf8_data_is_valid(const unsigned char *data, size_t size); #endif -- 2.47.3