提交 1de1d768 编写于 作者: R Richard Levitte

Instead of a local hack, implement SIZE_MAX in numbers.h if it's missing

Reviewed-by: NStephen Henson <steve@openssl.org>
上级 6aa0ba4b
......@@ -105,5 +105,9 @@
# define UINT64_MAX __MAXUINT__(uint64_t)
# endif
# ifndef SIZE_MAX
# define SIZE_MAX __MAXUINT__(size_t)
# endif
#endif
......@@ -65,6 +65,8 @@
# include <openssl/crypto.h>
# include <openssl/e_os2.h>
# include "internal/numbers.h"
# ifdef __cplusplus
extern "C" {
# endif
......@@ -111,13 +113,8 @@ __owur static ossl_inline int PACKET_buf_init(PACKET *pkt, unsigned char *buf,
size_t len)
{
/* Sanity check for negative values. */
#ifdef SIZE_MAX
if (len > (size_t)(SIZE_MAX / 2))
return 0;
#else
if (len > ((size_t)2 << (sizeof(size_t) * 8 - 1)))
return 0;
#endif
pkt->curr = buf;
pkt->remaining = len;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册