aboutsummaryrefslogtreecommitdiff
path: root/src/util/strings.c
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2020-03-03 12:31:23 +0100
committerChristian Grothoff <christian@grothoff.org>2020-03-03 12:31:23 +0100
commitd1bdcb2618b13c3289492347550feb3fcf1f812d (patch)
tree131b879a93604417ae6abf590b784f1655570da8 /src/util/strings.c
parent9a6588810236327f0a7155c29bd5d5a3f3822652 (diff)
downloadgnunet-d1bdcb2618b13c3289492347550feb3fcf1f812d.tar.gz
gnunet-d1bdcb2618b13c3289492347550feb3fcf1f812d.zip
make static analysis happier
Diffstat (limited to 'src/util/strings.c')
-rw-r--r--src/util/strings.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/util/strings.c b/src/util/strings.c
index a291dc4e1..f3089bf65 100644
--- a/src/util/strings.c
+++ b/src/util/strings.c
@@ -1932,6 +1932,7 @@ GNUNET_STRINGS_base64url_encode (const void *in, size_t len, char **output)
1932 return strlen (enc); 1932 return strlen (enc);
1933} 1933}
1934 1934
1935
1935#define cvtfind(a) \ 1936#define cvtfind(a) \
1936 ((((a) >= 'A') && ((a) <= 'Z')) \ 1937 ((((a) >= 'A') && ((a) <= 'Z')) \
1937 ? (a) - 'A' \ 1938 ? (a) - 'A' \
@@ -1964,7 +1965,7 @@ GNUNET_STRINGS_base64_decode (const char *data, size_t len, void **out)
1964 "ignoring CR/LF\n"); \ 1965 "ignoring CR/LF\n"); \
1965 i++; \ 1966 i++; \
1966 if (i >= len) \ 1967 if (i >= len) \
1967 goto END; \ 1968 goto END; \
1968 } 1969 }
1969 1970
1970 output = GNUNET_malloc ((len * 3 / 4) + 8); 1971 output = GNUNET_malloc ((len * 3 / 4) + 8);
@@ -2046,16 +2047,20 @@ GNUNET_STRINGS_base64url_decode (const char *data, size_t len, void **out)
2046 case 0: 2047 case 0:
2047 break; // No pad chars in this case 2048 break; // No pad chars in this case
2048 case 2: 2049 case 2:
2049 strncpy (&s[len], "==", 2); 2050 memcpy (&s[len],
2051 "==",
2052 2);
2053 len += 2;
2050 break; // Two pad chars 2054 break; // Two pad chars
2051 case 3: 2055 case 3:
2052 s[len] = '='; 2056 s[len] = '=';
2057 len++;
2053 break; // One pad char 2058 break; // One pad char
2054 default: 2059 default:
2055 GNUNET_assert (0); 2060 GNUNET_assert (0);
2056 break; 2061 break;
2057 } 2062 }
2058 ret = GNUNET_STRINGS_base64_decode (s, strlen (s), out); 2063 ret = GNUNET_STRINGS_base64_decode (s, len, out);
2059 GNUNET_free (s); 2064 GNUNET_free (s);
2060 return ret; 2065 return ret;
2061} 2066}