openssl/include/internal/unicode.h
FdaSilvaYY 0dd19e750f Fix a windows build break
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/14635)
2021-03-24 10:04:08 +10:00

32 lines
850 B
C

/*
* Copyright 2021 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
#ifndef OSSL_INTERNAL_UNICODE_H
# define OSSL_INTERNAL_UNICODE_H
# pragma once
typedef enum {
SURROGATE_MIN = 0xd800UL,
SURROGATE_MAX = 0xdfffUL,
UNICODE_MAX = 0x10ffffUL,
UNICODE_LIMIT
} UNICODE_CONSTANTS;
static ossl_unused ossl_inline int is_unicode_surrogate(unsigned long value)
{
return value >= SURROGATE_MIN && value <= SURROGATE_MAX;
}
static ossl_unused ossl_inline int is_unicode_valid(unsigned long value)
{
return value <= UNICODE_MAX && !is_unicode_surrogate(value);
}
#endif