On 20 May 2014 06:40, The Doctor,3328-138 Ave Edmonton AB T5Y 1M4,669-2000,473-4587 <doc...@doctor.nl2k.ab.ca> wrote: > Found that strndup would not work. > > I had to add > > #if !HAVE_STRNDUP > > #include <stdio.h> > #include <string.h> > #include <sys/types.h> > #include <malloc.h> > > /* Find the length of STRING, but scan at most MAXLEN characters. > If no '\0' terminator is found in that many characters, return MAXLEN. */ > size_t > strnlen (const char *string, size_t maxlen) > { > const char *end = memchr (string, '\0', maxlen); > return end ? end - string : maxlen; > } > > char * > strndup (const char *s, size_t n) > { > size_t len = strnlen (s, n); > char *new = malloc (len + 1); > > if (new == NULL) > return NULL; > > new[len] = '\0'; > return memcpy (new, s, len); > } > > #endif > > Please see how you can add this.
There is already a strndup replacement: BUF_strndup(). Switching to use that would be better. ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager majord...@openssl.org