Implement BUF_strnlen() and use it instead of strlen().
This commit is contained in:
		@@ -62,6 +62,16 @@
 | 
			
		||||
#include "cryptlib.h"
 | 
			
		||||
#include <openssl/buffer.h>
 | 
			
		||||
 | 
			
		||||
size_t BUF_strnlen(const char *str, size_t maxlen)
 | 
			
		||||
	{
 | 
			
		||||
	const char *p;
 | 
			
		||||
 | 
			
		||||
	for (p = str; *p != '\0' && maxlen-- != 0; ++p)
 | 
			
		||||
		;
 | 
			
		||||
 | 
			
		||||
	return p - str;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
char *BUF_strdup(const char *str)
 | 
			
		||||
	{
 | 
			
		||||
	if (str == NULL) return(NULL);
 | 
			
		||||
@@ -75,7 +85,7 @@ char *BUF_strndup(const char *str, size_t siz)
 | 
			
		||||
 | 
			
		||||
	if (str == NULL) return(NULL);
 | 
			
		||||
 | 
			
		||||
	len = strlen(str);
 | 
			
		||||
	len = BUF_strnlen(str, siz);
 | 
			
		||||
	if (siz > len)
 | 
			
		||||
	    siz = len;
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user