X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Futil%2Fstrings.c;h=6a6cad6fe8b05304ac48d61c71c3ebb5467d331f;hb=82e765caeb53a1de54676738169dab98ca76c47e;hp=06d05f2eff5f9749c3a105a732c29c7a004066c8;hpb=bb5fe91d23b0938baa3c4f0e92a83df659df216a;p=oweals%2Fgnunet.git diff --git a/src/util/strings.c b/src/util/strings.c index 06d05f2ef..6a6cad6fe 100644 --- a/src/util/strings.c +++ b/src/util/strings.c @@ -79,7 +79,7 @@ GNUNET_STRINGS_buffer_fill (char *buffer, size_t size, unsigned int count, ...) if (buffer != NULL) { GNUNET_assert (needed + slen <= size); - memcpy (&buffer[needed], s, slen); + GNUNET_memcpy (&buffer[needed], s, slen); } needed += slen; count--; @@ -306,9 +306,12 @@ GNUNET_STRINGS_fancy_time_to_relative (const char *fancy_time, { "\"", 1000 * 1000LL }, { "m", 60 * 1000 * 1000LL}, { "min", 60 * 1000 * 1000LL}, + { "minute", 60 * 1000 * 1000LL}, { "minutes", 60 * 1000 * 1000LL}, { "'", 60 * 1000 * 1000LL}, { "h", 60 * 60 * 1000 * 1000LL}, + { "hour", 60 * 60 * 1000 * 1000LL}, + { "hours", 60 * 60 * 1000 * 1000LL}, { "d", 24 * 60 * 60 * 1000LL * 1000LL}, { "day", 24 * 60 * 60 * 1000LL * 1000LL}, { "days", 24 * 60 * 60 * 1000LL * 1000LL}, @@ -351,7 +354,8 @@ GNUNET_STRINGS_fancy_time_to_absolute (const char *fancy_time, struct tm tv; time_t t; - if (0 == strcasecmp ("end of time", fancy_time)) + if (0 == strcasecmp ("end of time", + fancy_time)) { *atime = GNUNET_TIME_UNIT_FOREVER_ABS; return GNUNET_OK; @@ -412,7 +416,7 @@ GNUNET_STRINGS_conv (const char *input, if (0 == strcmp (output_charset, "UTF-8")) { ret = GNUNET_malloc (u8_string_length + 1); - memcpy (ret, u8_string, u8_string_length); + GNUNET_memcpy (ret, u8_string, u8_string_length); ret[u8_string_length] = '\0'; free (u8_string); return ret; @@ -428,7 +432,7 @@ GNUNET_STRINGS_conv (const char *input, goto fail; } ret = GNUNET_malloc (encoded_string_length + 1); - memcpy (ret, encoded_string, encoded_string_length); + GNUNET_memcpy (ret, encoded_string, encoded_string_length); ret[encoded_string_length] = '\0'; free (encoded_string); return ret; @@ -437,7 +441,7 @@ GNUNET_STRINGS_conv (const char *input, _("Character sets requested were `%s'->`%s'\n"), "UTF-8", output_charset); ret = GNUNET_malloc (len + 1); - memcpy (ret, input, len); + GNUNET_memcpy (ret, input, len); ret[len] = '\0'; return ret; } @@ -500,7 +504,7 @@ GNUNET_STRINGS_utf8_tolower (const char *input, tmp_in = u8_tolower ((uint8_t*)input, strlen ((char *) input), NULL, UNINORM_NFD, NULL, &len); - memcpy(output, tmp_in, len); + GNUNET_memcpy(output, tmp_in, len); output[len] = '\0'; free(tmp_in); } @@ -522,7 +526,7 @@ GNUNET_STRINGS_utf8_toupper(const char *input, tmp_in = u8_toupper ((uint8_t*)input, strlen ((char *) input), NULL, UNINORM_NFD, NULL, &len); - memcpy (output, tmp_in, len); + GNUNET_memcpy (output, tmp_in, len); output[len] = '\0'; free (tmp_in); } @@ -541,7 +545,6 @@ GNUNET_STRINGS_filename_expand (const char *fil) char *buffer; #ifndef MINGW size_t len; - size_t n; char *fm; const char *fil_ptr; #else @@ -598,7 +601,8 @@ GNUNET_STRINGS_filename_expand (const char *fil) } if (fm == NULL) { - LOG_STRERROR (GNUNET_ERROR_TYPE_WARNING, "getcwd"); + LOG_STRERROR (GNUNET_ERROR_TYPE_WARNING, + "getcwd"); buffer = getenv ("PWD"); /* alternative */ if (buffer != NULL) fm = GNUNET_strdup (buffer); @@ -606,9 +610,9 @@ GNUNET_STRINGS_filename_expand (const char *fil) if (fm == NULL) fm = GNUNET_strdup ("./"); /* give up */ } - n = strlen (fm) + 1 + strlen (fil_ptr) + 1; - buffer = GNUNET_malloc (n); - GNUNET_snprintf (buffer, n, "%s%s%s", fm, + GNUNET_asprintf (&buffer, + "%s%s%s", + fm, (fm[strlen (fm) - 1] == DIR_SEPARATOR) ? "" : DIR_SEPARATOR_STR, fil_ptr); GNUNET_free (fm); @@ -619,23 +623,29 @@ GNUNET_STRINGS_filename_expand (const char *fil) if ((lRet = plibc_conv_to_win_path (fil, fn)) != ERROR_SUCCESS) { SetErrnoFromWinError (lRet); - LOG_STRERROR (GNUNET_ERROR_TYPE_WARNING, "plibc_conv_to_win_path"); + LOG_STRERROR (GNUNET_ERROR_TYPE_WARNING, + "plibc_conv_to_win_path"); return NULL; } /* is the path relative? */ - if ((strncmp (fn + 1, ":\\", 2) != 0) && (strncmp (fn, "\\\\", 2) != 0)) + if ( (0 != strncmp (fn + 1, ":\\", 2)) && + (0 != strncmp (fn, "\\\\", 2)) ) { char szCurDir[MAX_PATH + 1]; - lRet = GetCurrentDirectory (MAX_PATH + 1, szCurDir); + lRet = GetCurrentDirectory (MAX_PATH + 1, + szCurDir); if (lRet + strlen (fn) + 1 > (MAX_PATH + 1)) { SetErrnoFromWinError (ERROR_BUFFER_OVERFLOW); - LOG_STRERROR (GNUNET_ERROR_TYPE_WARNING, "GetCurrentDirectory"); + LOG_STRERROR (GNUNET_ERROR_TYPE_WARNING, + "GetCurrentDirectory"); return NULL; } - buffer = GNUNET_malloc (MAX_PATH + 1); - GNUNET_snprintf (buffer, MAX_PATH + 1, "%s\\%s", szCurDir, fn); + GNUNET_asprintf (&buffer, + "%s\\%s", + szCurDir, + fn); GNUNET_free (fn); fn = buffer; } @@ -1073,7 +1083,7 @@ GNUNET_STRINGS_parse_uri (const char *path, char **scheme_part, if (scheme_part) { *scheme_part = GNUNET_malloc (post_scheme_part - path + 1); - memcpy (*scheme_part, path, post_scheme_part - path); + GNUNET_memcpy (*scheme_part, path, post_scheme_part - path); (*scheme_part)[post_scheme_part - path] = '\0'; } if (path_part) @@ -1222,7 +1232,7 @@ GNUNET_STRINGS_to_address_ipv6 (const char *zt_addr, if (addrlen < 6) return GNUNET_SYSERR; - memcpy (zbuf, zt_addr, addrlen); + GNUNET_memcpy (zbuf, zt_addr, addrlen); if ('[' != zbuf[0]) { GNUNET_log (GNUNET_ERROR_TYPE_WARNING,