Skip to content

Commit 6815683

Browse files
authored
Enforce buffer length in utf8_encode definition (#589)
Fixes: #464
1 parent 416dde8 commit 6815683

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

cutils.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,7 @@ size_t utf8_encode_len(uint32_t c)
246246
No null byte is stored after the encoded bytes.
247247
Return value is in range 1..4
248248
*/
249-
size_t utf8_encode(uint8_t *buf, uint32_t c)
249+
size_t utf8_encode(uint8_t buf[minimum_length(UTF8_CHAR_LEN_MAX)], uint32_t c)
250250
{
251251
if (c < 0x80) {
252252
buf[0] = c;

cutils.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -481,7 +481,7 @@ enum {
481481
};
482482
int utf8_scan(const char *buf, size_t len, size_t *plen);
483483
size_t utf8_encode_len(uint32_t c);
484-
size_t utf8_encode(uint8_t *buf, uint32_t c);
484+
size_t utf8_encode(uint8_t buf[minimum_length(UTF8_CHAR_LEN_MAX)], uint32_t c);
485485
uint32_t utf8_decode_len(const uint8_t *p, size_t max_len, const uint8_t **pp);
486486
uint32_t utf8_decode(const uint8_t *p, const uint8_t **pp);
487487
size_t utf8_decode_buf8(uint8_t *dest, size_t dest_len, const char *src, size_t src_len);

0 commit comments

Comments
 (0)